]> ruderich.org/simon Gitweb - config/dotfiles.git/commitdiff
Improved trap function to simply add the aborted command to the history.
authorSimon Ruderich <simon@ruderich.org>
Tue, 9 Sep 2008 15:13:20 +0000 (17:13 +0200)
committerSimon Ruderich <simon@ruderich.org>
Tue, 9 Sep 2008 15:13:20 +0000 (17:13 +0200)
This makes retrieving it later very simple.

zsh/rc

diff --git a/zsh/rc b/zsh/rc
index 298c5e3448f16ac8a3019ef97f94c333cfe8a1e5..088c53dc6d9798990241a7c1847f8cc58505fa88 100644 (file)
--- a/zsh/rc
+++ b/zsh/rc
@@ -54,22 +54,17 @@ zstyle ':completion:*' matcher-list '' 'm:{a-zA-Z}={A-Za-z}'
 # Enable zsh's extended glob abilities.
 setopt extendedglob
 
-# If ^C is pressed while typing a command, copy it in the kill buffer so it can
-# be "yanked" later and then abort like ^C normally does. This is useful when I
-# want to abort an command to do something in between and then finish typing
-# the command.
+# If ^C is pressed while typing a command, add it to the history so it can be
+# easily retrieved later and then abort like ^C normally does. This is useful
+# when I want to abort an command to do something in between and then finish
+# typing the command.
 TRAPINT() {
-    # Kill the current buffer so it gets stored and can be retrieved later with
-    # "yank". Then yank it so it gets displayed (otherwise I don't know which
-    # command I aborted).
-    zle && zle kill-buffer && zle yank
+    # Store the current buffer in the history.
+    zle && print -s $BUFFER
 
-    # Return the default exit code so zsh aborts the current command line.
+    # Return the default exit code so zsh aborts the current command.
     return $1
 }
-# Make sure ^Y is bound to yank, necessary for the TRAPINT function to work as
-# excepted.
-bindkey "^Y" yank
 
 # Simplify calls to less, automatically redirects all output.
 alias -g L='2>&1 | less'