Total rewrite #15
| @ -1,66 +0,0 @@ | ||||
| #!/bin/sh | ||||
| 
 | ||||
| INPUT=$(echo $1) | ||||
| echo "Loading configuration..." | ||||
| CONFIG=$(cat /etc/xdg-sanity/xdg-sanity.conf) | ||||
| BROWSER=$(echo $CONFIG | sed -ne 's/^browser *= *//p') | ||||
| 
 | ||||
| if [ "$BROWSER" = "" ] | ||||
| then | ||||
| echo "Please place the path to your default browser's executable in /etc/xdg-sanity/xdg-sanity.conf" | ||||
| exit | ||||
| else | ||||
| echo "Found default browser $BROWSER" | ||||
| fi | ||||
| 
 | ||||
| echo "Loading extensions..." | ||||
| for EXT in /etc/xdg-sanity/extensions/*.sh | ||||
| do | ||||
| 
 | ||||
| if [ "$EXT" = "/etc/xdg-sanity/extensions/*.sh" ] | ||||
| then | ||||
| echo "No extensions to load" | ||||
| else | ||||
| 
 | ||||
| for EXT in /etc/xdg-sanity/extensions/*.sh | ||||
| do | ||||
| TYPE=$(cat $EXT | sed -ne 's/^# EXT-TYPE=//p' | tr -d '\n') | ||||
| echo "Found $TYPE extension $EXT" | ||||
| 
 | ||||
| if [ "$TYPE" = "replace" ] | ||||
| then | ||||
| echo "Modifying $INPUT..." | ||||
| INPUT=$($EXT "$INPUT") | ||||
| echo "Got $INPUT" | ||||
| 
 | ||||
| else | ||||
| if [ "$TYPE" = "mime" ] | ||||
| then | ||||
| echo "Modifying MIME type..." | ||||
| MIME=$($EXT "$INPUT") | ||||
| echo "Got $MIME" | ||||
| 
 | ||||
| fi | ||||
| fi | ||||
| 
 | ||||
| done | ||||
| fi | ||||
| 
 | ||||
| done | ||||
| 
 | ||||
| if [ "$MIME" = "" ] || [ "$MIME" = "$1" ] || [ "$MIME" = "$INPUT" ] | ||||
| then | ||||
| echo "Determining MIME type of $INPUT:" | ||||
| # Determines HTTP code, might use for something else? | ||||
| # CODE=$(curl -fLIs "$INPUT" | sed -ne 's/ [[:space:]]*$//p' | sed -ne 's|^HTTP/.\+ ||p') | ||||
| MIME=$(curl -fLIs "$INPUT" | sed -ne 's/^[cC]ontent-[tT]ype: //p' | sed -e 's/;.\+//p' | tail -n1 | tr -d '\r') | ||||
| echo $MIME | ||||
| fi | ||||
| 
 | ||||
| if [ "$MIME" = "text/html" ] | ||||
| then | ||||
| $BROWSER $INPUT | ||||
| 
 | ||||
| else | ||||
| handlr launch "$MIME" -- "$INPUT" | ||||
| fi | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user