Krolyxon
Commit 73a26ed

Branches

Refs →

dotfiles-x11.configlflfrc

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