Split transient.zsh back out to fix shell exit issues
This commit is contained in:
parent
425164c6ac
commit
8a2767515f
|
@ -24,37 +24,6 @@
|
||||||
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
|
zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
|
||||||
zstyle ':completion:*' menu select
|
zstyle ':completion:*' menu select
|
||||||
'';
|
'';
|
||||||
initExtra = ''
|
initExtra = "source ${./transient.zsh}\n";
|
||||||
## enable transient prompt
|
|
||||||
zle-line-init() {
|
|
||||||
emulate -L zsh
|
|
||||||
|
|
||||||
[[ $CONTEXT == start ]] || return 0
|
|
||||||
|
|
||||||
while true; do
|
|
||||||
zle .recursive-edit
|
|
||||||
local -i ret=$?
|
|
||||||
[[ $ret == 0 && $KEYS == $"\4" ]] || break
|
|
||||||
[[ -o ignore_eof ]] || exit 0
|
|
||||||
done
|
|
||||||
|
|
||||||
local saved_prompt=$PROMPT
|
|
||||||
local saved_rprompt=$RPROMPT
|
|
||||||
PROMPT="> "
|
|
||||||
RPROMPT=""
|
|
||||||
zle .reset-prompt
|
|
||||||
PROMPT=$saved_prompt
|
|
||||||
RPROMPT=$saved_rprompt
|
|
||||||
|
|
||||||
if ((ret)); then
|
|
||||||
zle .send-break
|
|
||||||
else
|
|
||||||
zle .accept-line
|
|
||||||
fi
|
|
||||||
return ret
|
|
||||||
}
|
|
||||||
|
|
||||||
zle -N zle-line-init
|
|
||||||
'';
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
31
home/zsh/transient.zsh
Executable file
31
home/zsh/transient.zsh
Executable file
|
@ -0,0 +1,31 @@
|
||||||
|
#!/usr/bin/env zsh
|
||||||
|
|
||||||
|
zle-line-init() {
|
||||||
|
emulate -L zsh
|
||||||
|
|
||||||
|
[[ $CONTEXT == start ]] || return 0
|
||||||
|
|
||||||
|
while true; do
|
||||||
|
zle .recursive-edit
|
||||||
|
local -i ret=$?
|
||||||
|
[[ $ret == 0 && $KEYS == $'\4' ]] || break
|
||||||
|
[[ -o ignore_eof ]] || exit 0
|
||||||
|
done
|
||||||
|
|
||||||
|
local saved_prompt=$PROMPT
|
||||||
|
local saved_rprompt=$RPROMPT
|
||||||
|
PROMPT='> '
|
||||||
|
RPROMPT=''
|
||||||
|
zle .reset-prompt
|
||||||
|
PROMPT=$saved_prompt
|
||||||
|
RPROMPT=$saved_rprompt
|
||||||
|
|
||||||
|
if ((ret)); then
|
||||||
|
zle .send-break
|
||||||
|
else
|
||||||
|
zle .accept-line
|
||||||
|
fi
|
||||||
|
return ret
|
||||||
|
}
|
||||||
|
|
||||||
|
zle -N zle-line-init
|
Loading…
Reference in a new issue