tmux session manager powered by nim
Find a file
2024-09-13 10:04:24 -05:00
.github/workflows use v4 for upload-artifact 2024-09-13 10:04:24 -05:00
nix chore: use nim2nix on nix 2024-09-05 13:17:50 -05:00
src fix: don't extend beyond necessary max height 2024-03-20 12:21:52 -05:00
.forge.cfg build: enter atlas 2023-11-10 12:22:49 -06:00
.gitignore build: add nix flake 2024-03-18 16:56:54 -05:00
config.nims fix: update bbansi version to stop swallowing characters 2024-03-19 12:44:25 -05:00
nimble.lock fix: update illwill 2024-08-16 12:06:56 -05:00
README.md feat: add configurable max height 2023-11-10 13:51:00 -06:00
tsm.nimble fix: update illwill 2024-08-16 12:06:56 -05:00

Tmux session manager (tsm)

Install

There are pre-built binaries available in Releases including a nightly release.

w/eget:

eget daylinmorgan/tsm
eget daylinmorgan/tsm --pre-release # for nightly build

w/nimble:

nimble install https://github.com/daylinmorgan/tsm

Usage

To configure tsm export the below environment variables:

TSM_DIRS: a colon-delimited set of parent directories to find projects.
TSM_HEIGHT: integer specifying number of rows in terminal (default: 15)

For example in your rc file:

export TSM_DIRS="$HOME/projects/personal:$HOME/projects/work"

To make full use of tsm you should also add a new key binding to your tmux.conf. For example, you can bind the f key to show a popup with tsm:

bind f display-popup \
  -h 60% -w 60% \
  -E "tsm"

Prior Art