prompt tweak

This commit is contained in:
Andrey Anurin
2018-08-13 22:27:21 +03:00
parent cb340786dc
commit 93dd19c367
3 changed files with 30 additions and 16 deletions

View File

@@ -1,5 +1,5 @@
function is_local { function is_local {
local HOSTNAME=$(hostname) local HOSTNAME="$(hostname)"
[[ "$HOSTNAME" =~ '^abra0' || "$HOSTNAME" == "svxf2-osx" ]] [[ "$HOSTNAME" =~ '^abra0' || "$HOSTNAME" == "svxf2-osx" ]]
} }
@@ -155,7 +155,7 @@ function ffmpeg_timelapse {
} }
function ffmpeg_timelapse_today { function ffmpeg_timelapse_today {
local TODAY=$(date '+%Y-%m-%d') local TODAY="$(date '+%Y-%m-%d')"
ffmpeg_timelapse "$TODAY" -preset ultrafast -crf 20 ffmpeg_timelapse "$TODAY" -preset ultrafast -crf 20
} }
@@ -166,14 +166,14 @@ function update_.g {
return return
fi fi
local RES=$(.g pull --no-stat 2>&1) local RES="$(.g pull --no-stat 2>&1)"
if [[ $? != 0 ]]; then if [[ $? != 0 ]]; then
# something went wrong # something went wrong
return return
fi fi
if [[ ! ($RES =~ "Already up.to.date") ]]; then if [[ ! $RES =~ "Already up.to.date" ]]; then
echo "Updated .g" echo "Updated .g"
echo $RES echo $RES
echo "======" echo "======"

View File

@@ -45,3 +45,11 @@ bindkey '\e[4~' end-of-line
bindkey "\eOH" beginning-of-line bindkey "\eOH" beginning-of-line
bindkey "\eOF" end-of-line bindkey "\eOF" end-of-line
# modules
# saves $EPOCHSECONDS
zmodload zsh/datetime
# profiler
# zmodload zsh/zprof

View File

@@ -1,8 +1,11 @@
pmodload 'helper' pmodload 'helper'
# %<num>>dsadsa>dsadsa -- truncation
# %~ -- current dir
# %F{color}...%f -- foreground colors # %F{color}...%f -- foreground colors
# %B...%b -- bold # %B...%b -- bold
# %(x.a.b) -- if # %(x.a.b) -- if
# ${(l)} -- padding
# color chart: https://upload.wikimedia.org/wikipedia/en/1/15/Xterm_256color_chart.svg # color chart: https://upload.wikimedia.org/wikipedia/en/1/15/Xterm_256color_chart.svg
# COLOR_PWD='141' # COLOR_PWD='141'
@@ -17,9 +20,7 @@ COLOR_PWD='cyan'
COLOR_PWD_ROOT='red' COLOR_PWD_ROOT='red'
COLOR_PROMPT_STARTER='green' COLOR_PROMPT_STARTER='green'
COLOR_TIME='green' COLOR_TIME='green'
COLOR_USERNAME='blue' COLOR_USERHOSTNAME='blue'
COLOR_AT=$COLOR_USERNAME
COLOR_HOSTNAME=$COLOR_USERNAME
NEWLINE=$'\n' NEWLINE=$'\n'
@@ -32,12 +33,18 @@ function prompt_abra_precmd {
git-info || true git-info || true
fi fi
PRE_LENGTH=$(($COLUMNS*2/3)) PRE_LENGTH=$(( ${COLUMNS} * 2 / 3 ))
PRE='%$PRE_LENGTH<...<%~ %<<' # take current directory and truncate left so that up to $PRE_LENGTH chars are left
PRE=$(print -P $PRE) PRE='%${PRE_LENGTH}<...<%~ %<<'
PRE=$(print ${(l:$COLUMNS:)PRE}) PRE=$(print -P ${PRE})
print -P '%(!.%F{$COLOR_PWD_ROOT}.%F{$COLOR_PWD})$PRE%f' PRE=$(print ${(l:${COLUMNS}:)PRE})
# print -P '%(!.%F{${COLOR_PWD_ROOT}}.%F{${COLOR_PWD}})${PRE}%f'
print -P '%F{${COLOR_PWD}}${PRE}%f'
}
function prompt_abra_preexec {
echo hi
} }
function prompt_abra_setup { function prompt_abra_setup {
@@ -50,6 +57,7 @@ function prompt_abra_setup {
# Add hook for calling git-info before each command. # Add hook for calling git-info before each command.
add-zsh-hook precmd prompt_abra_precmd add-zsh-hook precmd prompt_abra_precmd
add-zsh-hook preexec prompt_abra_preexec
# Set git-info parameters. # Set git-info parameters.
zstyle ':prezto:module:git:info' verbose 'yes' zstyle ':prezto:module:git:info' verbose 'yes'
@@ -77,10 +85,8 @@ function prompt_abra_setup {
PROMPT=$PROMPT'%(?.%F{$COLOR_PROMPT_STARTER}.%F{red})➤ %f' PROMPT=$PROMPT'%(?.%F{$COLOR_PROMPT_STARTER}.%F{red})➤ %f'
RPROMPT='' RPROMPT=''
RPROMPT=$RPROMPT'%(?::%F{red}%?%f )' # last command code if nonzero RPROMPT=$RPROMPT'%(?..%F{red}%?%f )' # last command code if nonzero
RPROMPT=$RPROMPT'%B%F{$COLOR_USERNAME}%n%f%b' RPROMPT=$RPROMPT'%B%(!.%F{${COLOR_PWD_ROOT}}.%F{${COLOR_USERHOSTNAME}})%n@%M%f%b'
RPROMPT=$RPROMPT'%B%F{$COLOR_AT}@%f%b'
RPROMPT=$RPROMPT'%B%F{$COLOR_HOSTNAME}%2m%f%b'
RPROMPT=$RPROMPT'${git_info[rprompt]} ' RPROMPT=$RPROMPT'${git_info[rprompt]} '
RPROMPT=$RPROMPT'%F{$COLOR_TIME}%*%f' RPROMPT=$RPROMPT'%F{$COLOR_TIME}%*%f'
} }