Michał Moroz

Abecadło smoczątka, dziennik niecodzienny

Linki w ekg2

Korzystanie z linków przesyłanych do ekg2, szczególnie, jeśli komunikator uruchomiliśmy na serwerze i łączymy się z nim poprzez ssh, jest dość niewygodnym zadaniem. O ile korzystając z iksowego terminala możemy zaznaczyć i przekopiować linka (bądź skorzystać z natywnej obsługi w gnome-terminal, czy modyfikacji rxvt), to przy używaniu komunikatora poprzez framebuffer console (czy ma to określenie jakąś polską nazwę?) musielibyśmy przepisywać linki ręcznie, a nie o to nam chodzi.

Z pomocą przyjdzie nam jak zwykle Python, w którym napiszemy prosty wykrywacz przesyłanych nam linków, oraz program urlview napisany przez Michaela Elkinsa, który pozwoli wyświetlić je w banalnie prostym interfejsie opartym na ncurses i uruchomić je za pomocą dowolnej przeglądarki.

Skrypcik znajdzie się tutaj - wszystko co robi, to sprawdzanie za pomocą prostego wyrażenia regularnego, czy w danej wiadomości znajduje się link; jeśli tak, zapisuje go do ~/.ekg2/links.

Następnie edytujemy plik ~/.urlview i wpisujemy tam sposób uruchamiania naszej najlepszej przeglądarki:

Opera (na workstacji):
COMMAND opera -newpage %s
Elinks (na serwerze):
COMMAND elinks %s

Ustawienia te są przykładowe - dla elinksa możnaby postarać się o uruchamianie przeglądarki w nowym oknie screena, o ile nie jest już uruchomiona, w przeciwnym przypadku otwierać tylko nową kartę.

urlview ma jedną, bardzo wielką zaletę - żaden wyświetlony w nim link się nie powtarza - więc gdy dostaniesz dziesięć powiadomień na Joggera, w programie zobaczysz nadal tylko jeden link.

Teraz już wystarczy uruchomić odpowiednie polecenia:

Aby uruchomić urlview na workstacji:
$ ssh serwer cat ~/.ekg2/links | urlview
Aby uruchomić urlview na serwerze:
$ urlview ~/.ekg2/links

Wypadało by także co pewnien czas, na przykład co tydzień lub co miesiąc czyścić plik ~/.ekg2/links.

Zobacz komentarze Trackback dodajdo.com Zobacz pełne metadane
18 sierpnia 2006
Tagi:
Reklamy Google
Na górę
Przejdź do komentarzy
Dodaj komentarz