c08949ebd2
In the current update, the libreoffice package doesn't have any binary for libreoffice writer, calc, impress, draw, etc. So it's better to open all of the document using the 'libreoffice' binary as it can work in the old version of libreoffice as well as the new one.
133 lines
4.6 KiB
Text
133 lines
4.6 KiB
Text
# Luke's lf settings
|
|
|
|
|
|
# Note on Image Previews
|
|
# For those wanting image previews, like this system, there are four steps to
|
|
# set it up. These are done automatically for LARBS users, but I will state
|
|
# them here for others doing it manually.
|
|
#
|
|
# 1. ueberzug must be installed.
|
|
# 2. The scope file (~/.config/lf/scope for me), must have a command similar to
|
|
# mine to generate ueberzug images.
|
|
# 3. A `set cleaner` line as below is a cleaner script.
|
|
# 4. lf should be started through a wrapper script (~/.local/bin/lfub for me)
|
|
# that creates the environment for ueberzug. This command can be be aliased
|
|
# in your shellrc (`alias lf="lfub") or if set to a binding, should be
|
|
# called directly instead of normal lf.
|
|
|
|
# Basic vars
|
|
set shellopts '-eu'
|
|
set ifs "\n"
|
|
set scrolloff 10
|
|
set icons
|
|
set period 1
|
|
set hiddenfiles ".*:*.aux:*.log:*.bbl:*.bcf:*.blg:*.run.xml"
|
|
set cleaner '~/.config/lf/cleaner'
|
|
set previewer '~/.config/lf/scope'
|
|
set autoquit on
|
|
|
|
# cmds/functions
|
|
cmd open ${{
|
|
case $(file --mime-type "$(readlink -f $f)" -b) in
|
|
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet) localc $fx ;;
|
|
image/vnd.djvu|application/pdf|application/octet-stream|application/postscript) setsid -f zathura $fx >/dev/null 2>&1 ;;
|
|
text/*|application/json|inode/x-empty|application/x-subrip) $EDITOR $fx;;
|
|
image/x-xcf) setsid -f gimp $f >/dev/null 2>&1 ;;
|
|
image/svg+xml) display -- $f ;;
|
|
image/*) rotdir $f | grep -i "\.\(png\|jpg\|jpeg\|gif\|webp\|avif\|tif\|ico\)\(_large\)*$" |
|
|
setsid -f sxiv -aio 2>/dev/null | while read -r file; do
|
|
[ -z "$file" ] && continue
|
|
lf -remote "send select \"$file\""
|
|
lf -remote "send toggle"
|
|
done &
|
|
;;
|
|
audio/*|video/x-ms-asf) mpv --audio-display=no $f ;;
|
|
video/*) setsid -f mpv $f -quiet >/dev/null 2>&1 ;;
|
|
application/pdf|application/vnd.djvu|application/epub*) setsid -f zathura $fx >/dev/null 2>&1 ;;
|
|
application/pgp-encrypted) $EDITOR $fx ;;
|
|
application/vnd.openxmlformats-officedocument.wordprocessingml.document|application/vnd.oasis.opendocument.text|application/vnd.openxmlformats-officedocument.spreadsheetml.sheet|application/octet-stream|application/vnd.oasis.opendocument.spreadsheet|application/vnd.oasis.opendocument.spreadsheet-template|application/vnd.openxmlformats-officedocument.presentationml.presentation|application/vnd.oasis.opendocument.presentation-template|application/vnd.oasis.opendocument.presentation|application/vnd.ms-powerpoint|application/vnd.oasis.opendocument.graphics|application/vnd.oasis.opendocument.graphics-template|application/vnd.oasis.opendocument.formula|application/vnd.oasis.opendocument.database) setsid -f libreoffice $fx >/dev/null 2>&1 ;;
|
|
*) for f in $fx; do setsid -f $OPENER $f >/dev/null 2>&1; done;;
|
|
esac
|
|
}}
|
|
|
|
cmd mkdir $mkdir -p "$(echo $* | tr ' ' '\ ')"
|
|
|
|
cmd extract ${{
|
|
clear; tput cup $(($(tput lines)/3)); tput bold
|
|
set -f
|
|
printf "%s\n\t" "$fx"
|
|
printf "extract?[y/N]"
|
|
read ans
|
|
[ $ans = "y" ] && aunpack $fx
|
|
}}
|
|
|
|
cmd delete ${{
|
|
clear; tput cup $(($(tput lines)/3)); tput bold
|
|
set -f
|
|
printf "%s\n\t" "$fx"
|
|
printf "delete?[y/N]"
|
|
read ans
|
|
[ $ans = "y" ] && rm -rf -- $fx
|
|
}}
|
|
|
|
cmd moveto ${{
|
|
clear; tput cup $(($(tput lines)/3)); tput bold
|
|
set -f
|
|
clear; echo "Move to where?"
|
|
dest="$(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | fzf | sed 's|~|$HOME|')" &&
|
|
for x in $fx; do
|
|
eval mv -iv \"$x\" \"$dest\"
|
|
done &&
|
|
notify-send "🚚 File(s) moved." "File(s) moved to $dest."
|
|
}}
|
|
|
|
cmd copyto ${{
|
|
clear; tput cup $(($(tput lines)/3)); tput bold
|
|
set -f
|
|
clear; echo "Copy to where?"
|
|
dest="$(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | fzf | sed 's|~|$HOME|')" &&
|
|
for x in $fx; do
|
|
eval cp -ivr \"$x\" \"$dest\"
|
|
done &&
|
|
notify-send "📋 File(s) copied." "File(s) copies to $dest."
|
|
}}
|
|
|
|
cmd setbg "$1"
|
|
cmd bulkrename $vidir
|
|
|
|
# Bindings
|
|
map <c-f> $lf -remote "send $id select \"$(fzf)\""
|
|
map J $lf -remote "send $id cd $(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs | fzf)"
|
|
map gh
|
|
map g top
|
|
map D delete
|
|
map E extract
|
|
map C copyto
|
|
map M moveto
|
|
map <c-n> push :mkdir<space>
|
|
map <c-r> reload
|
|
map <c-s> set hidden!
|
|
map <enter> shell
|
|
map x $$f
|
|
map X !$f
|
|
map o &mimeopen "$f"
|
|
map O $mimeopen --ask "$f"
|
|
|
|
map A rename # at the very end
|
|
map c push A<c-u> # new rename
|
|
map I push A<c-a> # at the very beginning
|
|
map i push A<a-b><a-b><a-f> # before extension
|
|
map a push A<a-b> # after extension
|
|
map B bulkrename
|
|
map b $setbg $f
|
|
|
|
map <c-e> down
|
|
map <c-y> up
|
|
map V push :!nvim<space>
|
|
|
|
map W $setsid -f $TERMINAL >/dev/null 2>&1
|
|
|
|
map Y $printf "%s" "$fx" | xclip -selection clipboard
|
|
|
|
# Source Bookmarks
|
|
source "~/.config/lf/shortcutrc"
|