From 12207b8d82730618ee00a82e246e94265b361cff Mon Sep 17 00:00:00 2001 From: Ivan Malison Date: Sat, 29 Jul 2017 00:39:04 -0700 Subject: [PATCH] [zsh] Use pure prompt --- dotfiles/lib/zsh/prompt.sh | 152 ------------------------------------- dotfiles/lib/zsh/zgen.sh | 4 +- 2 files changed, 3 insertions(+), 153 deletions(-) diff --git a/dotfiles/lib/zsh/prompt.sh b/dotfiles/lib/zsh/prompt.sh index 4118c95f..e69de29b 100644 --- a/dotfiles/lib/zsh/prompt.sh +++ b/dotfiles/lib/zsh/prompt.sh @@ -1,152 +0,0 @@ -##### COLOR SETUP -autoload -U colors && colors -# P.C. Shyamshankar -# Copied from -# http://github.com/sykora/etc/blob/master/zsh/functions/spectrum/ -typeset -Ag FX FG BG -FX=( - reset "%{%}" - bold "%{%}" no-bold "%{%}" - italic "%{%}" no-italic "%{%}" - underline "%{%}" no-underline "%{%}" - blink "%{%}" no-blink "%{%}" - reverse "%{%}" no-reverse "%{%}" -) - -for color in {000..255}; do - FG[$color]="%{[38;5;${color}m%}" - BG[$color]="%{[48;5;${color}m%}" -done - -# Show all 256 colors with color number -function spectrum_ls { - for code in {000..255}; do - print -P -- "$code: %{$FG[$code]Test%f%}" - done -} -##### - -function current_directory { - local PWD=$(pwd) - echo "${PWD/#$HOME/~}" -} - -function git_prompt_info { - if test -z $(git branch-or-sha); - then - echo "" - else - local b="$(print_with_color $(git branch-or-sha) $SOURCE_CONTROL_COLOR)" - echo " $(separator "on") $b$(git_status_character)" - fi -} - -function git_status_character { - if git dirty; - then - print_with_color "✘" "$fg[red]" - else - print_with_color "✔" "$fg[green]" - fi -} - -function command_line_character { - if ! test -z $(git branch-or-sha); - then - echo "±" - else - echo "○" - fi -} - -function job_count { - jobs -s | wc -l -} - -function colored_job_count { - local job_count="$(job_count)" - if [ $job_count -gt 0 ]; then - print_with_color "($job_count) " $JOB_COUNT_COLOR - fi -} - -export PROMPT_CHAR_ERROR="$fg[red]" -export PROMPT_CHAR_SUCCESS="$fg[green]" - -function prompt_custom_colors { - export USERNAME_COLOR="$FG[040]" - export SEPARATOR_COLOR="$FG[239]" - export HOSTNAME_COLOR="$FG[033]" - export CURRENT_DIRECTORY_COLOR="$FG[226]" - export CURRENT_DIRECTORY_COLOR="$FG[255]" -} - -function prompt_basic_colors { - export USERNAME_COLOR="$fg_no_bold[green]" - export SEPARATOR_COLOR="$fg_no_bold[black]" - export HOSTNAME_COLOR="$fg_no_bold[blue]" - export CURRENT_DIRECTORY_COLOR="$fg[yellow]" - export SOURCE_CONTROL_COLOR="$fg[white]" -} - -function prompt_solarized_colors { - prompt_basic_colors - export HOSTNAME_COLOR="$fg[magenta]" - export USERNAME_COLOR="$fg[blue]" - export CURRENT_DIRECTORY_COLOR="$fg[red]" - export SOURCE_CONTROL_COLOR="$fg[white]" -} - -function prompt_tomorrow_colors { - export SEPARATOR_COLOR="$fg[cyan]" - export HOSTNAME_COLOR="$fg[yellow]" - export USERNAME_COLOR="$fg[blue]" - export CURRENT_DIRECTORY_COLOR="$fg[red]" - export SOURCE_CONTROL_COLOR="$fg[gray]" -} - -function prompt_monokai_colors { - export SEPARATOR_COLOR="$fg[black]" - export HOSTNAME_COLOR="$fg[blue]" - export USERNAME_COLOR="$fg[red]" - export CURRENT_DIRECTORY_COLOR="$fg[magenta]" - export SOURCE_CONTROL_COLOR="$fg[white]" -} - -function prompt_no_colors { - export SEPARATOR_COLOR="" - export HOSTNAME_COLOR="" - export USERNAME_COLOR="" - export CURRENT_DIRECTORY_COLOR="" - export SOURCE_CONTROL_COLOR="" - export reset_color="" -} - -function prompt_basic_colors_with_grey_separator { - prompt_basic_colors - export SEPARATOR_COLOR="$FG[239]" -} - -function print_with_color { - echo "%{$2%}$1%{$reset_color%}" -} - -function separator { - print_with_color "$1" "$SEPARATOR_COLOR" -} - -export JOB_COUNT_COLOR="$fg[blue]" - -prompt_tomorrow_colors -# For reasons which are currently beyond me, it is not possible to use -# $? in PROMPT which is why the second line is so strangely -# constructed. -function set_my_prompt { - export PROMPT='⚡ % $(print_with_color "%n" "$USERNAME_COLOR") $(separator "at") $(print_with_color "`hostname -s`" "$HOSTNAME_COLOR") $(separator "in") $(print_with_color "`current_directory`" "$CURRENT_DIRECTORY_COLOR")$(git_prompt_info) -$(colored_job_count)%(?.$(print_with_color "$(command_line_character) ❯" $PROMPT_CHAR_SUCCESS).$(print_with_color "$(command_line_character) ❯" $PROMPT_CHAR_ERROR)) ' - export PS2='(%_) ' -} - -function set_powerline_prompt { - source "$(python_module_path powerline)/bindings/zsh/powerline.zsh" -} diff --git a/dotfiles/lib/zsh/zgen.sh b/dotfiles/lib/zsh/zgen.sh index ad3a87e4..57e58764 100644 --- a/dotfiles/lib/zsh/zgen.sh +++ b/dotfiles/lib/zsh/zgen.sh @@ -6,13 +6,15 @@ source "$ZGEN_PATH/zgen.zsh" # if the init scipt doesn't exist if ! zgen saved; then - zgen oh-my-zsh + zgen oh-my-zsh plugins/safe-paste zgen oh-my-zsh plugins/git zgen oh-my-zsh plugins/sudo zgen oh-my-zsh plugins/command-not-found zgen oh-my-zsh plugins/pip zgen load zsh-users/zsh-syntax-highlighting zgen load kennethreitz/autoenv + zgen load mafredri/zsh-async + zgen load sindresorhus/pure # generate the init script from plugins above zgen save