aboutsummaryrefslogtreecommitdiff
path: root/config/lf/lfrc
blob: 671afbca93b119bd500caee06ea28e81ca6b7864 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
set hidden true
set drawbox true
set icons true
set ignorecase true
set relativenumber true
set ratios 2:3
set dirpreviews false

set preview true
set previewer ~/.config/lf/previewer.sh
set cursorpreviewfmt "\033[7m"

cmd open_internal ${{
    case $(file --mime-type "$f" -bL) in
        text/*|application/json) $EDITOR "$fx" ;;
        video/*|application/pdf) ~/scripts/bin/open "$f" >/dev/null 2>&1 & ;;
        *) for f in "$fx"; do
          ~/scripts/bin/open "$f" 2>/dev/null
        done ;;
    esac;
    disown 2>/dev/null;
}}
cmd open open_internal

cmd mkdir ${{
  printf "Directory Name: "
  read ans
  mkdir $ans
}}

cmd mkfile ${{
  printf "File Name: "
  read ans
  $EDITOR $ans
}}

cmd move_to_trash ${{
  mkdir -p /tmp/.trash-cache/
  echo "$fx" | while read file; do
    mv "$file" /tmp/.trash-cache/
  done;
}}

cmd show_images ${{
  if [ "$(echo "$fx" | wc -l)" = "1" ]; then
    sxiv $(dirname "$fx") &
  else
    sxiv $fx &
  fi;
}}

cmd unzip_zip ${{
  unzip $f;
}}

cmd unzip_7z ${{
  nix-shell -p p7zip --run '7z x $f';
}}

cmd unzip_rar ${{
  NIXPKGS_ALLOW_UNFREE=1 nix-shell -p unrar --run 'unrar x $f';
}}

# }}}

# Unset old keys {{{
  map w
  map m
  map n
  map "'"
  map '"'
  map d}}
  map c
  map e
  map d
# }}}

# Mutations
map dd      move_to_trash
map p       paste
map x       cut
map y       copy
map mf      mkfile
map md      mkdir

# View changes
map <enter> open_internal
map <c-o>   open_internal
map si      show_images
map .       :set hidden!
map st      :set sortby time; set info time
map ss      :set sortby size; set info size


# Traversal keys
map gdl   cd ~/Downloads/dl
map gdm   cd ~/Downloads/music
map gdv   cd ~/dev
map gdp   cd ~/dump
map gp    cd ~/Pictures
map gmnt  cd /run/media/imsohexy
map gdc   cd ~/Documents