diff options
Diffstat (limited to 'scuttle')
-rwxr-xr-x | scuttle | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/scuttle b/scuttle deleted file mode 100755 index e065b48..0000000 --- a/scuttle +++ /dev/null @@ -1,79 +0,0 @@ -#!/bin/bash -# -# Post a link to a scuttle service. -# - -# Thanks https://gist.github.com/cdown/1163649 -function urlencode() { - # urlencode <string> - old_lc_collate=$LC_COLLATE - LC_COLLATE=C - - local length="${#1}" - for (( i = 0; i < length; i++ )); do - local c="${1:i:1}" - case $c in - [a-zA-Z0-9.~_-]) printf "$c" ;; - *) printf '%%%02X' "'$c" ;; - esac - done - - LC_COLLATE=$old_lc_collate -} - -# Parameters -BASENAME="`basename $0`" -URL="$1" -TAGS="$2" -shift 2 -DESC="$*" -TMP="${TMP:=/tmp}" - -# Syntax -if [ -z "$TAGS" ]; then - echo "usage: $BASENAME <url> <tags> [description]" - exit -fi - -# Config -source "$HOME/.custom/scuttle" || exit 1 - -# See http://www.wired.com/2010/02/using_the_delicious_api/ -#CALL="$SCUTTLE_URL/api/posts/add?url=`urlencode $URL`" -CALL="$SCUTTLE_URL/api/posts/add" - -# Tags -TAGS="`echo $TAGS | sed -e 's/,/ /g'`" -#TAGS="`urlencode "$TAGS"`" -TAGS="`echo $TAGS | sed -e 's/%2C/,/g'`" -#CALL="$CALL&tags=$TAGS" - -# Description -if [ -z "$DESC" ]; then - # See http://stackoverflow.com/questions/3195851/ddg#3195895 - DESC="`torify curl -L -s $URL | grep -i "<title>" | sed -n 's/.*<title>\(.*\)<\/title>.*/\1/ip;T;q' 2> /dev/null`" - echo "Fetched description: $DESC" -fi - -# Full API call -#CALL="$CALL&description=`urlencode "$DESC"`" - -# Write config -CONF="`mktemp -t scuttle.XXXXXXXXXX -p $TMP`" -echo "url = $CALL" > $CONF -echo "user = $SCUTTLE_USER:$SCUTTLE_PASS" >> $CONF - -# Remove trailing slash which might lead to urlencode errors by curl (dunny why) -URL="`echo $URL | sed -e 's|/$||'`" - -# Call curl -# See https://stackoverflow.com/questions/296536/how-to-urlencode-data-for-curl-command#2027690 -#curl -s -K $CONF &> /dev/null -curl -s -K $CONF -G --data-urlencode "url=$URL" --data-urlencode "tags=$TAGS" --data-urlencode "description=$DESC" &> /dev/null - -# Status -STATUS="$?" - -# Teardown -rm $CONF -exit $STATUS |