Textové RSS agregátory

Obrázek uživatele andros@jabber.cz
Vložil andros@jabber.cz, So, 2008-01-26 17:52 :: | |

Určite sa nám občas zíde zopár programov pracujúcich čisto v príkazovom riadku bez zbytočných klikátok a podobných "vymožeností"-- napr. ak nemáme k dispozícií grafický server, chceme šetriť systémové zdroje alebo proste len z princípu uznávame iba text-based aplikácie. Ja som si tento týždeň pokúšal zaobstarať čo najviac vyhovujúcu RSS čítačku do konzoly a vzhľadom k tomu, že moje zistenia môžu byť zaujímavé aj pre iných, ponúkam vám tento blogpost...

Pozn.: Vzhľadom k tomu, že som používateľom systému GNU/Linux, budem hovoriť hlavne o aplikáciach vhodných pre túto platformu -- existujú však isté možnosti ako i na iných systémoch rozbehať linuxové aplikácie (napr. Cygwin pre MS Windows).

Prvým kandidátom bol snownews, pretože som ho mal rovno v balíčkoch. Spočiatku som s ním bol vcelku spokojný, no potom sa dostavili prvé chýbajúce vlastnosti, čo v spojení s tým, že snownews už nie je príliš aktívne vyvíjaný (viď rozdiel posledných dvoch dátumov vydaní v changelogu) nie je príliš dobrá kombinácia. Jedným z nedostatkov bola i chýbajúca podpora Atom formátu (ktorá sa však dá doplniť skriptom, ktorý sa mi však nepodarilo/nechcelo nahodiť). Ak teda nevyžadujete sledovanie planét (ktoré poväčšinou využívajú práve Atom) a od agregátora očakávateiba jednoduché služby ako stiahnuť feed a zobraziť ho v prijateľnej forme, tak pravdepodobne snownews naplní vaše očakávania...

Ďalším programom takéhoto typu dostupným skrz môjho pacmana bol raggle. Musím sa priznať -- tohto klienta som skúmal asi najmenej kvôli tomu, že mi pripadal hneď od začiatku akýsi spomalený, odozva trvala niekedy aj pol minúty, čo v text-based aplikácií nie je práve častým javom. Ak však máte dosť času na skúšanie alebo ste programátorom v Ruby (v ktorom je raggle napísaný), tak môžte raggle vyskúšať a príp. sa o svoje postrehy taktiež podeliť...

Po zmazaní raggle prišiel na rad nrss. Nemilým prekvapením ešte pred spustením bolo, že nepodporuje import feedov v OMPL formáte -- toto obmedzenie sa však dá vyriešiť malým XSLT a sed skriptom. Prekvapení však nebolo dosť -- následne som zistil, že nrss pri každom štarte začne automaticky sťahovať všetky feedy spôsobom vytvorenia x inštancí wgetu (alebo podobného programu podľa nastavení), čo pri mojom pomalom pripojení na internet vôbec nebolo pekné. Naopak, tou príjemnejšou časťou nrss je jeho vzhľad, na ktorom si jeho tvorcovia dali záležať, pretože je vysoko konfigurovateľný -- umožňuje rozdeliť celé rozhranie do stĺpcov, ktorých počet je definovateľný podobne ako farby všetkých prvkov (a i napriek tomu som nenašiel voľbu, ktorá by umožnovala priesvitné pozadie). Taktiež sa pri každom feede zobrazí sumár najčerstvejších článkov, čo je tiež vcelku originálne na takúto aplikáciu. nrss by som odporučil tým, ktorým vadí pri používaní programov myš, ale i pri tom ich nechcú mať po stránke vzhľadu ako z praveku...

Po preskúšaní týchto troch klientov som skončil pri newsbeuteri, ktorý používam doteraz a som s ním absolútne spokojný. Ponúka totiž široké možnosti -- import/export z/do formátu OPML (čo je mimo nrss štandard), možnosť ukladania zaujímavých článkov, bookmarking skripty (v báličku bol skript, ktorý posiela do del.icio.us), konkrétne nastavanie týkajúce sa časových intervalov, v ktorých sa obnovujú feedy, etc. IMHO by ani veľmi pokročilý používateľ RSS (vyžadujúci obrovské množstvo sledovaných feedov s plnou kontrolou) by nemusel newsbeuterom pohrdnúť...

Nakoniec by som ponúkol riešenie ešte jedného zaujímavého problému -- totiž možno nie každému bude vyhovovať pri používaní textového RSS agregátora grafický webový browser. Touto otázkou som sa tiež zaoberal a objavil som veľmi vyspelý program -- elinks (postavený na známejšom linksovi). Ten totiž podporuje napr. známy "tabbed browsing", CSS, JavaScript a v závislosti od OpenSSL i šifrované spojenia, sessiony. V spojení s používaním s RSS klientom je však dôležitý tzv. "remote controlling". Trochu nadnesený názov pre jednoduchú záležitosť: ide o manipuláciu so spustenou inštanciou elinksu z iného programu, resp. konzoly. Jednoduchým príkladom: elinks -remote "openURL('http://live.jabbim.cz/', new-tab)" mi v otvorenom elinksovi otvorí nový tab s live.jabbim.cz. Elinks je v tomto smere veľmi vyspelou aplikáciou...

Dúfam teda, že vám tento "článok" nejakým spôsobom pomohol a niektorým zarytým okienkárom snáď pripomenie, že i čisto textové programy sú použiteľné a niekedy i použitelnejšie ako ich klony s GUI Smiling