From 06d1242317f7159ccf3014f0a1480e7c56236ebb Mon Sep 17 00:00:00 2001 From: Mohammad Reza Karimi Date: Sun, 4 Jan 2026 21:28:36 -0500 Subject: add all sorts of things --- lf/dot-config/lf/lfrc | 59 ++++++++++++++++++++++++++++++--------------- lf/dot-config/lf/shortcutrc | 5 ++++ 2 files changed, 44 insertions(+), 20 deletions(-) create mode 100644 lf/dot-config/lf/shortcutrc (limited to 'lf/dot-config') diff --git a/lf/dot-config/lf/lfrc b/lf/dot-config/lf/lfrc index 226e1aa..7e3eefe 100644 --- a/lf/dot-config/lf/lfrc +++ b/lf/dot-config/lf/lfrc @@ -25,27 +25,16 @@ cmd open ${{ cmd mkdir $mkdir -p "$@" 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" ] && { - case $fx in - *.tar.bz2) tar xjf $fx ;; - *.tar.gz) tar xzf $fx ;; - *.bz2) bunzip2 $fx ;; - *.rar) unrar e $fx ;; - *.gz) gunzip $fx ;; - *.tar) tar xf $fx ;; - *.tbz2) tar xjf $fx ;; - *.tgz) tar xzf $fx ;; - *.zip) unzip $fx ;; - *.Z) uncompress $fx ;; - *.7z) 7z x $fx ;; - *.tar.xz) tar xf $fx ;; - esac - } + filelist="" + while IFS= read -r filename; do + filelist+=" $(basename "$filename")" + done <<< "$fx" + if ouch decompress $fx; then + lf -remote "send $id echomsg \"Extracted"$filelist" with ouch.\"" + else + lf -remote "send $id echoerr \"Cannot extract"$filelist" with ouch.\"" + fi }} cmd quit-and-cd &{{ @@ -70,6 +59,36 @@ cmd dragon ${{ IFS="$(printf '\n\t')"; dragon-drop $fx }} +cmd git_branch ${{ + git branch | fzf | xargs git checkout + pwd_shell="$(pwd | sed 's/\\/\\\\/g;s/"/\\"/g')" + lf -remote "send $id updir; cd \"$pwd_shell\"" +}} + +map gb :git_branch +map gp $clear; git pull --rebase || true; echo "press ENTER"; read ENTER +map gs $clear; git status; echo "press ENTER"; read ENTER +map gl $clear; git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit; echo "press ENTER"; read ENTER + +cmd fzf_search ${{ + cmd="rg --column --line-number --no-heading --color=always --smart-case" + fzf --ansi --disabled --layout=reverse --header="Search in files" --delimiter=: \ + --bind="start:reload([ -n {q} ] && $cmd -- {q} || true)" \ + --bind="change:reload([ -n {q} ] && $cmd -- {q} || true)" \ + --bind='enter:become(lf -remote "send $id select \"$(printf "%s" {1} | sed '\''s/\\/\\\\/g;s/"/\\"/g'\'')\"")' \ + --preview-window='+{2}-/2' \ + --preview='bat --color=always --highlight-line={2} -- {1}' +}} +map gr :fzf_search + + +cmd stwify ${{ + pkg="$1" + IFS="$(printf '\n\t')"; stowify $fx $pkg + lf -remote "send $id unselect;" +}} + +map S push :stwify"" map Y $printf "%s" "$fx" | wl-copy map push :mkdir"" map D delete diff --git a/lf/dot-config/lf/shortcutrc b/lf/dot-config/lf/shortcutrc new file mode 100644 index 0000000..29fddd6 --- /dev/null +++ b/lf/dot-config/lf/shortcutrc @@ -0,0 +1,5 @@ +map Ecala $$EDITOR "/home/moreka/.config/alacritty/alacritty.toml" +map Ecgho $$EDITOR "/home/moreka/.config/ghostty/config" +map Ecvim $$EDITOR "/home/moreka/.config/nvim/init.lua" +map Echy $$EDITOR "/home/moreka/.config/hypr/hyprland.conf" +map Ecway $$EDITOR "/home/moreka/.config/waybar/config.jsonc" -- cgit v1.2.3-71-gdd5e