diff options
| author | 2026-04-17 10:53:33 +0100 | |
|---|---|---|
| committer | 2026-04-17 10:53:33 +0100 | |
| commit | 70c58e6e1c587dfc95e474f6facc18fb685b7512 (patch) | |
| tree | 511cfee8248a9555fd1090928407ca21da5ec532 | |
| parent | 788856ff716659eeb0f230320689aeb0f82fb961 (diff) | |
| download | dotfiles-70c58e6e1c587dfc95e474f6facc18fb685b7512.tar.gz dotfiles-70c58e6e1c587dfc95e474f6facc18fb685b7512.tar.bz2 dotfiles-70c58e6e1c587dfc95e474f6facc18fb685b7512.zip | |
feat: add Ctrl-Z toggle for foreground/background
Single Ctrl-Z press suspends a process AND resumes it — no need to
type 'fg' manually. If no jobs are suspended, clears the screen
instead. Very ergonomic for editor/build workflows.
| -rw-r--r-- | home/.config/zsh/.zshrc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/home/.config/zsh/.zshrc b/home/.config/zsh/.zshrc index 412b628..cd6458e 100644 --- a/home/.config/zsh/.zshrc +++ b/home/.config/zsh/.zshrc @@ -103,6 +103,20 @@ bindkey '^[[1;3D' backward-word # Alt-Left bindkey '^H' backward-kill-word # Ctrl-Backspace bindkey '^[[3;5~' kill-word # Ctrl-Delete +# Ctrl-Z: toggle foreground/background (no need to type 'fg') +toggle-fg-bg() { + if (( ${#jobstates} )); then + zle .push-input + BUFFER="fg" + zle .accept-line + else + zle .push-input + zle .clear-screen + fi +} +zle -N toggle-fg-bg +bindkey '^Z' toggle-fg-bg + # Ctrl-D exits even on non-empty line exit_zsh() { exit } zle -N exit_zsh |
