Snownews

Možná jste už slyšeli o RSS, v dnešním článku se nebudeme zabývat tím jak to funguje, od toho jsou zde povolanější. My si představíme jednoho textového klienta, který nám umožní jednoduché a příjemné procházení RSS.

4.11.2004 08:00 | Petr Šigut | přečteno 7928×

Co to tedy ve stručnosti RSS je? RSS je malý textový soubor, s nadpisy článků a jejich krátkých shrnutích. Sledujete-li na internetu pravidelně několik serverů nemusíte na ně každý den chodit - a tím natahovat stále dokola tu stejnou grafiku, bannery, věci co jste již četli a nezajímají vás apod. Možná máte zaplé filtrování reklam, používáte cache-proxy, prohlížeč podporující tabbebrowsing s otevřenými deseti stránkami naráz... Ano, lze to i takto, ale existuje i pohodlnější cesta - snownews.

Zkoušel jsem několik prohlížečů RSS, ale všechny byly velké, dlouho se spouštěly, byly nepřímočaré v ovládání a vůbec na sebe nabalovaly spoustu funkcí, které popíraly stvoření RSS - dostat rychle a pohodlně přehled o novinkách z několika desítek serverů najednou. A hlavně: žádný nebyl pro konzoli - máte-li rádi programy jejichž ovládání je stvořeno pro klávesnici, čtěte dále.

Stránky projektu naleznete na adrese http://kiza.kcore.de/software/snownews/. Pro instalaci se můžete podívat jestli někdo již nevytvořil balíček pro vaši distribuci / váš operační systém. Jestliže nenaleznete, je zde ke stažení již předkompilovaná statická binárka a samozřejmě zdrojové kódy. Binárku nedoporučuji, ji sice funkční, ale není zkompilovaná s podporou znakové sady ISO-8859-2 - čili vám nebude fungovat správně čeština, ale chcete-li RSS využívat pouze pro zahraniční servery, můžu vám ji s klidným srdcem doporučit.

My ostatní si ale stáhneme zdrojové kódy, v době psaní tohoto článku byla aktuální verze 1.5.4 Snownews potřebuje knihovnu ncurses alespoň verze 5.0 (většinou už je ve vaší distribuci) a protože parsuje XML tak knihovnu libxml2 - používá ji Gnome a tuším, že i KDE, tak bude s nejvyšší pravděbodobností také zahrnuta ve vaší distribuci. Jesliže ne, stáhněte si ji ze stránek www.xmlsoft.org a nainstalujte.

Stažený archiv se snownews rozbalte - naleznete zde normální zdrojové kódy. Kompilace probíhá klasicky ./configure;make;make install; Přičemž ./configure --help nám vypíše velice chudý seznam voleb pro kompilaci - máte jen dvě možnosti, změnit cestu kam se snownews nainstaluje a kódování, které bude program používat. Ta první volba nás moc nezajímá, klidně ponechejte standardní hodnotu /usr/local. Ale druhý parametr je pro správnou češtinu nutno změnit a to takto:

./configure --charset=ISO-8859-2

dáke pokračujeme normálně make a make (check) install.

Program se spouští samozřejmě pomocí příkazu snownews. Po prvním spuštění programu se před vámi objeví prázdná obrazovka - jen nahoře vidíte verzi snownews a dole nápis vyzívající vás ke stisku klávesy "h" pro nápovědu. Učiňmě tak - objeví se seznam věcí co můžete dělat. A sice tyto:

a:    Add RSS feed...                      
D:    Delete highlighted RSS feed...       
c:    Rename feed...                       
R:    Reload all feeds                     
r:    Reload this feed                     
m:    Mark all read                        
B:    Change default browser...            
P, N: Move item up, down                   
s:    Sort feed list alphabetically        
C:    Categorize feed...                   
f:    Apply filter...                      
g:    Only current category                
F:    Remove filter                        
X:    Toggle AND/OR filtering              
H:    Show new headlines                   
e:    Add conversion filter...             
b
tab:  Type Ahead Find                      
A:    About
q:    Quit program

Snad vás nevyděsila ta angličtina, vše je jednoduché a pochopitelné - zkusme si tedy hned přidat nový RSS zdroj. A protože LinuxSoft.cz tuto funkci nepostrádá, vyzkoušíme tento server. Na stránce http://www.linuxsoft.cz/export/ si můžete vybrat z více kategorií. My si vyzkoušíme zobrazování šesti nejnovějších článků.

Stiskněte klávesu "a" - objeví se pole do kterého zadáte zdroj RSS, v našem případě: http://linuxsoft.cz/export/linuxsoft_article_cz.rss a stiskněte enter. Ve status baru snownews se zobrazí, že se úspěšně přidala položka. A namísto prázdné obrazovky už máme

Linuxsoft.cz 6 new

Pomocí enteru nad položkou do ní vjedete a zobrazí se vám těch šest nadpisů článků:

Softwarový adresář - články
HTML (21) - Přecházíme na XHTML
Webové Standardy 1 - Historie, problém a řešení
PHP (61) - Rozsáhlejší projekty 2.
Enlightenment- osvietenie plochy 4
Perl (3) - skaláry I
Gimp - ÚPRAVY FOTOGRAFIÍ (15.) - Masky II.

Snownews má velice chytře řešení ovládání - klávesa enter vám nyní skočí vždy na další nepřečtenou zprávičku/článek - vždy se vám zobrazí stručný popis článku - někdy kratší někdy delší, záleží na serveru, některé to nevyplňují vůbec.

Nápověda je dynamická, jestliže stisknete klávesu "h" v přehledu článků zobrazí se:

p, up:     Previous item
n, down:   Next item
enter:     View item
r:         Reload this feed
o:         Open homepage
O:         Open link
m:         Mark all read
M:         Mark item unread
i:         Show feed info...
tab:       Type Ahead Find
q:         Return to main menu

Mezi nadpisy článků se lze pohybovat klasicky pomocí šipek a enteru nebo kláves "p" a "n". Klávesa "o" zobrazí domovskou stránku serveru, častější využití bude zřejmě mít "O", to vám v prohlížeči rovnou otevře daný článek. Klávesa "r" zkontroluje jestli se náhodou RSS zdroj neaktualizoval a stáhne novinky. Pomocí kláves "m" a "M" lze položky označovat jako přečtené a nepřečtené. Klávesou "q" vyskočíte o úroveň výše.

Možná jste již zkoušeli pomocí "O" otevřít článek ve svém prohlížeči - a nepodařilo se. Ještě jsme si totiž žádný nenastavili (defaultně je nastaven Lynx.) Vyjeďte tedy zpět na hlavní obrazovku a stiskněte "B", do pole zadajte příkaz pro svůj prohlížeč, "%s" bude nahrazeno příslušným odkazem. (Pro Operu opera -newpage "%s".)

Chcete-li aby se odkazy otevíraly v Mozille udělejte si shellový skript pojmenovaný např. mozilla-snownews s následujícím obsahem:

#!/bin/sh URL=`echo $1|tr -d \'\"\)` /PATH_TO/mozilla -remote "openURL($URL, new-tab)"

A v snownews do pole pro prohlížeč (klávesa "B") zadejte mozilla-snownews (tento skript musí být samozřejmě uložen někde kde ukazuje $PATH a být spustitelný)

Díky tomu se vám otevře v běžící instanci Mozilly další tab s vybraným článkem.

Proč je to takto složité se dočtete ve FAQ, najdete zde i popis nebezpečného nastavení: http://kiza.kcore.de/software/snownews/faq.en.shtml

Vraťme se nyní do hlavního menu - je zde ještě několik zajímavých funkcí: klávesa "R" vám stáhne nové RSS ze všech serverů - a máte okamžitě přehled co je nového, aniž byste procházeli všechny servery. Klávesa "H" vám pohromadě zobrazí pouze nové zprávy ze všech serverů, nějak takto:

Další funkce najdete v nápovědě, či skvělých manuálových stránkách. A doufám že se počet serverů podporující RSS bude stále zvětšovat.

Online verze článku: http://www.linuxsoft.cz/article.php?id_article=491