2023-08-09 17:57:38 +00:00
|
|
|
module prompt.ps1;
|
|
|
|
|
2023-08-09 20:01:15 +00:00
|
|
|
import std.conv;
|
|
|
|
|
|
|
|
import prim.opt;
|
2023-08-09 19:05:26 +00:00
|
|
|
import comp.hr;
|
2023-08-09 20:01:15 +00:00
|
|
|
|
|
|
|
import style;
|
2023-08-09 19:05:26 +00:00
|
|
|
import style.color;
|
2023-08-09 20:01:15 +00:00
|
|
|
import style.font;
|
2023-08-09 19:05:26 +00:00
|
|
|
|
2023-08-09 20:01:15 +00:00
|
|
|
string ps1(Opts opt) {
|
2023-08-09 17:57:38 +00:00
|
|
|
string ps;
|
|
|
|
|
2023-08-09 20:01:15 +00:00
|
|
|
// divider
|
|
|
|
ps ~= hr(opt.col).set(Color.black);
|
|
|
|
|
|
|
|
// previous command status
|
|
|
|
ps ~= ("(" ~ to!string(opt.status) ~ ") ").set(Color.black);
|
2023-08-09 19:05:26 +00:00
|
|
|
|
2023-08-09 20:01:15 +00:00
|
|
|
// prompt char
|
|
|
|
ps ~= "|> ".set(Font.bold).set(opt.status == 0 ? Color.green : Color.red);
|
2023-08-09 17:57:38 +00:00
|
|
|
|
|
|
|
return ps;
|
|
|
|
}
|