From 0255b308ce05fbc042ef924e41770c7bffdcd7f7 Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Thu, 20 Apr 2023 09:34:42 +0200 Subject: [PATCH] zshrc propmt possibilities moved to zshrc.d --- zshrc | 147 ------------------ zshrc.d/__available__/prompt_adam1.zsh | 4 + zshrc.d/__available__/prompt_kali.zsh | 147 ++++++++++++++++++ .../{powerline.zsh => prompt_powerline.zsh} | 0 4 files changed, 151 insertions(+), 147 deletions(-) create mode 100644 zshrc.d/__available__/prompt_adam1.zsh create mode 100644 zshrc.d/__available__/prompt_kali.zsh rename zshrc.d/__available__/{powerline.zsh => prompt_powerline.zsh} (100%) diff --git a/zshrc b/zshrc index edc02d2..696ae9f 100644 --- a/zshrc +++ b/zshrc @@ -69,153 +69,6 @@ TIMEFMT=$'\nreal\t%E\nuser\t%U\nsys\t%S\ncpu\t%P' # make less more friendly for non-text input files, see lesspipe(1) #[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" -# set variable identifying the chroot you work in (used in the prompt below) -if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then - debian_chroot=$(cat /etc/debian_chroot) -fi - -# set a fancy prompt (non-color, unless we know we "want" color) -case "$TERM" in - xterm-color|*-256color) color_prompt=yes;; -esac - -# uncomment for a colored prompt, if the terminal has the capability; turned -# off by default to not distract the user: the focus in a terminal window -# should be on the output of commands, not on the prompt -force_color_prompt=yes - -if [ -n "$force_color_prompt" ]; then - if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then - # We have color support; assume it's compliant with Ecma-48 - # (ISO/IEC-6429). (Lack of such support is extremely rare, and such - # a case would tend to support setf rather than setaf.) - color_prompt=yes - else - color_prompt= - fi -fi - -configure_prompt() { - prompt_symbol=㉿ - # Skull emoji for root terminal - [ "$EUID" -eq 0 ] && prompt_symbol=💀 - case "$PROMPT_ALTERNATIVE" in - twoline) - PROMPT=$'%F{%(#.blue.green)}╔══${debian_chroot:+($debian_chroot)─}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))─}(%B%F{%(#.red.blue)}%n'$prompt_symbol$'%m%b%F{%(#.blue.green)})-[%B%F{reset}%(6~.%-1~/…/%4~.%5~)%b%F{%(#.blue.green)}]\n`giti -n`%F{%(#.blue.green)}╚═%B%(#.%F{red}#.%F{blue}$)%b%F{reset} ' - # Right-side prompt with exit codes and background processes - RPROMPT=$'%(?.. %? %F{red}%B⨯%b%F{reset})%(1j. %j %F{yellow}%B⚙%b%F{reset}.)' - ;; - oneline) - PROMPT=$'${debian_chroot:+($debian_chroot)}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))}%B%F{%(#.red.blue)}%n@%m%b%F{reset}:%B%F{%(#.blue.green)}%~%b%F{reset}%(#.#.$) ' - RPROMPT= - ;; - backtrack) - PROMPT=$'${debian_chroot:+($debian_chroot)}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))}%B%F{red}%n@%m%b%F{reset}:%B%F{blue}%~%b%F{reset}%(#.#.$) ' - RPROMPT= - ;; - esac - unset prompt_symbol -} - -# The following block is surrounded by two delimiters. -# These delimiters must not be modified. Thanks. -# START KALI CONFIG VARIABLES -PROMPT_ALTERNATIVE=twoline -NEWLINE_BEFORE_PROMPT=yes -# STOP KALI CONFIG VARIABLES - -if [ "$color_prompt" = yes ]; then - # override default virtualenv indicator in prompt - VIRTUAL_ENV_DISABLE_PROMPT=1 - - configure_prompt - - # enable syntax-highlighting - if [ -f /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ]; then - . /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh - ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern) - ZSH_HIGHLIGHT_STYLES[default]=none - ZSH_HIGHLIGHT_STYLES[unknown-token]=fg=white,underline - ZSH_HIGHLIGHT_STYLES[reserved-word]=fg=cyan,bold - ZSH_HIGHLIGHT_STYLES[suffix-alias]=fg=green,underline - ZSH_HIGHLIGHT_STYLES[global-alias]=fg=green,bold - ZSH_HIGHLIGHT_STYLES[precommand]=fg=green,underline - ZSH_HIGHLIGHT_STYLES[commandseparator]=fg=blue,bold - ZSH_HIGHLIGHT_STYLES[autodirectory]=fg=green,underline - ZSH_HIGHLIGHT_STYLES[path]=bold - ZSH_HIGHLIGHT_STYLES[path_pathseparator]= - ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]= - ZSH_HIGHLIGHT_STYLES[globbing]=fg=blue,bold - ZSH_HIGHLIGHT_STYLES[history-expansion]=fg=blue,bold - ZSH_HIGHLIGHT_STYLES[command-substitution]=none - ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]=fg=magenta,bold - ZSH_HIGHLIGHT_STYLES[process-substitution]=none - ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]=fg=magenta,bold - ZSH_HIGHLIGHT_STYLES[single-hyphen-option]=fg=green - ZSH_HIGHLIGHT_STYLES[double-hyphen-option]=fg=green - ZSH_HIGHLIGHT_STYLES[back-quoted-argument]=none - ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]=fg=blue,bold - ZSH_HIGHLIGHT_STYLES[single-quoted-argument]=fg=yellow - ZSH_HIGHLIGHT_STYLES[double-quoted-argument]=fg=yellow - ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]=fg=yellow - ZSH_HIGHLIGHT_STYLES[rc-quote]=fg=magenta - ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]=fg=magenta,bold - ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]=fg=magenta,bold - ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]=fg=magenta,bold - ZSH_HIGHLIGHT_STYLES[assign]=none - ZSH_HIGHLIGHT_STYLES[redirection]=fg=blue,bold - ZSH_HIGHLIGHT_STYLES[comment]=fg=black,bold - ZSH_HIGHLIGHT_STYLES[named-fd]=none - ZSH_HIGHLIGHT_STYLES[numeric-fd]=none - ZSH_HIGHLIGHT_STYLES[arg0]=fg=cyan - ZSH_HIGHLIGHT_STYLES[bracket-error]=fg=red,bold - ZSH_HIGHLIGHT_STYLES[bracket-level-1]=fg=blue,bold - ZSH_HIGHLIGHT_STYLES[bracket-level-2]=fg=green,bold - ZSH_HIGHLIGHT_STYLES[bracket-level-3]=fg=magenta,bold - ZSH_HIGHLIGHT_STYLES[bracket-level-4]=fg=yellow,bold - ZSH_HIGHLIGHT_STYLES[bracket-level-5]=fg=cyan,bold - ZSH_HIGHLIGHT_STYLES[cursor-matchingbracket]=standout - fi -else - PROMPT='${debian_chroot:+($debian_chroot)}%n@%m:%~%(#.#.$) ' -fi -unset color_prompt force_color_prompt - -toggle_oneline_prompt(){ - if [ "$PROMPT_ALTERNATIVE" = oneline ]; then - PROMPT_ALTERNATIVE=twoline - else - PROMPT_ALTERNATIVE=oneline - fi - configure_prompt - zle reset-prompt -} -zle -N toggle_oneline_prompt -bindkey ^P toggle_oneline_prompt - -# If this is an xterm set the title to user@host:dir -case "$TERM" in -xterm*|rxvt*|Eterm|aterm|kterm|gnome*|alacritty) - TERM_TITLE=$'\e]0;${debian_chroot:+($debian_chroot)}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))}%n@%m: %~\a' - ;; -*) - ;; -esac - -precmd() { - # Print the previously configured title - print -Pnr -- "$TERM_TITLE" - - # Print a new line before the prompt, but only if it is not the first line - if [ "$NEWLINE_BEFORE_PROMPT" = yes ]; then - if [ -z "$_NEW_LINE_BEFORE_PROMPT" ]; then - _NEW_LINE_BEFORE_PROMPT=1 - else - print "" - fi - fi -} - # enable color support of ls, less and man, and also add handy aliases if [ -x /usr/bin/dircolors ]; then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" diff --git a/zshrc.d/__available__/prompt_adam1.zsh b/zshrc.d/__available__/prompt_adam1.zsh new file mode 100644 index 0000000..672c83b --- /dev/null +++ b/zshrc.d/__available__/prompt_adam1.zsh @@ -0,0 +1,4 @@ +# set up the prompt +autoload -Uz promptinit +promptinit +prompt adam1 diff --git a/zshrc.d/__available__/prompt_kali.zsh b/zshrc.d/__available__/prompt_kali.zsh new file mode 100644 index 0000000..055c21d --- /dev/null +++ b/zshrc.d/__available__/prompt_kali.zsh @@ -0,0 +1,147 @@ +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color|*-256color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +configure_prompt() { + #prompt_symbol=㉿ + prompt_symbol=@ + # Skull emoji for root terminal + [ "$EUID" -eq 0 ] && prompt_symbol=💀 + case "$PROMPT_ALTERNATIVE" in + twoline) + PROMPT=$'%F{%(#.blue.green)}╔══${debian_chroot:+($debian_chroot)─}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))─}(%B%F{%(#.red.blue)}%n'$prompt_symbol$'%m%b%F{%(#.blue.green)})-[%B%F{reset}%(6~.%-1~/…/%4~.%5~)%b%F{%(#.blue.green)}]\n`giti -n`%F{%(#.blue.green)}╚═%B%(#.%F{red}#.%F{blue}$)%b%F{reset} ' + # Right-side prompt with exit codes and background processes + RPROMPT=$'%(?.. %? %F{red}%B⨯%b%F{reset})%(1j. %j %F{yellow}%B⚙%b%F{reset}.)' + ;; + oneline) + PROMPT=$'${debian_chroot:+($debian_chroot)}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))}%B%F{%(#.red.blue)}%n@%m%b%F{reset}:%B%F{%(#.blue.green)}%~%b%F{reset}%(#.#.$) ' + RPROMPT= + ;; + backtrack) + PROMPT=$'${debian_chroot:+($debian_chroot)}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))}%B%F{red}%n@%m%b%F{reset}:%B%F{blue}%~%b%F{reset}%(#.#.$) ' + RPROMPT= + ;; + esac + unset prompt_symbol +} + +# The following block is surrounded by two delimiters. +# These delimiters must not be modified. Thanks. +# START KALI CONFIG VARIABLES +PROMPT_ALTERNATIVE=twoline +NEWLINE_BEFORE_PROMPT=yes +# STOP KALI CONFIG VARIABLES + +if [ "$color_prompt" = yes ]; then + # override default virtualenv indicator in prompt + VIRTUAL_ENV_DISABLE_PROMPT=1 + + configure_prompt + + # enable syntax-highlighting + if [ -f /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ]; then + . /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh + ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets pattern) + ZSH_HIGHLIGHT_STYLES[default]=none + ZSH_HIGHLIGHT_STYLES[unknown-token]=fg=white,underline + ZSH_HIGHLIGHT_STYLES[reserved-word]=fg=cyan,bold + ZSH_HIGHLIGHT_STYLES[suffix-alias]=fg=green,underline + ZSH_HIGHLIGHT_STYLES[global-alias]=fg=green,bold + ZSH_HIGHLIGHT_STYLES[precommand]=fg=green,underline + ZSH_HIGHLIGHT_STYLES[commandseparator]=fg=blue,bold + ZSH_HIGHLIGHT_STYLES[autodirectory]=fg=green,underline + ZSH_HIGHLIGHT_STYLES[path]=bold + ZSH_HIGHLIGHT_STYLES[path_pathseparator]= + ZSH_HIGHLIGHT_STYLES[path_prefix_pathseparator]= + ZSH_HIGHLIGHT_STYLES[globbing]=fg=blue,bold + ZSH_HIGHLIGHT_STYLES[history-expansion]=fg=blue,bold + ZSH_HIGHLIGHT_STYLES[command-substitution]=none + ZSH_HIGHLIGHT_STYLES[command-substitution-delimiter]=fg=magenta,bold + ZSH_HIGHLIGHT_STYLES[process-substitution]=none + ZSH_HIGHLIGHT_STYLES[process-substitution-delimiter]=fg=magenta,bold + ZSH_HIGHLIGHT_STYLES[single-hyphen-option]=fg=green + ZSH_HIGHLIGHT_STYLES[double-hyphen-option]=fg=green + ZSH_HIGHLIGHT_STYLES[back-quoted-argument]=none + ZSH_HIGHLIGHT_STYLES[back-quoted-argument-delimiter]=fg=blue,bold + ZSH_HIGHLIGHT_STYLES[single-quoted-argument]=fg=yellow + ZSH_HIGHLIGHT_STYLES[double-quoted-argument]=fg=yellow + ZSH_HIGHLIGHT_STYLES[dollar-quoted-argument]=fg=yellow + ZSH_HIGHLIGHT_STYLES[rc-quote]=fg=magenta + ZSH_HIGHLIGHT_STYLES[dollar-double-quoted-argument]=fg=magenta,bold + ZSH_HIGHLIGHT_STYLES[back-double-quoted-argument]=fg=magenta,bold + ZSH_HIGHLIGHT_STYLES[back-dollar-quoted-argument]=fg=magenta,bold + ZSH_HIGHLIGHT_STYLES[assign]=none + ZSH_HIGHLIGHT_STYLES[redirection]=fg=blue,bold + ZSH_HIGHLIGHT_STYLES[comment]=fg=black,bold + ZSH_HIGHLIGHT_STYLES[named-fd]=none + ZSH_HIGHLIGHT_STYLES[numeric-fd]=none + ZSH_HIGHLIGHT_STYLES[arg0]=fg=cyan + ZSH_HIGHLIGHT_STYLES[bracket-error]=fg=red,bold + ZSH_HIGHLIGHT_STYLES[bracket-level-1]=fg=blue,bold + ZSH_HIGHLIGHT_STYLES[bracket-level-2]=fg=green,bold + ZSH_HIGHLIGHT_STYLES[bracket-level-3]=fg=magenta,bold + ZSH_HIGHLIGHT_STYLES[bracket-level-4]=fg=yellow,bold + ZSH_HIGHLIGHT_STYLES[bracket-level-5]=fg=cyan,bold + ZSH_HIGHLIGHT_STYLES[cursor-matchingbracket]=standout + fi +else + PROMPT='${debian_chroot:+($debian_chroot)}%n@%m:%~%(#.#.$) ' +fi +unset color_prompt force_color_prompt + +toggle_oneline_prompt(){ + if [ "$PROMPT_ALTERNATIVE" = oneline ]; then + PROMPT_ALTERNATIVE=twoline + else + PROMPT_ALTERNATIVE=oneline + fi + configure_prompt + zle reset-prompt +} +zle -N toggle_oneline_prompt +bindkey ^P toggle_oneline_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*|Eterm|aterm|kterm|gnome*|alacritty) + TERM_TITLE=$'\e]0;${debian_chroot:+($debian_chroot)}${VIRTUAL_ENV:+($(basename $VIRTUAL_ENV))}%n@%m: %~\a' + ;; +*) + ;; +esac + +precmd() { + # Print the previously configured title + print -Pnr -- "$TERM_TITLE" + + # Print a new line before the prompt, but only if it is not the first line + if [ "$NEWLINE_BEFORE_PROMPT" = yes ]; then + if [ -z "$_NEW_LINE_BEFORE_PROMPT" ]; then + _NEW_LINE_BEFORE_PROMPT=1 + else + print "" + fi + fi +} diff --git a/zshrc.d/__available__/powerline.zsh b/zshrc.d/__available__/prompt_powerline.zsh similarity index 100% rename from zshrc.d/__available__/powerline.zsh rename to zshrc.d/__available__/prompt_powerline.zsh