Smarter, faster file navigation for zsh.
Hit Ctrl+T and browse files and directories with fzf — navigate into folders with arrow keys, jump home with ~, and insert clean paths into your command line. All without leaving zsh.
Stock fzf Ctrl+T |
zshift |
|---|---|
| Flat list, search only | Browse directories with Shift+arrows |
| No visual distinction | Cyan = directory, gray = file |
| Retype path to go home | ~ key jumps home instantly |
| Long absolute paths | Auto-inserts short ~/… or ./… notation |
- Shift+← / Shift+→ — navigate directories interactively
~key — jump to home directory instantly- Multi-select —
Tabto pick multiple files, insert all at once - Paths under
~/are inserted with~notation preserved - Paths under current directory are inserted with
./prefix - Permission errors shown as pink inline warnings
brew install ayumuwall/tap/zshiftThen add to your ~/.zshrc:
source $(brew --prefix)/share/zshift/zshift.zshThen reload your shell:
source ~/.zshrczinit light ayumuwall/zshift[plugins.zshift]
github = "ayumuwall/zshift"git clone https://github.com/ayumuwall/zshift.git ~/.zsh/zshift
echo 'source ~/.zsh/zshift/zshift.zsh' >> ~/.zshrcPress Ctrl+T anywhere on the command line to browse the current directory:
Documents/ # cyan = directory
Downloads/
./README.md # gray ./ = file
./setup.sh
Shift+←→: navigate ~: home Enter: confirm
| Key | Action |
|---|---|
Shift+→ |
Enter selected directory |
Shift+← |
Go to parent directory |
~ |
Jump to home directory |
Tab |
Toggle multi-select |
Enter |
Confirm and insert into command line |
Esc |
Cancel |
zshift initializes zoxide in zi (interactive) mode. Just type z to fuzzy-select from your recently visited directories.
- If you've already typed a partial path,
Ctrl+Tstarts browsing from there:vim src/<Ctrl+T> # opens src/ contents - The original fzf
Ctrl+Tis remapped toCtrl+G, so it's always available.
- macOS — fully supported
- Linux — requires
statadaptation (PRs welcome)