Find and execute tmux commands rather view a list with the ? key binding. A great way to memorize the keys.
added demo,license, and improve readme
3 files changed, +97 -14
+22-0LICENSE
| @@ -0,0 +1,22 @@ | ||
| 1 | +MIT License | |
| 2 | + | |
| 3 | +Copyright (c) 2024 huncholane | |
| 4 | + | |
| 5 | +Permission is hereby granted, free of charge, to any person obtaining a copy | |
| 6 | +of this software and associated documentation files (the "Software"), to deal | |
| 7 | +in the Software without restriction, including without limitation the rights | |
| 8 | +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
| 9 | +copies of the Software, and to permit persons to whom the Software is | |
| 10 | +furnished to do so, subject to the following conditions: | |
| 11 | + | |
| 12 | +The above copyright notice and this permission notice shall be included in all | |
| 13 | +copies or substantial portions of the Software. | |
| 14 | + | |
| 15 | +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
| 16 | +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
| 17 | +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |
| 18 | +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |
| 19 | +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
| 20 | +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | |
| 21 | +SOFTWARE. | |
| 22 | + |
+75-14README.md
| @@ -1,32 +1,93 @@ | ||
| 1 | 1 | # ๐ฅ tmux-fzf-keys |
| 2 | 2 | |
| 3 | -Fuzzy-find and run **any tmux keybinding** โ instantly. | |
| 4 | -Interactive, searchable, mode-aware. Turn your tmux into a command center. ๐ | |
| 3 | +A fuzzy-powered popup to **search, learn, and run any tmux keybinding**. | |
| 4 | +Perfect for power users, beginners, and everyone in between. ๐ | |
| 5 | 5 | |
| 6 | - | |
| 6 | + | |
| 7 | 7 | |
| 8 | 8 | --- |
| 9 | 9 | |
| 10 | -## โก Features | |
| 10 | +## ๐ก Why use this? | |
| 11 | 11 | |
| 12 | -- ๐ง Fuzzy-search all keybindings across tables | |
| 13 | -- โจ๏ธ Run the command directly from the list | |
| 14 | -- ๐ Displays mode and command side-by-side | |
| 15 | -- ๐ช Opens popup automatically if interaction is detected (e.g. prompts) | |
| 16 | -- ๐งฉ Simple and clean plugin structure | |
| 12 | +Getting lost in tmux keybindings? | |
| 13 | +Stop memorizing โ **start searching**. This plugin helps you: | |
| 14 | + | |
| 15 | +- ๐ Quickly discover available keybindings | |
| 16 | +- ๐ง Learn tmux tables like `prefix`, `copy-mode`, and more | |
| 17 | +- โก Run any binding directly from an interactive list | |
| 18 | +- ๐งฉ Customize your workflow and explore tmux like a pro | |
| 19 | + | |
| 20 | +--- | |
| 21 | + | |
| 22 | +## โ๏ธ Features | |
| 23 | + | |
| 24 | +- ๐ง Fuzzy-search all `tmux list-keys` output by table | |
| 25 | +- โจ๏ธ Review full commands before running | |
| 26 | +- ๐ Opens in a popup so you never leave your session | |
| 27 | +- ๐งฉ Clean plugin structure โ easy to extend | |
| 28 | +- โ Automatically uses popup for interactive commands | |
| 17 | 29 | |
| 18 | 30 | --- |
| 19 | 31 | |
| 20 | -## Prerequisites | |
| 32 | +## ๐ฆ Prerequisites | |
| 21 | 33 | |
| 22 | -- [fzf](https://github.com/junegunn/fzf) | |
| 34 | +- [fzf](https://github.com/junegunn/fzf) must be installed and available in your `$PATH` | |
| 35 | + | |
| 36 | +--- | |
| 23 | 37 | |
| 24 | 38 | ## ๐ง Installation |
| 25 | 39 | |
| 26 | -### Using TPM | |
| 40 | +### Using [TPM (Tmux Plugin Manager)](https://github.com/tmux-plugins/tpm) | |
| 27 | 41 | |
| 28 | -Add this to your `.tmux.conf`: | |
| 42 | +Add the following to your `.tmux.conf`: | |
| 29 | 43 | |
| 30 | 44 | ```tmux |
| 31 | -set -g @plugin 'yourname/tmux-fzf-keys' | |
| 45 | +set -g @plugin 'huncholane/tmux-fzf-keys' | |
| 32 | 46 | ``` |
| 47 | + | |
| 48 | +Then reload tmux and install plugins: | |
| 49 | + | |
| 50 | +```bash | |
| 51 | +prefix + I | |
| 52 | +``` | |
| 53 | + | |
| 54 | +--- | |
| 55 | + | |
| 56 | +## ๐งช Usage | |
| 57 | + | |
| 58 | +Hit: | |
| 59 | + | |
| 60 | +```text | |
| 61 | +prefix + ? | |
| 62 | +``` | |
| 63 | + | |
| 64 | +This opens a popup with a fuzzy list of all current tmux keybindings. | |
| 65 | + | |
| 66 | +- Type to search | |
| 67 | +- Preview the command | |
| 68 | +- Press `Enter` to run it instantly | |
| 69 | + | |
| 70 | +--- | |
| 71 | + | |
| 72 | +## ๐ Custom Keybinding (optional) | |
| 73 | + | |
| 74 | +To override the default key: | |
| 75 | + | |
| 76 | +```tmux | |
| 77 | +unbind ? | |
| 78 | +bind C-f run-shell "#{plugin_path}/scripts/get_and_run.sh" | |
| 79 | +``` | |
| 80 | + | |
| 81 | +--- | |
| 82 | + | |
| 83 | +## ๐ค Contributing | |
| 84 | + | |
| 85 | +Suggestions, feedback, and PRs welcome! | |
| 86 | +This plugin is meant to help others explore and understand tmux. | |
| 87 | +Open an issue or fork the repo and submit your ideas! | |
| 88 | + | |
| 89 | +--- | |
| 90 | + | |
| 91 | +## ๐ License | |
| 92 | + | |
| 93 | +MIT |
+0-0demo.gif
Binary file changed.