Smart tmux sessions with zoxide and fzf hero

Smart tmux sessions with zoxide and fzf

Create and manage tmux sessions automatically with a custom script that uses zoxide and fzf.

Update: I’ve created an official tmux plugin called to make it easy to set this up in your workflow. View “t - smart tmux session manager” tmux plugin

zoxide

Terminal window
brew install zoxide

View zoxide on GitHub

tmux

Terminal window
brew install tmux

View tmux on GitHub

~/.config/fish/config.fish
abbr tn "tmux new -s (pwd | sed 's/.*\///g')"

You can turn off the detach-on-destroy option in your tmux.conf to allow tmux to switch to an existing session when you close the final window on a session.

~/.tmux.conf
set-option -g detach-on-destroy off

macOS Binding

This is the macOS binding I use (cmd+j) to open the session manager popup.

~/.config/alacritty/alacritty.yaml
key_bindings:
- { key: K, mods: Command, chars: "\x02\x54" }

Watch “macOS Keyboard Shortcuts for tmux” for more details.

Sign-Up for New Posts

Stay in the loop and get the latest blog posts about dotfiles sent to your inbox.

Or use the

RSS Feed
man sitting at desk in front of a landscape of rivers leading to a mountain range

Dev Workflow Intro

Your guide to creating a powerful and intuitive development workflow in the terminal.

The terminal is a powerful tool for developers, but it can be overwhelming to know where to start. This guide will help you create a powerful development environment in the terminal. Here are some of the things you'll learn.

  • Install packages and keep them up-to-date
  • Design a minimalist, distraction-free, user-interface
  • Use familiar keyboard shortcuts
  • Manage multiple projects with ease
  • Integrate with Git and GitHub
Get Started