Many concurrent sessions with many panes each make it hard to track what is running where, and moving a pane between windows means join-pane with a hand-typed target, so it rarely gets done. tmux-fzf gives a fuzzy-searchable list of every session, window and pane with a live preview of each, and implements break/join/swap as pane actions -- which is the pane-movement gap. fzf is already in apt.global, arch.global and brew.global, so no new packages are needed. Checked out as a submodule rather than left for TPM to clone on first prefix+I: ~/.tmux symlinks to config/tmux, so a TPM-installed plugin lands inside this repo as untracked files. The submodule pins a version and installs via the existing "git submodule update --init". TPM still sources it from the @plugin line and can still update it. prefix+F is the plugin's own top-level menu. prefix+P/W/S skip straight to the pane, window and session panels. TMUX_FZF_CLIENT pins each action to the client that opened it, as the plugin's own binding does -- run-shell has no client context, so tmux otherwise targets the most recently active client, which is wrong when a second client is attached to the same session. No env-var configuration was needed: preview is already on by default, and the TMUX_FZF_* variables are read from the environment only, so the README's suggestion to set them in .tmux.conf is not valid tmux syntax. Tested against tmux 3.5a and fzf 0.38.0: config parses with no errors, all three bindings register, existing bindings are unaffected, TPM sources the plugin and binds prefix+F, the three scripts pass bash -n, and the plugin's fzf-version detection resolves to fzf-tmux with preview enabled. The interactive picker itself needs a real terminal and is left to manual check.
28 lines
1.1 KiB
Plaintext
28 lines
1.1 KiB
Plaintext
[submodule "config/alacritty/themes"]
|
|
path = config/alacritty/themes
|
|
url = https://github.com/alacritty/alacritty-theme
|
|
[submodule "dependencies/Gruvbox-GTK-Theme"]
|
|
path = dependencies/Gruvbox-GTK-Theme
|
|
url = https://github.com/Fausto-Korpsvart/Gruvbox-GTK-Theme
|
|
[submodule "dependencies/tmux-powerline-gruvbox-colorscheme"]
|
|
path = dependencies/tmux-powerline-gruvbox-colorscheme
|
|
url = https://github.com/PetrusZ/tmux-powerline-gruvbox-colorscheme
|
|
[submodule "dependencies/ohmyzsh"]
|
|
path = dependencies/ohmyzsh
|
|
url = https://github.com/ohmyzsh/ohmyzsh
|
|
[submodule "dependencies/gruvbox-contrib"]
|
|
path = dependencies/gruvbox-contrib
|
|
url = https://github.com/gruvbox-community/gruvbox-contrib
|
|
[submodule "dependencies/gruvbox"]
|
|
path = dependencies/gruvbox
|
|
url = https://github.com/morhetz/gruvbox
|
|
[submodule "config/tmux/plugins/tpm"]
|
|
path = config/tmux/plugins/tpm
|
|
url = https://github.com/tmux-plugins/tpm
|
|
[submodule "dependencies/fzf"]
|
|
path = dependencies/fzf
|
|
url = https://github.com/junegunn/fzf.git
|
|
[submodule "config/tmux/plugins/tmux-fzf"]
|
|
path = config/tmux/plugins/tmux-fzf
|
|
url = https://github.com/sainnhe/tmux-fzf
|