fzfX multiplies the power of fzf by providing zero-configuration battle-tested applications to common use cases of fzf. It delivers the power of finding, previewing, editing and managing any file in few key strokes.
It is agnostic and does not require a specific terminal emulator, desktop environment or text editor. It will make use of improved utils that are becoming standard at Linux desktop environments, like rg, fd, bat, rga, grc and many others. But it will sensibly fallback to their classic UNIX counterparts like grep, cat and ls when they are not available.
fzfx
By default it will use $HOME
as the search path but that can be overrided or disabled entirely.
Optionally the search path can be inputted in the command. Which will also work for other modes.
fzfx <searchPath>
fzfx hidden
By default hidden files, cache/vendor directories like node_modules
(see /usr/share/fzfx/ignore) are ignored and .gitignore
files inside directories are followed.
fzfx full
Note: Supports regular expressions.
fzfx cd
To change dir with ENTER create an alias:
alias fcd='cd "$(fzfx cd)"'
Note: Needed because a child shell can't act on its parent.
If you don't know how aliases work, try using this configuration as an example.
Note: Aliases must be put or be sourced in .profile
or RC files like .bashrc
so to work persistently.
fzfx cp
fzfx mv
fzfx ps
# markdown notes
fzfx md
# pdf, ps and eps
fzfx pdf
# pictures
fzfx pic
# audio and videos
fzfx av
Install through the AUR.
Edit $XDG_CONFIG_HOME/fzfx/config
- Set
searchPath
to override the global search path. - Set
searchLocal=true
to always search locally. - Set
editor
to override the editor used by fzfx. - Set
ignoreFile
to override the default ignore file (.gitignore style). - Set
defaultPreview
,pdfView
,avView
,picView
to whatever you prefer.
Note: All configurations are optional.
Note: $root is still supported but support will be dropped in next release. So update your config file.