(noun) : directed momentum.
Directory jumper using frecency. Type directory fragments, land where you meant.
projects # jumps to ~/code/projects
gmp # jumps to ~/code/gump (fuzzy)
doc my # jumps to ~/documents/myfiles (multi-term)
No command prefix required.
Homebrew
brew install tenseleyFlow/tap/gumpAUR
yay -S gumpFrom source
cargo build --release
cp target/release/gump ~/.local/bin/Add to shell rc file:
Bash (~/.bashrc)
eval "$(gump init bash)"Zsh (~/.zshrc)
eval "$(gump init zsh)"Fish (~/.config/fish/config.fish)
gump init fish | sourceRestart shell or source the file.
Just type where you want to go:
projects # jumps to ~/code/projects
doc # jumps to ./Documents (fuzzy CWD match)
gmp # jumps to ~/code/gump (fuzzy database match)
conf fish # jumps to ~/.config/fish (multi-term)Or use the g command:
g foo # jump to best match for "foo"
g # go home
g - # go back
gi foo # interactive selection with fzfResolution order:
- Existing commands/aliases/builtins
- Exact directory in CWD
- Fuzzy match against CWD contents
- Fuzzy match against database
Directories are learned automatically as you cd around.
gump add <path> # manually add directory
gump remove <path> # remove from database
gump list # show all entries
gump list --score # show entries with scores
gump query <terms> # print best match (for scripts)
gump clean # remove non-existent directories
gump import # import from zoxide/autojump/z/fasd
gump edit # edit database as JSON
gump init bash --cmd j # use 'j' instead of 'g'
gump init bash --hook pwd # only track on directory change (not every prompt)
gump init bash --no-cmd # skip g/gi aliases, keep no-prefix jumping| Variable | Default | Description |
|---|---|---|
GUMP_DATA_DIR |
~/.local/share/gump |
Database location |
GUMP_MAXAGE |
10000 |
Max total score before aging |
GUMP_EXCLUDE |
- | Colon-separated paths to ignore |
- Shell hook records directories on
cd - Frecency score = access count × recency multiplier
- Query matches terms against paths using fuzzy matching
- Unknown commands are intercepted and checked against the database