Newsbeuter ou les flux RSS en mode texte
Le web en mode texte, voilà qui va en faire sourire plus d’un. Et pourtant…
Avant de vous raconter ma rencontre avec Newsbeuter, sachez qu’il s’agit d’un lecteur de flux RSS qui marche dans une console. Vos flux RSS sont donc affichés en mode texte.
Comment en suis-je arrivé là ?
Mon histoire avec les flux RSS a commencée il y a environ 3 ans avec Thunderbird. Jonglant souvent entre mon PC fixe et un vieux portable selon les besoins de mes chères têtes blondes, il m’a semblé utile de disposer d’une solution me permettant de les consulter depuis n’importe quel poste. Netvibes m’est alors apparu comme LA solution.
Au bout de quelques mois de pratique, l’ajout d’environ 200 à 300 flux et d’une quinzaine d’onglets pour les classer, j’ai commencé à sentir les limites de cet outil dont je trouvais l’ergonomie peu adaptée au traitement de gros volumes. Cependant, il a peut-être évolué depuis, j’avoue ne pas être retourné le voir depuis pas mal de temps. Je me suis alors tourné vers Google Reader dont j’ai trouvé le fonctionnement diablement productif et ergonomique.
Vint ensuite l’époque des doutes et des convictions : j’arrête de d’éparpiller mes données personnelles sur le web, je ramène tout chez moi. Nous sommes en fin 2008 et j’installe Tiny Tiny RSS. Bon ce n’est pas aussi productif que l’outil de Google malgré la forte ressemblance. Les performances de l’application ne sont pas aussi bonnes. Mais la liberté à un prix alors j’ai vécu avec jusqu’à cet été.
Newsbeuter, j’en avais entendu parlé par Christophe et je l’avais rangé au rayon des choses « A essayer quand j’aurais du temps ». Un rayon qui déborde régulièrement…
Cet été donc, me voila au fin fond de la Savoie et connecté au reste du monde grâce à une clé USB 3G prêtée par un ami. Enfin 3G, il n’y en avait pas. Selon les conditions météorologiques j’étais au mieux en EDGE avec environ 15Ko/s de débit voir en GPRS avec 5Ko/s. Quand on a pris l’habitude du haut débit que permet l’ADSL dans nos villes françaises, le web prend alors une toute autre saveur. Il en deviendrai presque insupportable.
Utiliser Tiny Tiny RSS dans ces conditions relevait du plus pur masochisme et j’ai mes limites aussi. C’est alors que Newsbeuter est tombé du rayon où je l’avais rangé.
L’installation sur ma Framakey de vacances, autrement dit Ubuntu se fait par un simple « sudo apt-get install newsbeuter ». Je récupère un export au format OPML de mes flux RSS et je les importe dans Newsbeuter : « newsbeuter -i nomdufichieropml ».
La liste de tous mes flux s’affiche alors dans ma console. Premier réflexe, je cherche à retrouver mes catégories. En effet, j’en lis certaines quotidiennement et d’autres quand j’ai le temps. Un coup d’oeil à la documentation et je découvre la touche « t » qui permet d’accéder aux tags l’autre nom des catégories pour Newsbeuter. Rassuré je peux donc garder mes habitudes de lecture.
La mise à jour de tous les flux se lance grâce à la touche « R ». Chose intéressante, elle s’effectue en tâche de fond et ne vous bloque pas pour la consultation des flux, un autre bon point. Bon bien sûr avec 5Ko/s de bande passante pas de miracles sur les temps de mise à jour des flux. Là où cela devient intéressant c’est sur l’affichage des articles : c’est instantané ! La mise en forme en mode texte est parfaitement lisible. Les URL raccourcies sont même allongées. Voici un exemple :
Comme vous pouvez le voir les liens sont soulignés avec un renvoi en fin de page où sont synthétisés tous les liens qu’il s’agisse d’images ou d’autres pages web.
La touche « o » vous permet d’ouvrir l’article en cours de visualisation dans votre navigateur « graphique » préféré, mais je ne le fait que lorsque je souhaite laisser un commentaire ou lorsque l’article nécessite de voir une image ou une vidéo. Concernant les sites affichant des vidéo flash, Newsbeuter les indique avec la mention [flash embarqué: 1]. Au moins vous êtes prévenu en cas d’allergie à ce format.
Le passage à l’article non lu suivant se fait avec la touche « n ». Là cela devient carrément magique, on peut faire défiler à toute vitesse les articles. Impossible à obtenir avec un lecteur RSS en mode web.
Bien sur il y a quelques sacrifices à faire :
- L’ajout ou la suppression des flux se fait en éditant le fichier texte de configuration,
- Je n’ai pas trouvé de mode de visualisation des articles non lues par tag. On voit bien la liste des flux contenant des articles non lus, mais il faut « ouvrir » chaque flux pour avoir la liste. En fait j’aimerais bien avoir accès à la liste des nouveaux articles par tag directement.
Rien de bien rédhibitoire en ce qui me concerne.
L’argument supplémentaire ?
Newsbeuter permet de « marquer » les articles. Cette fonction est associée à un script que vous devez fournir. Dans mes usages, je suis amené à faire trois choses d’un article qui m’a intéressé :
- Je le publie sur Identi.ca qui l’envoi à twitter qui se fait aspirer par friendfeed (c’est beau les réseaux sociaux ),
- Je l’utilise comme base pour créer une brève.
- Je l’enregistre dans mes bookmark à conserver ( vous savez, la rubrique « A essayer quand j’aurais du temps »). Pour ces derniers j’utilise le script Sitebar.
Le point 1 me demandait pas mal d’opérations de copier/coller entre le navigateur et Gwibber mon client de microbloging. L’idée m’est venue d’automatiser cette opération.
Pour cela les éléments dont j’avais besoin était :
- une API pou raccourcir les URL
- une API pour publier sur Identi.ca
Utilisateur jusqu’à présent du célèbre tr.im, exemple du pourquoi il peut être dangereux d’utiliser des services hébergés, je me suis tourné vers le script de Tux-Planet : Bilbolinks pour son extrême simplicité. Par contre pas d’API alors j’ai dû faire un petit développement à partir de la page d’index. Le source de cette api est téléchargeable là.
Il faut également ajouter :
RewriteCond %{REQUEST_URI} !^/api.php(.*)
à votre fichier .htaccess (Merci à Sébastien)
Pour l’API, elle est verrouillée pour mon seul usage car comme me le faisait remarquer Sébastien, elle n’est pas sécurisée et il serait facile de remplir ma base de données. Cependant, Sébastien est en train de finir une nouvelle version qui intégrera cette fois une API et un système limitant le nombre de soumissions d’URL par minute.
Pour finir voici le script bash qui appelle l’API d’identi.ca pour poster un message. Il est basé sur un billet d’Inalgnu.
#!/bin/bash #{1} contient l'URL #{2} contient le titre/texte shorturl=$(curl http://bypsc.fr/api.php?longurl=${1} --silent) new_message=${2}$" "$shorturl echo $new_message | iconv -f iso-8859-1 -t utf-8 > /home/philippe/tweet new_message=$(cat /home/philippe/tweet) curl --basic --user login:password --data "status=${new_message}" --output /dev/null http://identi.ca/api/statuses/update.xml
/Je doute qu’il soit très « beau » d’un point de vue script bash, notamment à cause du pipe avec iconv pour convertir le jeux de caractères. Cependant il marche très bien comme vous l’avez peut-être remarqué depuis quelques jours. Il lui manque un contrôle sur la longueur du titre, pour le tronquer si jamais il dépassait 110 à 120 caractères. Merci pour vous suggestions d’améliorations en commentaire.
Notez que cette API pour identi.ca fonctionne aussi pour Twitter. Il suffit de remplacer identi.ca par twitter.com. Je n’ai pas fait de tests cependant. L’idée de cloner l’API de twitter dans Laconica, le script utilisé par le service Identi.ca est assez bonne, car elle facilitera le travail aux développeurs de logiciels de micro-bloging pour intégrer les services basés sur ce script.
Et la synchronisation entre plusieurs postes ? Simple, Newsbeuter est installé sur mon serveur dédié dont je vous parlais il y a quelques jours. Je lis donc mes flux RSS depuis une console connectée en ssh. Il reste à sauvegarder régulièrement le contenu du répertoire .newsbeuter qui contient la liste des flux et la base de données dans laquelle sont stockées toutes les informations.
Newsbeuter le lecteur de flux idéal ?
Pour mes besoins c’est sans appel oui ! Mais je ne le conseillerais pas à tout le monde. Je ne suis pas un fan de la souris et plus je peux faire d’opérations directement avec mon clavier mieux je me porte.
Newsbeuter dispose d’autres fonctions que je vous laisse découvrir, mais vous avez ici celles que j’utilise principalement. Autres touches utiles :
- « CTRL+n » permet de passer au flux suivant contenant des articles non lus. Si vous êtes en mode visualisation des flux par tag, le parcours se fait bien sûr parmi les flux de ce tag.
- « SHIFT+n » permet de changer le statut lu/non lu lorsque
Je ne doute pas non plus qu’il puisse exister d’autres lecteurs de flux non web efficaces et performants. Mais le fait que newsbeuter soit « naturellement » en mode texte et l’ergonomie qu’il implique m’a séduit. Cela fait deux semaines que je l’utilise et je n’ai toujours pas de regrets d’autant qu’il me reste toutes les fonctionnalités tournant autour des filtres que je n’ai pas encore exploré.
Prochaine évolution, améliorer mon script pour envoyer les bookmark vers SiteBar. Un peu plus compliqué je pense…
[EDIT 29/08/2009] : Laurent P m’a donné la solution que je n’avais pas encore pris la peine de chercher mais dont je me doutais bien qu’elle existait : les meta feed. Il s’agit d’une requête que l’on enregistre dans le fichier contenant la liste des fluxs (urls). En voici un exemple donné dans l’aide de newsbeuter : query:Unread:unread = »yes ». Cette requête permet d’obtenir un flux « virtuel » de tous les articles non lus. Celle-ci query:tag1 Articles:tags # »tag1 » permet elle d’obtenir les articles des flux marqué avec le tag1.
Vous devriez peut-être lire ces articles sur le même sujet
- Finch : Pidgin en mode texte
- HTML ou Texte, quel format utiliser avec Thunderbird pour envoyer ces emails ?
- La prochaine version du kernel Linux 2.6.29 intégrerait le kernel mode-setting
- Quels logiciels pour faire un Planet ?
La liste des entrées complémentaires est établie par le module d’extension YARPP.
Vous pouvez aussi me suivre sur Twitter et Identi.ca .
Article original écrit par Philippe Scoffoni le 29/08/2009. | Lien direct vers cet article | © Philippe Scoffoni - 2009
Cette création est mise à disposition sous un contrat Creative Commons BY-SA.