Deblan blog

Twidge, inverser l'odre d'affichage

Quand on passe une partie de sa journée devant un shell, on aime bien avoir accès à certaines choses sans booter un navigateurs graphique. Du coup, si on est un "twittos", on pourra installer Twidge, un client CLI pour Twitter.

Seulement, on notera deux "problèmes" : des commandes relativement longues et un ordre d'affiche non ergonomique à mon goût. En effet, il affiche les twitts du plus récent au plus ancien, mais quand on est dans un shell, ça oblige à scroller pour visualiser les nouveautés. Pour résoudre un des deux problèmes, il suffit de faire des alias. Pour l'autre, j'ai fais un script assez simple mais efficace.

#!/bin/sh
TMP=/tmp/twitter


if [ -f "$TMP" ]; then
	rm "$TMP"
fi

getRecent() {
	tweets=$(twidge lsrecent | sed 's/\s\s*/ /g;s/^\s\s*//')
	echo "$tweets" | while read line; do
		if [ $(echo "$line" | cut -c 1) = "<" ]; then
			echo -n "\n$line" >> "$TMP"
		else
			echo -n " $line\`" >> "$TMP"
		fi
	done

	F=
	IFS="\`"
	for i in `cat "$TMP"`; do
		if [ ! -z $i ]; then
			F="$i$F"
		fi
	done

	echo "$F" | awk '$O!=""{ print $O"\n"; }'
}

case "$1" in
	ls|lsrecent) getRecent;;
	up|update) twidge update "$2";;
	*) twidge "$1" "$2";;
esac

Pour l'utiliser :

# ici, le script s'exécute via "tw"
prompt> tw ls # affiche les derniers twitts
prompt> tw up <message> # ajoute un twitt
prompt> tw <une commande twidge>

Ajouter un commentaire

Vous pouvez utiliser du markdown.Afficher l'aide.