Fasder is a modern reimagining of clvv/fasd that offers zoxide-style “frecent” (frequent + recent) access to files and directories.
Fasder tracks your most-used files and directories and lets you access them with minimal keystrokes. Need to reopen your .zshrc
? Just type v zsh
from any directory.
v def conf # => vim /some/awkward/path/to/type/default.conf
j abc # => cd /hell/of/a/awkward/path/to/get/to/abcdef
m movie # => mplayer /path/to/awesome_movie.mp4
vim `f rc lo` # => vim /etc/rc.local
brew install wyne/tap/fasder
echo 'eval "$(fasder --init auto)"' >> ~/.zshrc
brew install wyne/tap/fasder fzf
echo 'eval "$(fasder --init auto aliases)"' >> ~/.zshrc
fasd
:cp ~/.fasd ~/.fasder
Pass aliases
to init, example: --init auto aliases
, to install these aliases:
a # list files and directories
d # directories only
f # files only
v, vv # open file in $EDITOR, vv for interactive
j, jj # cd, jj for interactive
v def conf # vim /awkward/path/default.conf
j abc # cd /awkward/path/abcdef
vv foo # Interactive file selection with fzf
jj foo # Interactive directory navigation with fzf
The provided v
and vv
commands execute with program set in $EDITOR
.
Configure with: export EDITOR=nvim
.
fasder {query} # files and directories
fasder -d {query} # directories only
fasder -f {query} # files only
{query} can be left empty to return all results
Example composition
alias a='fasder' # both files and directories
alias d='fasder -d' # directories only
alias f='fasder -f' # files only
alias v='f -e $EDITOR' # open file with $EDITOR
vim `f rc lo` # on-the-fly command
See shell.go for provided aliases.
fasder [options] [query ...]
options:
--init Initialize fasder. Args: auto aliases
-d, --directories Dirs only
-e, --exec {cmd} Execute provided command against best match
-f, --files Files only
-h, --help Show this message
-l, --list List only. Omit rankings
-R, --reverse Reverse sort. Useful to pipe into fzf
-s, --s Show rank scores
-v, --version View version
Matching works similarly to zoxide and obeys the following rules:
conf
will match workspace/conf
but not conf/project
conf yml
will match config.yml
or config/init.yml
conf tmu
will match config/tmux
but not tmux/config.yml
.work sub
will match workspace/project/sub
zoxide
is great for directories. Fasder goes further—giving you quick access to both directories and files.
fasd
inspired fasder
, but it’s now archived and written as a single, dense shell script. Fasder is built in a modern language, making it easier to read, maintain, and expand for more use cases.
brew install wyne/tap/fasder
)fasd
format in ~/.fasder
-R
reverse-l
list paths without ranks-f
files-e
execute-t
recent access only-[0-9]
nth entry-b
only use backend-B
additional backend-i
interactive