How to have icons in lf file manager in fish shell
Yes, I am using the fish shell, I am weird! Sue me!
Once you know it, it's pretty easy actually. At the time of this writing, I am using kitty terminal. In order for things to work, you need to use a Nerd font in your terminal. These font packs have the icons, otherwise they function like any other font for your terminal. Many of the most popular fonts have Nerd Font variants.
Install font
Just download one font, even for testing. Unpack it to your home fonts directory, which would be either ~/.fonts or ~/.local/share/fonts.
Then run this command in your terminal, to update your font cache:
$ fc-cache -fv
Good, now you can use that font with your user.
Edit your terminal config file
Next, edit your terminal's config file, which can be different for every terminal. For kitty, you need to change every "font_family" section in your ~/.config/kitty/kitty.conf, otherwise it probably won't work.
Install fisher and the Fish lf Icons plugin
A fish plugin that adds Nerd Font icons to the lf terminal file manager.
First you need to install fisher plugin manager, by following the instructions from here.
$ curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher
Yes, this is one line. Now install the plugin via fisher:
fisher install joshmedeski/fish-lf-icons
Then make sure you set icons in your ~/.config/lf/lfrc file.
set icons true