Home

Awesome

<div align = "center"> <h1><a href="https://github.com/2kabhishek/tmux-tea">tmux-tea</a></h1> <a href="https://github.com/2KAbhishek/tmux-tea/blob/main/LICENSE"> <img alt="License" src="https://img.shields.io/github/license/2kabhishek/tmux-tea?style=flat&color=eee&label="> </a> <a href="https://github.com/2KAbhishek/tmux-tea/graphs/contributors"> <img alt="People" src="https://img.shields.io/github/contributors/2kabhishek/tmux-tea?style=flat&color=ffaaf2&label=People"> </a> <a href="https://github.com/2KAbhishek/tmux-tea/stargazers"> <img alt="Stars" src="https://img.shields.io/github/stars/2kabhishek/tmux-tea?style=flat&color=98c379&label=Stars"></a> <a href="https://github.com/2KAbhishek/tmux-tea/network/members"> <img alt="Forks" src="https://img.shields.io/github/forks/2kabhishek/tmux-tea?style=flat&color=66a8e0&label=Forks"> </a> <a href="https://github.com/2KAbhishek/tmux-tea/watchers"> <img alt="Watches" src="https://img.shields.io/github/watchers/2kabhishek/tmux-tea?style=flat&color=f5d08b&label=Watches"> </a> <a href="https://github.com/2KAbhishek/tmux-tea/pulse"> <img alt="Last Updated" src="https://img.shields.io/github/last-commit/2kabhishek/tmux-tea?style=flat&color=e06c75&label="> </a> <h3>tmux sessions as easy as tea ☕🪟</h3> <figure> <img src="images/screenshot.png" alt="tmux-tea in action"> <br/> <figcaption>tmux-tea in action</figcaption> </figure> </div>

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

Setup

⚡ Requirements

🚀 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

Keybindings

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.

default command

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.

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"

preview position

You can set the preview position to "top","bottom","left", or "right", default is "top".

set -g @tea-preview-position "bottom"

input position

You can set the input position to "default", "reverse" or "reverse-list", default is "reverse".

set -g @tea-layout "reverse"

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

🧰 Tooling

🔍 More Info

<hr> <div align="center">

<strong>⭐ hit the star button if you found this useful ⭐</strong><br>

<a href="https://github.com/2KAbhishek/tmux-tea">Source</a> | <a href="https://2kabhishek.github.io/blog" target="_blank">Blog </a> | <a href="https://twitter.com/2kabhishek" target="_blank">Twitter </a> | <a href="https://linkedin.com/in/2kabhishek" target="_blank">LinkedIn </a> | <a href="https://2kabhishek.github.io/links" target="_blank">More Links </a> | <a href="https://2kabhishek.github.io/projects" target="_blank">Other Projects </a>

</div>