From 8403ad2258519b10f656591d8c1e5a194f3ac438 Mon Sep 17 00:00:00 2001 From: Mara Bos Date: Tue, 24 Mar 2020 14:42:00 +0100 Subject: [PATCH 1/2] Make rushlink --delete work with urls that have a file extension. --- contrib/rushlink | 3 +++ 1 file changed, 3 insertions(+) diff --git a/contrib/rushlink b/contrib/rushlink index 1f67b75..c32ca58 100755 --- a/contrib/rushlink +++ b/contrib/rushlink @@ -31,6 +31,9 @@ del() { URL="$LINK$1" ;; esac + # Remove file extension, if any. + NAME="${URL##*/}" + URL="${URL%/*}/${NAME%%.*}" if DELURL=$(grep -s -m1 "$URL?deleteToken=" "$DELFILE"); then echo "Deleting $URL..." >&2 curl -sS -X DELETE "$DELURL" | grep deleted From 732b1fc2a6920213daaa681aaf5b32714249400c Mon Sep 17 00:00:00 2001 From: Mara Bos Date: Tue, 24 Mar 2020 14:42:26 +0100 Subject: [PATCH 2/2] Add rushlink --screenshot. --- contrib/rushlink | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/contrib/rushlink b/contrib/rushlink index c32ca58..b476b18 100755 --- a/contrib/rushlink +++ b/contrib/rushlink @@ -43,6 +43,29 @@ del() { fi } +screenshot() { + if command -v maim >/dev/null 2>&1; then + CMD="maim -ks" + elif command -v import >/dev/null 2>&1; then + CMD="import png:-" + else + echo "Neither maim nor import were found. One of these is needed to make screenshots." >&2 + exit 1 + fi + FILE=$(mktemp) + if $CMD > "$FILE"; then + LINK=$(link "$FILE") + rm -f "$FILE" + echo "$LINK.png" + if command -v xdg-open >/dev/null 2>&1; then + xdg-open "$LINK.png" + fi + else + rm -f "$FILE" + exit $? + fi +} + if [ $# -gt 0 ]; then case "$1" in --help|-h) @@ -58,6 +81,8 @@ if [ $# -gt 0 ]; then echo " $CMD" echo " echo hi | $CMD" echo " Upload file from standard input." + echo " $CMD (--screenshot|-s)" + echo " Select a window or an area of your screen, and upload it as png." echo " $CMD (--delete|-d) ${LINK}xd42" echo " $CMD (--delete|-d) xd42" echo " Delete file or shortened link." @@ -72,6 +97,15 @@ if [ $# -gt 0 ]; then done exit 0 ;; + --screenshot|-s) + shift + if [ $# -gt 0 ]; then + echo "No arguments expected to --screenshot" >&2 + exit 1 + fi + screenshot + exit 0 + ;; *) for url in "$@"; do link "$url"