diff options
author | Oliver Kiddle <okiddle@yahoo.co.uk> | 2018-06-07 17:48:48 +0200 |
---|---|---|
committer | Oliver Kiddle <okiddle@yahoo.co.uk> | 2018-06-07 17:48:48 +0200 |
commit | 594f2ff06e85bf27b154dd703ee3b2dd7f168bc0 (patch) | |
tree | 767ae9dba9d24aa202de9e5fe6a48f77f843bf99 /Functions/Misc/zed | |
parent | f16c690bea19c7150d2503d67f9d81c910cb929b (diff) | |
download | zsh-594f2ff06e85bf27b154dd703ee3b2dd7f168bc0.tar.gz zsh-594f2ff06e85bf27b154dd703ee3b2dd7f168bc0.tar.xz zsh-594f2ff06e85bf27b154dd703ee3b2dd7f168bc0.zip |
users/23434: initialise UNDO_LIMIT_NO so that an initial undo doesn't clear the whole edit buffer
Diffstat (limited to 'Functions/Misc/zed')
-rw-r--r-- | Functions/Misc/zed | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Functions/Misc/zed b/Functions/Misc/zed index 56fdef188..9eb4b2d93 100644 --- a/Functions/Misc/zed +++ b/Functions/Misc/zed @@ -72,6 +72,12 @@ if (( bind )) || ! bindkey -M zed >&/dev/null; then # zed we may want to set this temporally. bindkey -A main zed-normal-keymap + # Define a widget to use at startup, undo shouldn't clear initial buffer + __zed_init() { + UNDO_LIMIT_NO=$UNDO_CHANGE_NO + } + zle -N __zed_init + # Assign some default keys. # Depending on your stty's, you may be able to use ^J as accept-line, else: @@ -126,11 +132,11 @@ if ((fun)) then var="${(q-)1} () { }" fi - vared -M zed -m zed-vicmd var && eval function "$var" + vared -M zed -m zed-vicmd -i __zed_init var && eval function "$var" else zed_file_name=$1 [[ -f $1 ]] && var="$(<$1)" - while vared -M zed -m zed-vicmd var + while vared -M zed -m zed-vicmd -i __zed_init var do { print -r -- "$var" >| $zed_file_name |