lk/system/lf.md

1.8 KiB

title tags
lf - The Light File Manager
Documentation
File Browser

Config File

If you don't have a ~/.config/lf/lfrc file, you can probably find an example in /usr/share/examples/lf.

cp -r /usr/share/examples/lf ~/.config/

Go straight to root with two keys.

map g/ cd /

Have lf open a file with the default program when you press 'o', using the program mimeo.

map o &mimeo $f

Change that default text editor to look at the extension first.

cmd open ${{
    case $(file --mime-type $f -b) in
        application/x-sc) sc-im $fx;;
        text/html) w3m $fx;;
        text/*) $EDITOR $fx;;
        video/*) nohup mpv $fx --really-quiet >/dev/null &;;
        *) nohup $OPENER $fx >/dev/null &;;
    esac
}}

The idea here is to use the default $OPENER for lf, but first check extensions. Note the extra mpv commands to leave the video to play, without blocking the terminal.

Interesting Options

You can set the screen ratio with set ratios 1:2:3

That leaves it as a small initial pane, a medium pane, and a large pane for file previews.

Rename

The standard renaming is bad, because you have to re-type the file extension. Use this instead:

# rename current file without overwrite
cmd rename %echo 'name: ' ; read name ; extension="${f##*.}" && newname="$name.$extension"; [ "$f" = "$extension" ] && newname="$name"; [ ! -e "$newname" ] && mv "$f" "$newname" || echo file exists
map r push :rename<enter>

If you try to rename image_1.png with this command, you can type in cats, and the result will be cats.png.

Image Previews

First, install ueberzug (to show images). Then clone the lfrun repo.

git clone https://github.com/cirala/lfimg.git

cd lfimg

sudo make install