Skip to content

edr3x/tmux-sessionizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 

Repository files navigation

tmux-sessionizer

tmux-sessionizer is a tmux script that makes your workflow BLAZINGLY FAST written by ThePrimeagen

Installation

tmux-sessionizer script

  • Save the script on ~/.local/scripts/tmux-sessionizer where tmux-sessionizer is the name of the script
#!/usr/bin/env bash

if [[ $# -eq 1 ]]; then
    selected=$1
else
    selected=$(find ~/projects ~/tests -mindepth 1 -maxdepth 1 -type d | fzf)
fi

if [[ -z $selected ]]; then
    exit 0
fi

selected_name=$(basename "$selected" | tr . _)
tmux_running=$(pgrep tmux)

if [[ -z $TMUX ]] && [[ -z $tmux_running ]]; then
    tmux new-session -s $selected_name -c $selected
    exit 0
fi

if ! tmux has-session -t=$selected_name 2> /dev/null; then
    tmux new-session -ds $selected_name -c $selected
fi

if [[ -z $TMUX ]]; then
    tmux attach -t $selected_name
else
    tmux switch-client -t $selected_name
fi
  • Here change the find paths on line no. 6 to your corresponding paths to projects folder on which you want to work on

Add the script folder to your path and add the ctrl+f macro as a key binding

For Bash put this in .bashrc

PATH="$PATH":"$HOME/.local/scripts/"
bind '"\C-f":"tmux-sessionizer\n"'

For Z shell put this in .zshrc

bindkey -s ^f "tmux-sessionizer\n"

For Fish put this in config.fish

set PATH "$PATH":"$HOME/.local/scripts/"
bind \cf "tmux-sessionizer"

Add the following script on your .tmux.conf

bind-key -r f run-shell "tmux neww ~/.local/scripts/tmux-sessionizer"
  • This will open fuzzy finder then you can search for the project you want and start new tmux session on that project directory on pressing <prefix>f

For macro jump i.e. jump directly to your desired project without opening fzf

bind-key -r k run-shell "~/.local/scripts/tmux-sessionizer ~/projects/work/tmux-theme"
  • This will create a new tmux session on tmux-theme project directory when you press <prefix>k

Finally run following command on your terminal to give permission for tmux-sessionizer script to run

chmod +x ~/.local/scripts/tmux-sessionizer

Now restart your shell and enjoy the blazing fast workflow

Steps to use

  • Press ctrl+f to open the fzf finder
  • type the name of project you want to work on and press enter
  • Now you will be on the project directory on tmux session

Note:

you can see prime's video on this to understand in detail

About

instructions on using tmux-sessionizer to make project workflow blazingly fast

Topics

Resources

Stars

Watchers

Forks

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy