prim/source/prompt/ps1.d

26 lines
418 B
D
Raw Normal View History

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;
}