From 858a4a31a251d0eab21dffb96776aca007dafb07 Mon Sep 17 00:00:00 2001 From: Chloe Kudryavtsev Date: Fri, 14 Feb 2020 19:11:04 -0500 Subject: Squashed 'dot_local/share/toasty/' content from commit aee4da7 git-subtree-dir: dot_local/share/toasty git-subtree-split: aee4da752bdb07b0524bb8803ead46d4093fa57f --- prompts/prompt_toasty_setup | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 prompts/prompt_toasty_setup (limited to 'prompts/prompt_toasty_setup') diff --git a/prompts/prompt_toasty_setup b/prompts/prompt_toasty_setup new file mode 100644 index 0000000..c10c766 --- /dev/null +++ b/prompts/prompt_toasty_setup @@ -0,0 +1,32 @@ +setopt promptsubst + +autoload -Uz add-zsh-hook +autoload -Uz vcs_info + +zstyle ':vcs_info:*' enable git +zstyle ':vcs_info:*' check-for-changes false +zstyle ':vcs_info:*' actionformats \ + '%B%F{cyan}(%b)%f%%b%c' +zstyle ':vcs_info:*' formats \ + '%B%F{cyan}(%b)%f%%b%c' + +# we want to catch unstaged and untracked in one swoop +zstyle ':vcs_info:git*+set-message:*' hooks git-dirty +function +vi-git-dirty { + if [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == 'true' ]] + then + if git status --porcelain | grep -Fq -e 'A' -e '??' -e 'M' + then + hook_com[staged]+=' %B%F{yellow}✗%f%b ' + else + hook_com[staged]+=' %B%F{green}✔%f%b ' + fi + fi +} + +add-zsh-hook -Uz precmd vcs_info + +PS1='%B%(?.%F{green}.%F{red})→%f%b %B%(!.%F{red}.%F{blue})%1~%f%b ${vcs_info_msg_0_}' +RPS1='%B%F{red}[%n@%m]%f%b' + +# vim: ft=zsh -- cgit v1.2.3