From 82fa8c2a2a1515dc81ca496f9449551fcd7eadd6 Mon Sep 17 00:00:00 2001 From: Q Date: Sun, 12 Nov 2023 19:48:52 +0200 Subject: [PATCH] cclip auto number --- files/cclip | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/files/cclip b/files/cclip index adf0ec6..c56f2df 100755 --- a/files/cclip +++ b/files/cclip @@ -13,6 +13,7 @@ List clipboard names: Make a link to clipboard: ${HL}$SELF c/copy filename[s] [clipboard]${NO} + -n Use a new clipboard for every link Paste files using clipboard: ${HL}$SELF p/paste [switches] [clipboardname[s]] [folder/]${NO} @@ -136,17 +137,32 @@ _copy() { if [[ $# -lt 2 ]]; then _help fi - for i in "$@"; do :; done - if [[ ! -e "$i" ]]; then - CLIPBOARD=$( echo "$i" | tr -d './' | tr -cd '[[:print:]]' ) - if [[ -z "$CLIPBOARD" ]]; then - _err "Invalid clipboard name: '$i'" - exit 1 - fi - numargs=$(( numargs - 1 )) + for (( i=2; i<=$numargs; i++ )); do + case ${!i} in + -n) AUTONUMBER=1 + if [[ "$CLIPBOARD" -eq 0 ]]; then + while [[ -e "$STORAGE/${CLIPBOARD}" ]]; do + CLIPBOARD=$(( 1 + $CLIPBOARD )) + + done + fi;; + esac + done + if [[ -z "$AUTONUMBER" ]]; then + for i in "$@"; do :;done + if [[ ! -e "$i" ]]; then + CLIPBOARD=$( echo "$i" | tr -d './' | tr -cd '[[:print:]]' ) + if [[ -z "$CLIPBOARD" ]]; then + _err "Invalid clipboard name: '$i'" + exit 1 + fi + numargs=$(( numargs - 1 )) + fi fi for (( i=2; i<=$numargs; i++ )); do - #~ name=$( basename "${!i}" | tr -c '[:alnum:],_.\n\r' "-" ) + case ${!i} in + -n) continue; ;; + esac name=$( basename "${!i}" ) origname="$name" path=$( readlink -f "${!i}" )