Krolyxon
Commit 88bcaeb

Branches

Refs →

dotfiles-x11.configlflfrc

115 lines · 2.7 KB

1# Basic vars
2set shellopts '-eu'
3set ifs "\n"
4set scrolloff 10
5set icons
6set hidden true
7set drawbox true
8set period 1
9set cleaner '~/.config/lf/cleaner'
10set previewer '~/.config/lf/scope'
11set autoquit on
12
13# cmds/functions
14cmd open ${{
15 case $(file --mime-type "$(readlink -f $f)" -b) in
16 application/vnd.openxmlformats-officedocument.spreadsheetml.sheet) localc $fx ;;
17 image/vnd.djvu|application/pdf|application/octet-stream|application/postscript) setsid -f zathura $fx >/dev/null 2>&1 ;;
18 text/*|application/json|inode/x-empty) $EDITOR $fx;;
19 image/x-xcf) setsid -f gimp $f >/dev/null 2>&1 ;;
20 image/svg+xml) display -- $f ;;
21 image/*) rotdir $f | grep -i "\.\(png\|jpg\|jpeg\|gif\|webp\|avif\|tif\|ico\)\(_large\)*$" |
22 setsid -f nsxiv -aio 2>/dev/null | while read -r file; do
23 [ -z "$file" ] && continue
24 lf -remote "send select \"$file\""
25 lf -remote "send toggle"
26 done &
27 ;;
28 audio/*) mpv --audio-display=no $f ;;
29 video/*) setsid -f mpv $f -quiet >/dev/null 2>&1 ;;
30 application/pdf|application/vnd*|application/epub*) setsid -f zathura $fx >/dev/null 2>&1 ;;
31 application/pgp-encrypted) $EDITOR $fx ;;
32 *) for f in $fx; do setsid -f $OPENER $f >/dev/null 2>&1; done;;
33 esac
34}}
35
36cmd mkdir $mkdir -p "$(echo $* | tr ' ' '\ ')"
37
38cmd extract ${{
39 clear; tput cup $(($(tput lines)/3)); tput bold
40 set -f
41 printf "%s\n\t" "$fx"
42 printf "extract?[y/N]"
43 read ans
44 [ $ans = "y" ] && ext $fx
45}}
46
47cmd delete ${{
48 clear; tput cup $(($(tput lines)/3)); tput bold
49 set -f
50 printf "%s\n\t" "$fx"
51 printf "delete?[y/N]"
52 read ans
53 [ $ans = "y" ] && rm -rf -- $fx
54}}
55
56cmd moveto ${{
57 clear; tput cup $(($(tput lines)/3)); tput bold
58 set -f
59 clear; echo "Move to where?"
60 dest=$(cat ~/.config/lf/mvdirs | fzf )
61 for x in $fx; do
62 eval mv -iv \"$x\" \"$dest\"
63 done &&
64 notify-send "🚚 File(s) moved." "File(s) moved to $dest."
65}}
66
67cmd genwall "$1"
68
69# Bindings
70map <c-f> $lf -remote "send $id select \"$(fzf)\""
71map D delete
72map p paste
73map dd cut
74map M moveto
75map yy copy
76map H top
77map E extract
78map <c-n> push :mkdir<space>
79map <c-r> reload
80map <c-s> set hidden!
81map <enter> shell
82map x $$f
83map X !$f
84map o &mimeopen $f
85map O $mimeopen --ask $f
86
87map A rename # at the very end
88map c push A<c-u> # new rename
89map I push A<c-a> # at the very beginning
90map i push A<a-b><a-b><a-f> # before extension
91map a push A<a-b> # after extension
92map br $vimv
93map bg $genwall $f
94
95map <c-e> down
96map <c-y> up
97map V push :!nvim<space>
98
99map W $setsid -f $TERMINAL >/dev/null 2>&1
100
101map Y $printf "%s" "$fx" | xclip -selection clipboard
102
103# movement
104map gd cd ~/dox/
105map gD cd ~/dl/
106map gp cd ~/pix
107map gc cd ~/.config
108map gC cd ~/.cache
109map gr cd ~/code/repos
110map gv cd ~/vids/
111map gm cd ~/media/movies
112map gM cd ~/media
113map gn cd ~/music
114map gb cd ~/.local/bin
115map gs cd ~/.local/share