aboutsummaryrefslogtreecommitdiff
path: root/.config/zsh/lib/prompt.zsh
diff options
context:
space:
mode:
authorsrdusr <trevorgray@srdusr.com>2024-03-07 11:19:32 +0200
committersrdusr <trevorgray@srdusr.com>2024-03-07 11:19:32 +0200
commit746981e1a3a927e6569eb8cb53b2037fce9480c0 (patch)
treecd8546f48bae831dc6c86a9b801cde01a09417ab /.config/zsh/lib/prompt.zsh
parent7473b17fc7ee8b0ee048cf1187bd989e8f7740ee (diff)
downloaddotfiles-746981e1a3a927e6569eb8cb53b2037fce9480c0.tar.gz
dotfiles-746981e1a3a927e6569eb8cb53b2037fce9480c0.zip
Changed name
Diffstat (limited to '.config/zsh/lib/prompt.zsh')
-rw-r--r--.config/zsh/lib/prompt.zsh202
1 files changed, 0 insertions, 202 deletions
diff --git a/.config/zsh/lib/prompt.zsh b/.config/zsh/lib/prompt.zsh
deleted file mode 100644
index d9fc148..0000000
--- a/.config/zsh/lib/prompt.zsh
+++ /dev/null
@@ -1,202 +0,0 @@
-#!/bin/zsh
-
-########## Prompt(s) ##########
-
-terminfo_down_sc=$terminfo[cud1]$terminfo[cuu1]$terminfo[sc]$terminfo[cud1]
-
-autoload -Uz vcs_info
-autoload -Uz add-zsh-hook
-autoload -U colors && colors
-
-precmd_vcs_info() { vcs_info }
-
-precmd_functions+=( precmd_vcs_info )
-
-setopt prompt_subst
-
-git_branch_test_color() {
- local ref=$(git symbolic-ref --short HEAD 2> /dev/null)
- if [ -n "${ref}" ]; then
- if [ -n "$(git status --porcelain)" ]; then
- local gitstatuscolor='%F{green}'
- else
- local gitstatuscolor='%F{82}'
- fi
- echo "${gitstatuscolor}${ref}"
- else
- echo ""
- fi
-}
-
-zstyle ':vcs_info:*' check-for-changes true
-zstyle ':vcs_info:*' stagedstr ' +%F{15}staged%f'
-zstyle ':vcs_info:*' unstagedstr ' -%F{15}unstaged%f'
-zstyle ':vcs_info:*' actionformats '%F{5}%F{2}%b%F{3}|%F{1}%a%F{5}%f '
-zstyle ':vcs_info:*' formats '%F{208} '$'\uE0A0'' %f$(git_branch_test_color)%f%F{76}%c%F{3}%u%f '
-zstyle ':vcs_info:git*+set-message:*' hooks git-untracked
-zstyle ':vcs_info:*' enable git
-
-+vi-git-untracked() {
- if [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == 'true' ]] && \
- git status --porcelain | grep '??' &> /dev/null ; then
- hook_com[unstaged]+='%F{196} !%f%F{15}untracked%f'
- fi
-}
-
-ssh_name() {
- if [[ -n $SSH_CONNECTION ]]; then
- local ssh_info
- ssh_info="ssh:%F{green}%n$nc%f"
- if [[ -n $SSH_CONNECTION ]]; then
- local ip_address
- ip_address=$(echo $SSH_CONNECTION | awk '{print $3}')
- ssh_info="$ssh_info@%F{green}$ip_address%f"
- fi
- echo " ${ssh_info}"
- fi
-}
-
-function job_name() {
- job_name=""
- job_length=0
- if [ "${COLUMNS}" -gt 69 ]; then
- job_length=$((${COLUMNS}-70))
- [ "${job_length}" -lt "0" ] && job_length=0
- fi
-
- if [ "${job_length}" -gt 0 ]; then
- local job_count=$(jobs | wc -l)
- if [ "${job_count}" -gt 0 ]; then
- local title_jobs="jobs:"
- job_name="${title_jobs}"
- job_name+="%F{green}$(jobs | grep + | tr -s " " | cut -d " " -f 4- | cut -b 1-${job_length} | sed "s/\(.*\)/\1/")%f"
- fi
- fi
-
- echo "${job_name}"
-}
-
-function job_count() {
- local job_count
- job_count=$(jobs -s | grep -c "suspended")
- if [ "${job_count}" -gt 0 ]; then
- echo "(${job_count})"
- fi
-}
-
-current_jobs=' $(job_name)$(job_count)'
-user="%n"
-at="%F{15}at%{$reset_color%}"
-machine="%F{4}%m%{$reset_color%}"
-relative_home="%F{4}%~%{$reset_color%}"
-carriage_return=""$'\n'""
-empty_line_bottom="%r"
-chevron_right=""
-color_reset="%{$(tput sgr0)%}"
-color_yellow="%{$(tput setaf 226)%}"
-color_blink="%{$(tput blink)%}"
-prompt_symbol="$"
-dollar_sign="${color_yellow}${color_blink}${prompt_symbol}${color_reset}"
-dollar="%(?:%F{2}${dollar_sign}:%F{1}${dollar_sign})"
-space=" "
-cmd_prompt="%(?:%F{2}${chevron_right} :%F{1}${chevron_right} )"
-git_info="\$vcs_info_msg_0_"
-v1="%{┌─[%}"
-v2="%{]%}"
-v3="└─["
-v4="]"
-
-function insert-mode () { echo "-- INSERT --" }
-function normal-mode () { echo "-- NORMAL --" }
-
-vi-mode-indicator () {
- if [[ ${KEYMAP} == vicmd || ${KEYMAP} == vi-cmd-mode ]]; then
- echo -ne '\e[1 q'
- vi_mode=$(normal-mode)
- elif [[ ${KEYMAP} == main || ${KEYMAP} == viins || ${KEYMAP} == '' ]]; then
- echo -ne '\e[5 q'
- vi_mode=$(insert-mode)
- fi
-}
-
-function set-prompt () {
- vi-mode-indicator
- mode="%F{145}%{$terminfo_down_sc$vi_mode$terminfo[rc]%f%}"
- #PS1="${relative_home}${vcs_info_msg_0_}${current_jobs} ${carriage_return}${mode}${dollar}${space}"
- PS1="${v1}${user}${v2}${space}${relative_home}${vcs_info_msg_0_}${current_jobs}$(ssh_name) ${carriage_return}${mode}${v3}${dollar}${v4}${empty_line_bottom}"
- #RPROMPT="$(ssh_name)"
-}
-
-precmd () {
- print -rP
- vcs_info
- set-prompt
-}
-
-function update-mode-file() {
- set-prompt
- local current_mode=$(cat ~/.vi-mode)
- local new_mode="$vi_mode"
- if [[ "$new_mode" != "$current_mode" ]]; then
- echo "$new_mode" >| ~/.vi-mode
- fi
- if command -v tmux &>/dev/null && [[ -n "$TMUX" ]]; then
- tmux refresh-client -S
- fi
-}
-
-function check-nvim-running() {
- if pgrep -x "nvim" > /dev/null; then
- vi_mode=""
- update-mode-file
- if command -v tmux &>/dev/null && [[ -n "$TMUX" ]]; then
- tmux refresh-client -S
- fi
- else
- if [[ ${KEYMAP} == vicmd || ${KEYMAP} == vi-cmd-mode ]]; then
- vi_mode=$(normal-mode)
- elif [[ ${KEYMAP} == main || ${KEYMAP} == viins || ${KEYMAP} == '' ]]; then
- vi_mode=$(insert-mode)
- fi
- update-mode-file
- if command -v tmux &>/dev/null && [[ -n "$TMUX" ]]; then
- tmux refresh-client -S
- fi
- fi
-}
-
-function zle-line-init() {
- zle reset-prompt
- case "${KEYMAP}" in
- vicmd)
- echo -ne '\e[1 q'
- ;;
- main|viins|*)
- echo -ne '\e[5 q'
- ;;
- esac
-}
-
-function zle-keymap-select() {
- update-mode-file
- zle reset-prompt
- case "${KEYMAP}" in
- vicmd)
- echo -ne '\e[1 q'
- ;;
- main|viins|*)
- echo -ne '\e[5 q'
- ;;
- esac
-}
-
-preexec () { print -rn -- $terminfo[el]; echo -ne '\e[5 q' ; }
-
-zle -N zle-line-init
-zle -N zle-keymap-select
-
-TRAPWINCH() {
- update-mode-file
-}
-
-set-prompt