Make our C-z shortcut smarter
authorFrank Terbeck <ft@bewatermyfriend.org>
Wed, 3 Mar 2010 12:58:48 +0000 (13:58 +0100)
committerFrank Terbeck <ft@bewatermyfriend.org>
Wed, 3 Mar 2010 12:58:48 +0000 (13:58 +0100)
etc/zsh/zshrc

index f07fb67..4178304 100644 (file)
@@ -912,8 +912,19 @@ zle -N insert-last-typed-word;
 #k# Insert last typed word
 bindkey "\em" insert-last-typed-word
 
-#k# Shortcut for \kbd{fg<enter>}
-bindkey -s '^z' "fg\n"
+function grml-zsh-fg() {
+  if (( ${#jobstates} )); then
+    zle .push-input
+    [[ -o hist_ignore_space ]] && BUFFER=' ' || BUFFER=''
+    BUFFER="${BUFFER}fg"
+    zle .accept-line
+  else
+    zle -M 'No background jobs. Doing nothing.'
+  fi
+}
+zle -N grml-zsh-fg
+#k# A smart shortcut for \kbd{fg<enter>}
+bindkey '^z' grml-zsh-fg
 
 # run command line as user root via sudo:
 sudo-command-line() {