diff options
author | epoch <epoch@hack.thebackupbox.net> | 2020-10-12 09:16:57 +0000 |
---|---|---|
committer | epoch <epoch@hack.thebackupbox.net> | 2020-10-12 09:16:57 +0000 |
commit | 9705a81be3e6a7d63909074ab45b862b46c6d88f (patch) | |
tree | 4c742c337c3a1f6901181a41afe775c208204be2 /urititle | |
parent | 29ec2d6b6dccab65335be8bf203f0f139d876f97 (diff) | |
download | uritools-9705a81be3e6a7d63909074ab45b862b46c6d88f.tar.gz uritools-9705a81be3e6a7d63909074ab45b862b46c6d88f.zip |
urititle now will show content-type of gemini links if it isn't text/gemini
Diffstat (limited to 'urititle')
-rwxr-xr-x | urititle | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -1,4 +1,4 @@ -#!/bin/sh +#!/usr/bin/env bash scheme=$(printf "%s\n" "$1" | uricut -s) path=$(printf "%s\n" "$1" | uricut -p) qs=$(printf "%s\n" "$1" | uricut -q) @@ -37,7 +37,17 @@ if [ "$port" ];then fi ;; gemini) - printf "title: %s\n" "$(gemini-get "$1" | grep '^#' | head -n1 | sed 's/^#* *//g')" + first=1 + gemini-get "$1" | while read -r line;do + if [ "$first" ];then + unset first + if ! printf "%s\n" "$line" | grep '^[^ ]* text/gemini' 2>&1 >/dev/null;then + printf "title: %s\n" "$(printf "%s\n" "$line" | tr '\t' ' ' | tr -s ' ' | cut '-d ' -f2-)" + fi + else + printf "title: %s\n" "$(printf "%s\n" "$line" | grep '^#' | sed 's/^#* *//g')" + fi + done | head -n1 ;; magnet) printf "title: %s\n" "$(printf "%s\n" "$1" | tr '&' '\n' | grep ^dn= | cut -d= -f2- | uriunescape)" |