updated shed prompt code
This commit is contained in:
6
flake.lock
generated
6
flake.lock
generated
@@ -964,11 +964,11 @@
|
|||||||
"nixpkgs": "nixpkgs_8"
|
"nixpkgs": "nixpkgs_8"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1771975922,
|
"lastModified": 1771999992,
|
||||||
"narHash": "sha256-y6mxBHd+yF3il/ar9hBC34zlcKzMLeIxWCA3UIRhuSw=",
|
"narHash": "sha256-nBntlK2HHywIwd2tC3jRTS5n8cekjn/e1Ci1DpYMe1E=",
|
||||||
"owner": "km-clay",
|
"owner": "km-clay",
|
||||||
"repo": "shed",
|
"repo": "shed",
|
||||||
"rev": "d14029f5a297e21ede860003229a83d710950af0",
|
"rev": "9c8a5713db1b1d9783d78d66551eb8a8f81304ae",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|||||||
@@ -8,6 +8,11 @@ in
|
|||||||
programs.shed = {
|
programs.shed = {
|
||||||
settings.extraPreConfig = ''
|
settings.extraPreConfig = ''
|
||||||
prompt_topline() {
|
prompt_topline() {
|
||||||
|
local user_and_host="\e[0m\e[1m$USER\e[1;36m@\e[1;31m$HOST\e[0m"
|
||||||
|
echo -n "\e[1;34m┏━ $user_and_host\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_stat_line() {
|
||||||
local last_exit_code="$?"
|
local last_exit_code="$?"
|
||||||
local last_cmd_status
|
local last_cmd_status
|
||||||
local last_cmd_runtime
|
local last_cmd_runtime
|
||||||
@@ -16,18 +21,17 @@ in
|
|||||||
else
|
else
|
||||||
last_cmd_status="\e[1;31m\e[0m"
|
last_cmd_status="\e[1;31m\e[0m"
|
||||||
fi
|
fi
|
||||||
local user_and_host="\e[1m$USER\e[1;36m@\e[1;31m$HOST\e[0m"
|
|
||||||
local last_runtime_raw="$(echo -p "\t")"
|
local last_runtime_raw="$(echo -p "\t")"
|
||||||
if [ -z "$last_runtime_raw" ]; then
|
if [ -z "$last_runtime_raw" ]; then
|
||||||
last_cmd_runtime=""
|
return 0
|
||||||
last_cmd_status=""
|
|
||||||
else
|
else
|
||||||
last_cmd_runtime="\e[1;38;2;249;226;175m $(echo -p "\T")\e[0m"
|
last_cmd_runtime="\e[1;38;2;249;226;175m $(echo -p "\T")\e[0m"
|
||||||
fi
|
fi
|
||||||
echo -n "$user_and_host $last_cmd_runtime $last_cmd_status\n"
|
|
||||||
|
echo -n "\e[1;34m┃ $last_cmd_runtime ($last_cmd_status)\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt_midline() {
|
prompt_git_line() {
|
||||||
git rev-parse --is-inside-work-tree > /dev/null 2>&1 || return
|
git rev-parse --is-inside-work-tree > /dev/null 2>&1 || return
|
||||||
|
|
||||||
local gitsigns
|
local gitsigns
|
||||||
@@ -48,21 +52,35 @@ in
|
|||||||
if [ -n "$gitsigns" ]; then
|
if [ -n "$gitsigns" ]; then
|
||||||
gitsigns="\e[1;31m[$gitsigns]"
|
gitsigns="\e[1;31m[$gitsigns]"
|
||||||
fi
|
fi
|
||||||
echo -n "\e[0mon \e[1;35m ''${branch}$gitsigns\e[0m\n"
|
echo -n "\e[1;34m┃ \e[1;35m ''${branch}$gitsigns\e[0m\n"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt_botline() {
|
prompt_jobs_line() {
|
||||||
echo -p "\e[1;36m\W\e[1;32m/"
|
local job_count="$(echo -p '\j')"
|
||||||
|
if [ "$job_count" -gt 0 ]; then
|
||||||
|
echo -n "\e[1;34m┃ \e[1;33m $job_count job(s) running\e[0m\n"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_pwd_line() {
|
||||||
|
echo -p "\e[1;34m┣━━ \e[1;36m\W\e[1;32m/"
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt_dollar_line() {
|
||||||
|
local dollar="$(echo -p "\$ ")"
|
||||||
|
local dollar="$(echo -e "\e[1;32m$dollar\e[0m")"
|
||||||
|
echo -n "\e[1;34m┗━ $dollar "
|
||||||
}
|
}
|
||||||
|
|
||||||
prompt() {
|
prompt() {
|
||||||
local top="$(prompt_topline)"
|
local statline="$(prompt_stat_line)"
|
||||||
local mid="$(prompt_midline)"
|
local topline="$(prompt_topline)"
|
||||||
local bot="$(prompt_botline)"
|
local gitline="$(prompt_git_line)"
|
||||||
local dollar="$(echo -p "\$ ")"
|
local jobsline="$(prompt_jobs_line)"
|
||||||
local dollar="$(echo -e "\e[1;32m$dollar\e[0m")"
|
local pwdline="$(prompt_pwd_line)"
|
||||||
local prompt="$top$mid$bot\n$dollar"
|
local dollarline="$(prompt_dollar_line)"
|
||||||
|
local prompt="$topline$statline$gitline$jobsline$pwdline\n$dollarline"
|
||||||
|
|
||||||
echo -en "$prompt"
|
echo -en "$prompt"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user