From 7538e8c6c5580354719955234033cfaf0b70c46c Mon Sep 17 00:00:00 2001 From: Solomon Laing Date: Wed, 23 Apr 2025 14:08:49 +0930 Subject: [PATCH] many little changes --- .config/lf/lfrc | 47 +++++++++++++------ .config/lf/scope | 57 ------------------------ .config/nvim/lua/lazyvim/plugins/cmp.lua | 5 ++- .config/shell/aliasrc | 2 +- .config/shell/profile | 1 + .config/zsh/.zshrc | 6 +-- .local/bin/dmenuprompt | 4 +- .local/bin/dwm-config | 3 ++ 8 files changed, 47 insertions(+), 78 deletions(-) delete mode 100755 .config/lf/scope create mode 100755 .local/bin/dwm-config diff --git a/.config/lf/lfrc b/.config/lf/lfrc index 1bb892d..93512d9 100644 --- a/.config/lf/lfrc +++ b/.config/lf/lfrc @@ -14,12 +14,13 @@ set previewer ctpv set cleaner ctpvclear &ctpv -s $id &ctpvquit $id +cmd on-quit $ctpv -e $id # 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 ;; + image/vnd.djvu|application/pdf|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 ;; @@ -34,8 +35,14 @@ cmd open ${{ 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;; + application/vnd.openxmlformats-officedocument.wordprocessingml.document|application/vnd.oasis.opendocument.text|application/vnd.openxmlformats-officedocument.spreadsheetml.sheet|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 ;; + application/octet-stream) case ${f##*.} in + doc|docx|xls|xlsx|odt|ppt|pptx) setsid -f libreoffice $fx >/dev/null 2>&1 ;; + ghw) setsid -f gtkwave $f >/dev/null 2>&1 ;; + ts) setsid -f mpv $f -quiet >/dev/null 2>&1 ;; + *) setsid -f zathura $fx >/dev/null 2>&1 ;; + esac ;; + *) for f in $fx; do setsid -f $OPENER $f >/dev/null 2>&1; done;; esac }} @@ -75,25 +82,39 @@ cmd delete ${{ }} 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|')" && + clear; tput cup $(($(tput lines)/3)) + dest=$(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' "${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs" | fzf --layout=reverse --height 40% --prompt 'Move to where? ' | sed 's|~|$HOME|') + [ -z "$dest" ] && exit + destpath=$(eval printf '%s' \"$dest\") + clear; tput cup $(($(tput lines)/3)); tput bold + echo "From:" + echo "$fx" | sed 's/^/ /' + printf "To:\n %s\n\n\tmove?[y/N]" "$destpath" + read -r ans + [ "$ans" != "y" ] && exit for x in $fx; do - eval mv -iv \"$x\" \"$dest\" + mv -iv "$x" "$destpath" done && - notify-send "🚚 File(s) moved." "File(s) moved to $dest." + notify-send "🚚 File(s) moved." "File(s) moved to $destpath." }} 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|')" && + clear; tput cup $(($(tput lines)/3)) + dest=$(sed -e 's/\s*#.*//' -e '/^$/d' -e 's/^\S*\s*//' "${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs" | fzf --layout=reverse --height 40% --prompt 'Copy to where? ' | sed 's|~|$HOME|') + [ -z "$dest" ] && exit + destpath=$(eval printf '%s' \"$dest\") + clear; tput cup $(($(tput lines)/3)); tput bold + echo "From:" + echo "$fx" | sed 's/^/ /' + printf "To:\n %s\n\n\tcopy?[y/N]" "$destpath" + read -r ans + [ "$ans" != "y" ] && exit for x in $fx; do - eval cp -ivr \"$x\" \"$dest\" + cp -ivr "$x" "$destpath" done && - notify-send "📋 File(s) copied." "File(s) copies to $dest." + notify-send "📋 File(s) copied." "File(s) copied to $destpath." }} cmd trash ${{ diff --git a/.config/lf/scope b/.config/lf/scope deleted file mode 100755 index 8265a87..0000000 --- a/.config/lf/scope +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh - -# File preview handler for lf. - -set -C -f -IFS="$(printf '%b_' '\n')"; IFS="${IFS%_}" - -image() { - if [ -f "$1" ] && [ -n "$DISPLAY" ] && [ -z "$WAYLAND_DISPLAY" ] && command -V ueberzug >/dev/null 2>&1; then - printf '{"action": "add", "identifier": "PREVIEW", "x": "%s", "y": "%s", "width": "%s", "height": "%s", "scaler": "contain", "path": "%s"}\n' "$4" "$5" "$(($2-1))" "$(($3-1))" "$1" > "$FIFO_UEBERZUG" - else - mediainfo "$6" - fi -} - -# Note that the cache file name is a function of file information, meaning if -# an image appears in multiple places across the machine, it will not have to -# be regenerated once seen. - -case "$(file --dereference --brief --mime-type -- "$1")" in - image/avif) CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)" - [ ! -f "$CACHE" ] && convert "$1" "$CACHE.jpg" - image "$CACHE.jpg" "$2" "$3" "$4" "$5" "$1" ;; - image/vnd.djvu) - CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)" - [ ! -f "$CACHE" ] && djvused "$1" -e 'select 1; save-page-with /dev/stdout' | convert -density 200 - "$CACHE.jpg" > /dev/null 2>&1 - image "$CACHE.jpg" "$2" "$3" "$4" "$5" "$1" ;; -image/svg+xml) - CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)" - [ ! -f "$CACHE" ] && inkscape --convert-dpi-method=none -o "$CACHE.png" --export-overwrite -D --export-png-color-mode=RGBA_16 "$1" - image "$CACHE.png" "$2" "$3" "$4" "$5" "$1" - ;; - image/*) image "$1" "$2" "$3" "$4" "$5" "$1" ;; - text/html) lynx -width="$4" -display_charset=utf-8 -dump "$1" ;; - text/troff) man ./ "$1" | col -b ;; - text/* | */xml | application/json | application/x-ndjson) bat -p --theme ansi --terminal-width "$(($4-2))" -f "$1" ;; - audio/* | application/octet-stream) mediainfo "$1" || exit 1 ;; - video/* ) - CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)" - [ ! -f "$CACHE" ] && ffmpegthumbnailer -i "$1" -o "$CACHE" -s 0 - image "$CACHE" "$2" "$3" "$4" "$5" "$1" - ;; - */pdf) - CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)" - [ ! -f "$CACHE.jpg" ] && pdftoppm -jpeg -f 1 -singlefile "$1" "$CACHE" - image "$CACHE.jpg" "$2" "$3" "$4" "$5" "$1" - ;; - */epub+zip|*/mobi*) - CACHE="${XDG_CACHE_HOME:-$HOME/.cache}/lf/thumb.$(stat --printf '%n\0%i\0%F\0%s\0%W\0%Y' -- "$(readlink -f "$1")" | sha256sum | cut -d' ' -f1)" - [ ! -f "$CACHE.jpg" ] && gnome-epub-thumbnailer "$1" "$CACHE.jpg" - image "$CACHE.jpg" "$2" "$3" "$4" "$5" "$1" - ;; - application/*zip) atool --list -- "$1" ;; - *opendocument*) odt2txt "$1" ;; - application/pgp-encrypted) gpg -d -- "$1" ;; -esac -exit 1 diff --git a/.config/nvim/lua/lazyvim/plugins/cmp.lua b/.config/nvim/lua/lazyvim/plugins/cmp.lua index 8aef144..c67e08e 100644 --- a/.config/nvim/lua/lazyvim/plugins/cmp.lua +++ b/.config/nvim/lua/lazyvim/plugins/cmp.lua @@ -24,7 +24,9 @@ return { -- 'super-tab' for mappings similar to vscode (tab to accept, arrow keys to navigate) -- 'enter' for mappings similar to 'super-tab' but with 'enter' to accept -- See the full "keymap" documentation for information on defining your own keymap. - keymap = { preset = 'enter' }, + keymap = { + preset = 'enter', + }, appearance = { -- Sets the fallback highlight groups to nvim-cmp's highlight groups @@ -40,7 +42,6 @@ return { -- elsewhere in your config, without redefining it, due to `opts_extend` sources = { default = { 'lsp', 'path', 'snippets', 'buffer' }, - cmdline = {} }, }, opts_extend = { "sources.default" } diff --git a/.config/shell/aliasrc b/.config/shell/aliasrc index dd37d68..8b49cb2 100644 --- a/.config/shell/aliasrc +++ b/.config/shell/aliasrc @@ -65,7 +65,7 @@ alias \ cdc="cd && clear" \ \?="duck" -# git aliases +# git aliases alias \ gst="git status" \ ga.="git add ." \ diff --git a/.config/shell/profile b/.config/shell/profile index eae9aba..5dcd9e9 100644 --- a/.config/shell/profile +++ b/.config/shell/profile @@ -63,6 +63,7 @@ export ZK_NOTEBOOK_DIR="$HOME/notes" export REPOS="$HOME/repos" export GITUSER="inkletblot" export NOTE_DIR="$HOME/notes/" +export DWM_DIR="$REPOS/gitlab.inkletblot.com/inkletblot/dwm-inkletblot/" # This is something luke smith has in his profile (which I have stolen, it's nice but # doesn't work very nicely with my login manager, lightdm, and I prefer to just run diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc index 1df4674..b24b733 100644 --- a/.config/zsh/.zshrc +++ b/.config/zsh/.zshrc @@ -37,10 +37,10 @@ bindkey -M menuselect 'l' vi-forward-char bindkey -M menuselect 'j' vi-down-line-or-history bindkey -v '^?' backward-delete-char -# use lf to switch directories and bind it to ctrl-o -lfcd() { +# Use lf to switch directories +lfcd () { tmp="$(mktemp -uq)" - trap 'rm -f $tmp >/dev/null 2>&1' HUP INT QUIT TERM PWR EXIT + trap 'rm -f $tmp >/dev/null 2>&1 && trap - HUP INT QUIT TERM PWR EXIT' HUP INT QUIT TERM PWR EXIT lf -last-dir-path="$tmp" "$@" if [ -f "$tmp" ]; then dir="$(cat "$tmp")" diff --git a/.local/bin/dmenuprompt b/.local/bin/dmenuprompt index 67c471d..539ff2f 100755 --- a/.local/bin/dmenuprompt +++ b/.local/bin/dmenuprompt @@ -10,9 +10,9 @@ if [[ -n "$3" ]] then - choice=$(echo -e "Yes\nNo" | dmenu -bw 0 -i -p "$1") + choice=$(echo -e "Yes\nNo" | dmenu -i -p "$1") else - choice=$(echo -e "No\nYes" | dmenu -bw 0 -i -p "$1") + choice=$(echo -e "No\nYes" | dmenu -i -p "$1") fi if [[ "$choice" = "Yes" ]] diff --git a/.local/bin/dwm-config b/.local/bin/dwm-config new file mode 100755 index 0000000..2d2713e --- /dev/null +++ b/.local/bin/dwm-config @@ -0,0 +1,3 @@ +#!/bin/bash + +sed -n '/static Key keys/,$p' $DWM_DIR/config.def.h | less