From f7ac47a1102006842d074146237c756648478675 Mon Sep 17 00:00:00 2001 From: Vasil Zlatanov Date: Thu, 12 Feb 2015 19:45:58 +0100 Subject: bspwm update --- config/uzbl/scripts/download.sh | 69 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100755 config/uzbl/scripts/download.sh (limited to 'config/uzbl/scripts/download.sh') diff --git a/config/uzbl/scripts/download.sh b/config/uzbl/scripts/download.sh new file mode 100755 index 0000000..398f271 --- /dev/null +++ b/config/uzbl/scripts/download.sh @@ -0,0 +1,69 @@ +#!/bin/sh +# uzbl's example configuration sets this script up as its download_handler. +# this script is run when uzbl encounters a URL that it can't display, and when +# a download is requested using the 'download' command. +# +# if the script prints a file path to stdout, uzbl will save the download to +# that path using it's internal downloader. +# +# if nothing is printed to stdout, the internal download will be cancelled. +# you could do your own download handling in your script that way. + +# if $5 is set, it is the path that was passed to uzbl's "download" command. +# we want to use that if it's available. +[ -n "$5" ] && echo "$5" && exit + +. "$UZBL_UTIL_DIR/uzbl-dir.sh" + +# the URL that is being downloaded +uri="$1" +shift + +safe_uri="$( echo "$uri" | sed -e 's/\W/-/g' )" + +# a filename suggested by the server or based on the URL +suggested_filename="${1:-$safe_uri}" +shift + +# the mimetype of the file being downloaded +content_type="$1" +shift + +# the size of the downloaded file in bytes. this is not always accurate, since +# the server might not have sent a size with its response headers. +total_size="$1" +shift + +case "$suggested_filename" in + # example: save torrents to a separate directory + *.torrent) + path="/home/vasko/Torrents/$suggested_filename" + ;; + # Default case + *) + path="/home/vasko/Downloads/$suggested_filename" + ;; +esac + +source ~/.colors; + +if ! /home/vasko/.ratpoison/ratmenu -style dreary -fg \"$COLOR11\" -bg \"$COLOR0\" -io 2 "Download \"$suggested_filename\"?" false Yes true No false;then +path=''; +fi + +# Do nothing if we don't want to save the file +[ -z "$path" ] && exit 0 + +# Check if the file exists +if [ ! -e "$path" ]; then + echo "$path" + exit 0 +fi + +# Try to make a unique filename +count=1 +while [ -e "$path.$count" ]; do + count=$(( $count + 1 )) +done + +echo "$path.$count" -- cgit v1.2.3-54-g00ecf