| 1 | # ๐ฅ tmux-fzf-keys |
| 2 | |
| 3 | A fuzzy-powered popup to **search, learn, and run any tmux keybinding**. |
| 4 | Perfect for power users, beginners, and everyone in between. ๐ |
| 5 | |
| 6 |  |
| 7 | |
| 8 | --- |
| 9 | |
| 10 | ## ๐ก Why use this? |
| 11 | |
| 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 |
| 29 | |
| 30 | --- |
| 31 | |
| 32 | ## ๐ฆ Prerequisites |
| 33 | |
| 34 | - [fzf](https://github.com/junegunn/fzf) must be installed and available in your `$PATH` |
| 35 | |
| 36 | --- |
| 37 | |
| 38 | ## ๐ง Installation |
| 39 | |
| 40 | ### Using [TPM (Tmux Plugin Manager)](https://github.com/tmux-plugins/tpm) |
| 41 | |
| 42 | Add the following to your `.tmux.conf`: |
| 43 | |
| 44 | ```tmux |
| 45 | set -g @plugin 'huncholane/tmux-fzf-keys' |
| 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 |