Skip to content

Latest commit

Β 

History

History
142 lines (92 loc) Β· 4.79 KB

README.md

File metadata and controls

142 lines (92 loc) Β· 4.79 KB
License People Stars Forks Watches Last Updated

tmux sessions as easy as tea β˜•πŸͺŸ

tmux-tea in action
tmux-tea in action

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.

✨ Features

  • Integrations with tmuxinator for session specific configs
  • Integrations with fzf for fuzzy search
  • Supports session previews
  • Integrations with zoxide for directory based session creation

Setup

⚑ Requirements

  • tmux, fzf, zoxide (required)
  • tmuxinator (for session layouts)
  • eza (for directory previews)

πŸš€ Installation

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

πŸ’» Usage

There are two ways to open tea

  • <prefix> - t, this can be configured with the @tea-bind option
  • Ctrl+t alternate binding for a smoother experience.

Keybindings

  • Ctrl+f - Directory mode
  • Ctrl+j - Zoxide mode
  • Ctrl+s - Session mode
  • Ctrl+w - Window mode
  • Ctrl+x - Kill mode
  • Ctrl+t - Toggle tea

tmuxinator integration

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.

zsh integration

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'

full session names

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"

Behind The Code

🌈 Inspiration

tmux-tea was inspired by t-smart-tmux-session-manager and 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.

πŸ’‘ Challenges/Learnings

  • Figuring out the preview script was quite tricky.
  • Bash shenanigans!

🧰 Tooling

  • dots2k β€” Dev Environment
  • nvim2k β€” Personalized Editor
  • sway2k β€” Desktop Environment
  • qute2k β€” Personalized Browser

πŸ” More Info

  • tmux-tilit β€” Turns tmux into a terminal window manager
  • tmux2k β€” Makes your tmux statusbar pretty!

⭐ hit the star button if you found this useful ⭐

Source | Blog | Twitter | LinkedIn | More Links | Other Projects