X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=zsh%2Frc;h=ef32525f23f4c19cb147d40a9a70006c1ed6e340;hb=22247354cceff65512811106f28f81861c49a62c;hp=a7d81ca6d1bc58dcfa04c818dae2df68981a5159;hpb=6626db2476bcf9080b213dea22d7ae5d088d3a2c;p=config%2Fdotfiles.git diff --git a/zsh/rc b/zsh/rc index a7d81ca..ef32525 100644 --- a/zsh/rc +++ b/zsh/rc @@ -38,26 +38,12 @@ setopt ignoreeof bindkey -v # Also use jj to exit insert mode. -bindkey -M viins 'jj' vi-cmd-mode +bindkey 'jj' vi-cmd-mode # I don't need the arrow keys, I use ^N and ^P for this (see below). -bindkey -M viins -r '^[OA' -bindkey -M viins -r '^[OB' -bindkey -M viins -r '^[OC' -bindkey -M viins -r '^[OD' -bindkey -M viins -r '^[[A' -bindkey -M viins -r '^[[B' -bindkey -M viins -r '^[[C' -bindkey -M viins -r '^[[D' +bindkey -r '^[OA' '^[OB' '^[OC' '^[OD' '^[[A' '^[[B' '^[[C' '^[[D' # Also not in Vi mode. -bindkey -M vicmd -r '^[OA' -bindkey -M vicmd -r '^[OB' -bindkey -M vicmd -r '^[OC' -bindkey -M vicmd -r '^[OD' -bindkey -M vicmd -r '^[[A' -bindkey -M vicmd -r '^[[B' -bindkey -M vicmd -r '^[[C' -bindkey -M vicmd -r '^[[D' +bindkey -a -r '^[OA' '^[OB' '^[OC' '^[OD' '^[[A' '^[[B' '^[[C' '^[[D' # FUNCTION SETTINGS @@ -340,13 +326,13 @@ if [[ $TERM == screen* || $TERM == xterm* || $TERM == rxvt* ]]; then fi # Prepend prefixes like in window_preexec(). + if [[ -n $window_root ]]; then + name="!$name" + fi if [[ -n $SSH_CONNECTION ]]; then - window_title "@$name" - elif [[ -n $window_root ]]; then - window_title "!$name" - else - window_title $name + name="@$name" fi + window_title $name # Just reset the name, so no screen reset necessary for the moment. window_reset= @@ -361,6 +347,9 @@ if [[ $TERM == screen* || $TERM == xterm* || $TERM == rxvt* ]]; then window_title() { print -n "\e]2;$1\e\\" } + else + # Fallback if another TERM is used. + window_title() { } fi # Add the preexec() and precmd() hooks.