diff options
| author | fossdd <fossdd@pwned.life> | 2025-01-23 20:43:27 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-01-23 20:43:27 +0100 |
| commit | 69410e702014b6f6f09f659a5747c5a6ace7a09a (patch) | |
| tree | c4a3ac6e9b17e85fcc372853a932320c95ba27cb /plugins | |
| parent | 4e29c670a48a17276d04b3e47262b10f28dfcc0b (diff) | |
| download | zsh-69410e702014b6f6f09f659a5747c5a6ace7a09a.tar.gz zsh-69410e702014b6f6f09f659a5747c5a6ace7a09a.tar.bz2 zsh-69410e702014b6f6f09f659a5747c5a6ace7a09a.zip | |
feat(foot): add foot plugin (#12849)
Diffstat (limited to 'plugins')
| -rw-r--r-- | plugins/foot/README.md | 35 | ||||
| -rw-r--r-- | plugins/foot/foot.plugin.zsh | 10 |
2 files changed, 45 insertions, 0 deletions
diff --git a/plugins/foot/README.md b/plugins/foot/README.md new file mode 100644 index 000000000..67777d9fa --- /dev/null +++ b/plugins/foot/README.md @@ -0,0 +1,35 @@ +# foot + +This plugin adds shell integration for [foot, a fast, lightweight and +minimalistic Wayland terminal emulator](https://codeberg.org/dnkl/foot). + +To use, add `foot` to the list of plugins in your `.zshrc` file: + +```zsh +plugins=(... foot) +``` + +## Spawning new terminal instances in the current working directory + +When spawning a new terminal instance (with `ctrl+shift+n` by default), the new +instance will start in the current working directory. + +## Jumping between prompts + +Foot can move the current viewport to focus prompts of already executed +commands (bound to ctrl+shift+z/x by default). + +## Piping last command's output + +The key binding `pipe-command-output` can pipe the last command's output to an +application of your choice (similar to the other `pipe-*` key bindings): + +``` +[key-bindings] +pipe-command-output=[sh -c "f=$(mktemp); cat - > $f; footclient emacsclient -nw $f; rm $f"] Control+Shift+g +``` + +When pressing ctrl+shift+g, the last command's output is written to a +temporary file, then an emacsclient is started in a new footclient instance. +The temporary file is removed after the footclient instance has closed. + diff --git a/plugins/foot/foot.plugin.zsh b/plugins/foot/foot.plugin.zsh new file mode 100644 index 000000000..c1d077e26 --- /dev/null +++ b/plugins/foot/foot.plugin.zsh @@ -0,0 +1,10 @@ +function precmd { + print -Pn "\e]133;A\e\\" + if ! builtin zle; then + print -n "\e]133;D\e\\" + fi +} + +function preexec { + print -n "\e]133;C\e\\" +} |
