diff options
author | Hugues Hiegel <hugues@hiegel.fr> | 2012-03-15 16:08:28 +0100 |
---|---|---|
committer | Hugues Hiegel <hugues@hiegel.fr> | 2012-03-15 16:08:28 +0100 |
commit | 22790301b29a066aea05acb438d7d742a0a907e9 (patch) | |
tree | 199f5e323016967086aa06e52166e97bd9589363 | |
parent | 14d73e9bc8d3880bdecc557e98406c47e241ee98 (diff) | |
parent | 60067df38b00e7b63b40c29209a9309d0d0e748d (diff) |
Merge branch 'master' of git:zdotdir
-rw-r--r-- | 12_Prompts.zsh | 17 | ||||
-rw-r--r-- | net:foret/Environment.zsh | 2 | ||||
-rw-r--r-- | user:hugues/KeyBindings.zsh | 22 |
3 files changed, 25 insertions, 16 deletions
diff --git a/12_Prompts.zsh b/12_Prompts.zsh index 391a7c7..f15f9be 100644 --- a/12_Prompts.zsh +++ b/12_Prompts.zsh @@ -77,6 +77,17 @@ __hbar() fi } +__get_prompt_lines() +{ + local lines + lines=$( (__expand_text "$PS1 $@" ) | sed "s/\\(.\{,$COLUMNS\}\\)/\\1\n/g" ) + lines=$( echo "$lines" | sed -n '/^$/n;p' | wc -l ) + # Got number of empty lines at end of command, because they are screwed up above... + lines=$(( $lines + $( echo -n "$@" | tr ';\n' '.;' | sed 's/^\(.*[^;]\)\(;*\)$/\2/' | wc -c ) )) + + echo $lines +} + preexec () { __term_title "$2" @@ -87,11 +98,7 @@ preexec () __hbar __redefine_prompt - local lines - lines=$( (__expand_text "$PS1 $1" ) | sed "s/\\(.\{,$COLUMNS\}\\)/\\1\n/g" ) - lines=$( echo "$lines" | sed -n '/^$/n;p' | wc -l ) - # Got number of empty lines at end of command, because they are screwed up above... - lines=$(( $lines + $( echo -n "$1" | tr ';\n' '.;' | sed 's/^\(.*[^;]\)\(;*\)$/\2/' | wc -c ) )) + local lines=$(__get_prompt_lines "$1") tput sc for i in {1..$lines} ; tput cuu1 diff --git a/net:foret/Environment.zsh b/net:foret/Environment.zsh index 21008d4..9066a83 100644 --- a/net:foret/Environment.zsh +++ b/net:foret/Environment.zsh @@ -1,4 +1,6 @@ +export MUSICPLAYER=totem + # ccache export CCACHE_DIR=/work/$USER/.ccache diff --git a/user:hugues/KeyBindings.zsh b/user:hugues/KeyBindings.zsh index 02dd29a..6a50329 100644 --- a/user:hugues/KeyBindings.zsh +++ b/user:hugues/KeyBindings.zsh @@ -33,15 +33,15 @@ bindkey '[3~' kill-region # ESC del test $TERM = 'rxvt' -o $TERM = 'xterm' -o $TERM = 'aterm' && { - bindkey '[1~' beginning-of-line # home - bindkey '[4~' end-of-line # end-of-line - bindkey 'Oc' forward-word # CTRL right - bindkey 'Od' backward-word # CTRL left - bindkey '[3$' vi-set-buffer # SHIFT del - bindkey 'Oa' history-search-backward # CTRL UP - bindkey 'Ob' history-search-forward # CTRL DOWN - bindkey 'OH' beginning-of-line # home - bindkey 'OF' end-of-line # end-of-line + bindkey '[1~' beginning-of-line # home + bindkey '[4~' end-of-line # end-of-line + bindkey 'Oc' forward-word # CTRL right + bindkey 'Od' backward-word # CTRL left + bindkey '[3$' vi-set-buffer # SHIFT del + bindkey 'Oa' history-search-backward # CTRL UP + bindkey 'Ob' history-search-forward # CTRL DOWN + bindkey 'OH' beginning-of-line # home + bindkey 'OF' end-of-line # end-of-line } # @@ -237,8 +237,8 @@ do bindkey -M $keymap 'q' push-line bindkey -M $keymap 'Q' push-line - bindkey -M $keymap -s 'K' 'Q tput clear\n' - bindkey -M $keymap -s 'B' 'Q tput clear ; tput cup $(tput lines) 0\n' + bindkey -M $keymap -s 'K' 'Q for i in {1..$(__get_prompt_lines)} ; tput cuu1\n' + bindkey -M $keymap -s 'B' 'Q tput clear ; tput cup $(tput lines) 0\n' done # redefines push-line for vicmd |