summaryrefslogtreecommitdiff
path: root/config/essentials/zsh/prompt.zsh
diff options
context:
space:
mode:
authorRaymaekers Luca <raymaekers.luca@gmail.com>2024-01-25 21:57:26 +0100
committerRaymaekers Luca <raymaekers.luca@gmail.com>2024-01-25 21:57:26 +0100
commit5f06a3ca53faf20a75ae672b89ba201ff7cf3877 (patch)
tree1a80257ced08c997474edf27b9b18da556bc578b /config/essentials/zsh/prompt.zsh
parent4936de680ce67d4ce7d41d7e4666868d7502fcce (diff)
zsh Refactor multiple files and use zap
Diffstat (limited to 'config/essentials/zsh/prompt.zsh')
-rw-r--r--config/essentials/zsh/prompt.zsh16
1 files changed, 16 insertions, 0 deletions
diff --git a/config/essentials/zsh/prompt.zsh b/config/essentials/zsh/prompt.zsh
new file mode 100644
index 0000000..5364401
--- /dev/null
+++ b/config/essentials/zsh/prompt.zsh
@@ -0,0 +1,16 @@
+# prompt
+# PS1=' %K{16}%B%(#.%F{1}.%F{13})%n%b%f@%B%F{6}%m%b%f %3~%k '
+# RPROMPT='%F{blue}$(parse_git_remote)%f%F{red}$(parse_git_status)%f%F{green}$(parse_git_branch)%f%(?.. %?)'
+
+setopt prompt_subst
+parse_git_remote() {
+ git branch -v 2> /dev/null |
+ awk -F '[][]' '/^\*/ {print $2}' |
+ sed 's/ahead/↑ /;s/behind/↓ /;s/[^↓↑]*/ /g'
+}
+parse_git_branch() {
+ git symbolic-ref --short HEAD 2> /dev/null || git rev-parse --short HEAD 2> /dev/null
+}
+parse_git_status() {
+ git status --short 2> /dev/null | head -n1 | awk '{print $1 " "}'
+} \ No newline at end of file