Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grvcoelho/tms.fish
A fish plugin to manage git projects as tmux sessions
https://github.com/grvcoelho/tms.fish
fish fish-plugin fish-shell fisher shell tmux
Last synced: about 1 month ago
JSON representation
A fish plugin to manage git projects as tmux sessions
- Host: GitHub
- URL: https://github.com/grvcoelho/tms.fish
- Owner: grvcoelho
- License: apache-2.0
- Created: 2024-10-02T21:04:40.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-10-03T19:32:12.000Z (4 months ago)
- Last Synced: 2024-12-30T18:07:47.355Z (about 1 month ago)
- Topics: fish, fish-plugin, fish-shell, fisher, shell, tmux
- Language: Shell
- Homepage:
- Size: 7.81 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# tms.fish
A fish-shell plugin for managing git projects as tmux sessions
## What is tms.fish?
tms.fish is a Fish plugin that works as a tmux session manager. It's inspired by [ThePrimeagen's tmux-sessionizer](https://github.com/ThePrimeagen/.dotfiles/blob/602019e902634188ab06ea31251c01c1a43d1621/bin/.local/scripts/tmux-sessionizer) but extends the functionality by integrating with [ghq](https://github.com/x-motemen/ghq) for a seamless git repository management.
- **Quick Session Management**: Create or switch tmux sessions for git projects
- **ghq Integration**: Navigate projects across your filesystem
- **Fuzzy Finding**: Select projects quickly with fzf
- **Auto-cloning**: Clone non-existent repositories automatically
- **Consistent Naming**: Generate uniform session names from repo names
- **Smart Session Handling**: Switch to existing sessions or create new ones## Installation
Using [fisher](https://github.com/jorgebucaran/fisher):
```fish
fisher install grvcoelho/tms.fish
```### Requirements
- [ghq](https://github.com/x-motemen/ghq) A Git repository management tool for organizing and accessing your repositories
- [fzf](https://github.com/junegunn/fzf) A command-line fuzzy finder for quickly searching and selecting items from a list## Usage
```fish
# Open fzf to select a repository from your ghq list
$ tms# Clone the repo if it doesn't exist, then open a tmux session for it
$ tms username/repo# Navigate to a specific directory and create/switch to a tmux session
$ tms ~/path/to/directory# Fuzzy search for a repository (just like z or fzf)
$ tms partial_repo_name
```## Other Work
- [tmux-sessionizer](https://github.com/jrmoulton/tmux-sessionizer): A similar rust tool