tmux-tea is a tmux session manager aimed at simplifying and speeding up how you interact with tmux sessions. It's a one key solution to all your tmux session needs.
- Integrations with tmuxinator for session specific configs
- Integrations with fzf for fuzzy search
- Supports session previews
- Integrations with zoxide for directory based session creation
- tmux, fzf, zoxide (required)
- tmuxinator (for session layouts)
- eza (for directory previews)
Add the following to your~/.tmux.conf
set-g @plugin'2kabhishek/tmux-tea'
cd~/.tmux/plugins/tmux-tea#replace ~/.tmux/plugins with your plugin installation path
ln -sfnv$PWD/bin/tea.sh~/.local/bin/tea#Add tea to $PATH, make sure ~/.local/bin is in your $PATH
There are two ways to open tea
<prefix> - t
,this can be configured with the@tea-bind
option e.g:set -g @tea-bind "t"
- Ctrl+talternate binding for a smoother experience.
- Ctrl+f- Directory mode
- Ctrl+j- Zoxide mode
- Ctrl+s- Session mode
- Ctrl+w- Window mode
- Ctrl+x- Kill mode
- Ctrl+t- Toggle tea
If you have a.tmuxinator.yml
file in your directory, tea will use it for setting up your session.
If you have a tmuxinator config file in~/.config/tmuxinator/
that has the same name as your tmux session directory then that will be used.
If none of these are present a tmux session is created from scratch.
If there is no tmuxinator config present, you can set a default command to run in the session using:
set-g @tea-default-command"$EDITOR"
This will open every new session after the initial one with your "$EDITOR" command running.
If you use zsh you can add the<C-t>
binding outside tmux as well using this sni[[ed]]
bindkey -s'^T''tea^M ^M'
You can set the session name to be the full path you select instead of the directory using:
set-g @tea-session-name"full-path"
tmux-tea was inspired byt-smart-tmux-session-managerand shares a lot of code.
I wanted to add some more features that diverged from the original repo and wanted to keep the configs simpler.
- Figuring out the preview script was quite tricky.
- Bash shenanigans!
- dots2k— Dev Environment
- nvim2k— Personalized Editor
- sway2k— Desktop Environment
- qute2k— Personalized Browser
- tmux-tilit— Turns tmux into a terminal window manager
- tmux2k— Makes your tmux statusbar pretty!
⭐ hit the star button if you found this useful ⭐