# check for version/system
# check for versions (compatibility reasons)
+function is51 () {
+ [[ $ZSH_VERSION == 5.<1->* ]] && return 0
+ return 1
+}
+
function is4 () {
[[ $ZSH_VERSION == <4->* ]] && return 0
return 1
# run command line as user root via sudo:
function sudo-command-line () {
[[ -z $BUFFER ]] && zle up-history
- if [[ $BUFFER != sudo\ * ]]; then
- BUFFER="sudo $BUFFER"
- CURSOR=$(( CURSOR+5 ))
+ local cmd="sudo "
+ if [[ ${BUFFER:0:${#cmd}} == ${cmd} ]]; then
+ CURSOR=$(( CURSOR-${#cmd} ))
+ BUFFER="${BUFFER:${#cmd}}"
+ else
+ BUFFER="${cmd}${BUFFER}"
+ CURSOR=$(( CURSOR+${#cmd} ))
fi
+ zle reset-prompt
}
zle -N sudo-command-line
# else
# print 'Notice: no url-quote-magic available :('
# fi
-alias url-quote='autoload -U url-quote-magic ; zle -N self-insert url-quote-magic'
+if is51 ; then
+ # url-quote doesn't work without bracketed-paste-magic since Zsh 5.1
+ alias url-quote='autoload -U bracketed-paste-magic url-quote-magic;
+ zle -N bracketed-paste bracketed-paste-magic; zle -N self-insert url-quote-magic'
+else
+ alias url-quote='autoload -U url-quote-magic ; zle -N self-insert url-quote-magic'
+fi
#m# k ESC-h Call \kbd{run-help} for the 1st word on the command line
alias run-help >&/dev/null && unalias run-help