tmux session manager powered by nim
  • Nim 92%
  • Nix 8%
Find a file
2026-04-08 11:58:42 -04:00
.github/workflows use nim latest 2025-10-10 13:44:04 -04:00
nix update hwylterm 2026-04-06 17:02:31 -04:00
src nimporter the sorter 2026-04-08 11:58:42 -04:00
.forge.cfg build: enter atlas 2023-11-10 12:22:49 -06:00
.gitignore switch to atlas 2025-10-21 12:42:07 -04:00
atlas.lock update hwylterm 2026-04-06 17:02:31 -04:00
config.nims update deps 2026-02-25 13:49:57 -05:00
README.md refactor!: use ini/cfg 2024-09-14 10:15:14 -05:00
todo.md add a todo 2025-10-15 11:20:41 -04:00
tsm.nimble update hwylterm 2026-04-06 17:02:31 -04: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_PATHS: 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_PATHS="$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