X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=zsh%2Frc;h=6fcc820c9e5e2fda8064c0b3e39768939ce3ec00;hb=817179a8ad182e22b0aecf883926982743e0f26b;hp=d440e2fe630464d84bc641aeb4e5aa3f08320e2f;hpb=7bf679fea082220666c375e347f59f0a4ccde907;p=config%2Fdotfiles.git diff --git a/zsh/rc b/zsh/rc index d440e2f..6fcc820 100644 --- a/zsh/rc +++ b/zsh/rc @@ -38,12 +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' '^[OB' '^[OC' '^[OD' '^[[A' '^[[B' '^[[C' '^[[D' +bindkey -r '^[OA' '^[OB' '^[OC' '^[OD' '^[[A' '^[[B' '^[[C' '^[[D' # Also not in Vi mode. -bindkey -M vicmd -r '^[OA' '^[OB' '^[OC' '^[OD' '^[[A' '^[[B' '^[[C' '^[[D' +bindkey -a -r '^[OA' '^[OB' '^[OC' '^[OD' '^[[A' '^[[B' '^[[C' '^[[D' # FUNCTION SETTINGS @@ -326,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= @@ -347,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. @@ -414,10 +417,12 @@ zstyle ':completion:*:(hg|git)*:*' ignore-line yes # typing the command. # # Thanks to Vadim Zeitlin for a fix (--) so lines -# starting with - don't cause errors. +# starting with - don't cause errors; and to Nadav Har'El +# for a fix (-r) to handle whitespace/quotes +# correctly, both on the Zsh mailing list. TRAPINT() { # Store the current buffer in the history. - zle && print -s -- $BUFFER + zle && print -s -r -- $BUFFER # Return the default exit code so Zsh aborts the current command. return $1