summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZachIR <zachir@librem.one>2026-01-25 10:55:46 -0600
committerZachIR <zachir@librem.one>2026-01-25 10:55:46 -0600
commit9d01d57722154ba3b9869cbdb04806336cc58552 (patch)
treefc2916ec976d68316351cf06c6c8fae0b09b660a
parent02b699ba5b029fc4501318000278209df07af35f (diff)
Override lf paste optionHEADmaster
-rw-r--r--lf/lfrc24
1 files changed, 24 insertions, 0 deletions
diff --git a/lf/lfrc b/lf/lfrc
index 8473fd8..cbe77a4 100644
--- a/lf/lfrc
+++ b/lf/lfrc
@@ -30,6 +30,30 @@ cmd open ${{
esac
}}
+# Override paste command
+cmd paste ${{
+ while read -r line; do
+ set -- "$@" "$line"
+ done < ~/.local/share/lf/files
+ mode="$1"
+ shift
+ case "$mode" in
+ copy)
+ echo "lf-paste in ${PWD}: rsync -av --backup -- $@ ." >> ~/.cache/lf.log
+ rsync -av --backup --progress -- "$@" . |
+ stdbuf -i0 -o0 -e0 tr '\r' '\n' |
+ while IFS= read -r line; do
+ lf -remote "send $id echo $line"
+ done
+ ;;
+ move)
+ echo "lf-paste in ${PWD}: mv -n -- $@ ." >> ~/.cache/lf.log
+ mv -n -- "$@" .;;
+ esac
+ rm ~/.local/share/lf/files
+ lf -remote "send clear"
+}}
+
cmd execute ${{ exec "$f" }}
cmd vimv ${{ exec vimv }}