What packages should I install

  • bat
  • delta
  • fzf
  • fzf-git
  • kube.fzf
  • nvim
  • rg (ripgrep)
  • rg.fzf
  • z

Bat

Bat is something or a cat and less replacement. Making files more readable and adding some color. Either run bat <filename> or <stuff> | bat.

Delta

Delta is a diff-tool. I mainly use it for git.

After installing you can set the pager in your git config.

git config --global core.pager delta

I have the following in my .bashrc:

if type delta &> /dev/null; then
    export DELTA_FEATURES="+side-by-side hyperlinks"
fi

fzf

fzf is a command-line fuzzy finder. It’s great to integrate with other tools in order to eliminate terminal noise.

After installing it you should add it to your zshrc/bashrc:

if type fzf &> /dev/null; then
    if [[ -n ${BASH_VERSION} ]]; then
        eval "$(fzf --bash)"
    elif [[ -n ${ZSH_VERSION} ]]; then
        source <(fzf --zsh)
    fi
fi

fzf-git

An extension for git and fzf. Gives the following shortcuts:

* CTRL-G ? to show this list
* CTRL-G CTRL-F for Files
* CTRL-G CTRL-B for Branches
* CTRL-G CTRL-T for Tags
* CTRL-G CTRL-R for Remotes
* CTRL-G CTRL-H for commit Hashes
* CTRL-G CTRL-S for Stashes
* CTRL-G CTRL-L for reflogs
* CTRL-G CTRL-W for Worktrees
* CTRL-G CTRL-E for Each ref (git for-each-ref)

Terminal shortcuts

* ALT-C is a fuzzy `cd`
* CTRL-R is replaced with a fzf version.
* CTRL-T is a fuzzy file finder (see below)
* `**<TAB>` in terminal is replaced with a fuzzy search

Regarding fuzzy file finder: If you’re in a folder and want to use nvim <filename> but the file might be in a subfolder, you can type nvim <CTRL-T>. Then you can select your file, which will add its path to the commandline after nvim. Then you can press enter. Note that pressing TAB and SHIFT+TAB selects and unselects so you can select several files.

Adding fuzzy finding to scripts

Read the official homepage