Nie lubisz tych wszystkich animacji, reklam, wyskakujących okienek, fikuśnych napisów, wielkich zdjęć i połaci pustego miejsca – czyli cech dzisiejszych stron internetowych? Liczy się dla Ciebie tylko czysty tekst? Rozwiązanie istnieje. Oto Lynx – przeglądarka internetowa działająca w… terminalu tekstowym. Ale jak to? 

Przeglądarka Lynx 

Na początek ciekawostka: Lynx jest najstarszą rozwijaną do dziś przeglądarką internetową. Pochodzi z 1992 roku i jest efektem prac zespołu studentów i wykładowców skupionych wokół Distributed Computing Group na Uniwersytecie Kansas jako przeglądarka dokumentów hipertekstowych z uniwersyteckiego systemu informatycznego. Potrafi obsłużyć protokoły HTTP, FTP, NNTP, Gopher, WAIS, a nawet HTTPS – strony oznaczone zieloną kłódką (tj. działające przez TLS) nie będą stanowiły dla niej problemu, chociaż oczywiście na wyświetlanie takich zbędnych elementów nie ma co liczyć. Brakuje także wsparcia dla JavaScriptu, Flasha oraz – co oczywiste – wszelkich multimediów, takich jak zdjęcia, wideo lub dźwięk. Twórcy nie zapomnieli jednak o plikach cookies, a nawet tworzeniu white- i blacklist oraz opcji ich całkowitego wyłączenia. Historia przeglądania? Jest! Zakładki? Również! Podobnie, jak cache’owanie stron. Dla osób niewidomych lub niedowidzących przygotowano możliwość współpracy ze specjalnymi ekranami brajlowskimi oraz przetwarzaniu tekstu na mowę. Całkiem zaawansowana przeglądarka.

Jak przegląda się strony internetowe w trybie tekstowym? 

Czas więc przyjrzeć się Ryśkowi i sprawdzić go na własnej skórze we własnym terminalu. Na sam początek zajrzyjmy na stronę główną projektu dostępną pod adresem lynx.browser.org.

lynx przeglądarka w terminalu

Znajdziemy tu kilka słów o projekcie, informację o najnowszej wersji 2.8.8 pochodzącej z połowy 2018 roku, a także wspieranych nowoczesnych platformach, takich jak Windows 95 / 98 / NT, DOS386+, OS/2 EMX, Unix, MacOS, VMS. Ten ostatni to uniksopodobny serwerowy system operacyjny z podziałem czasu. Miał swoją premierę w 1977 roku i jest rozwijany do dziś przez Hawlett-Packard. Czuć klimat.

Czytaj więcej: Linuksowy Bash w Windowsie to nie nowość. Microsoft stworzył kiedyś własnego Uniksa! 

Strona została napisana w czystym HTML-u, ale znajdują się na niej także nieobsługiwane przez Lynx elementy – screenshot działającej przeglądarki wyświetlającej odwiedzaną właśnie stronę oraz… zadeklarowana w JavaScript reklama z Google AdSense. Na czymś zarabiać trzeba.

Link do pobrania najnowszej wersji przekierowuje do strony lynx.invisible-island.net, również bardzo klimatycznej i opatrzonej informacją Viewable With Any Browser w stopce. Po zajrzeniu do źródła czar jednak nieco pryska na widok plików .css.

lynx przeglądarka pobieranie

Instalacja Lynx

Na stronie znajdziemy kompilowalny kod źródłowy oraz windowsowe binarki. Ja jednak lubię upraszczać sobie życie i w celu instalacji Lynx odpalę swoje amatorskie Ubuntu, po czym wpiszę:

 sudo apt install lynx

Po pobraniu niespełna 5,5 megabajów, Rysiek staje się gotowy do użytku.

Użytkowanie 

Czas więc sprawdzić przeglądarkę zgodnie z jej podstawowym przeznaczeniem. Zacznijmy od najpopularniejszej strony w internecie:

lynx google.com

Po chwili oczekiwania oraz pytaniach o poszczególne pliki cookies, na które można odpowiedzieć akceptuj, nie akceptuj, zawsze akceptuj, nigdy nie akceptuj, prezentuje się nam strona główna wyszukiwarki Google w całej swej tekstowości:

przeglądarka lynx google

Nawigacja okazuje się zaskakująco wygodna. Strzałkami góra / dół na klawiaturze przechodzimy pomiędzy poszczególnymi pozycjami takimi jak linki oraz pola do wpisywania tekstu. Strzałka w lewo umożliwia cofnięcie się do poprzedniej strony, zaś strzałka w prawo – przejście do zaznaczonego linku. W tym ostatnim celu można użyć także Entera. Klawisz „H” wyświetla pomoc, „O” to opcje, „P” to drukowanie z możliwością między innymi lokalnego zapisania strony oraz wydruku z drukarki podpiętej przez terminal vt100. Klawisz „G” umożliwia przejście do dowolnego adresu URL bez opuszczania przeglądarki, „M” cofa do ekranu głównego, „Q” wychodzi z programu, „/” pozwala przeszukiwać wyświetlaną stronę pod kątem wprowadzonych słów (taki odpowiednik Ctrl + F), a klawisz „delete” wyświetla historię przeglądania. Proste.

Spróbujmy więc wyszukać informacje o przeglądarce Lynx w Google. W tym celu należy strzałkami góra / dół przejść do pola wyszukiwania i wpisać pożądane hasło, a następnie zatwierdzić je enterem.

lynx browser

Teraz wystarczy już dotrzeć do „Szukaj w Google” i wybrać ten link przy pomocy entera lub strzałki w prawo. Oto wyniki wyszukiwania:

Zobaczenie internetu, a szczególnie tak popularnej witryny jak Wyszukiwarka Google poprzez Lynx jest zdecydowanie niecodziennym przeżyciem. Oczywiście nie mogłem się także powstrzymać przed sprawdzeniem, jak będzie prezentować się Magnifier.pl w wersji tekstowej. Oto lista artykułów ze strony głównej.

lynx magnifier

Po zakończeniu przeglądania wystarczy już kliknąć klawisz „Q” na klawiaturze, przetrzeć najeżone terminalowymi literkami oczy i odpalić Chrome’a lub inną ulubioną przeglądarkę w celu obejrzenia śmiesznych kotków na YouTubie. Albo reklam. YouTube to przecież głównie reklamy.

Alternatywy 

Oczywiście Lynx nie jest jedyną przeglądarką działającą w terminalu. Jest natomiast najstarszą i najsłynniejszą. Popularną (o ile można tak powiedzieć o przeglądarkach działających w terminalu) alternatywą jest Browsh, nazywany niekiedy następcą Lynksa. Obsługuje HTML5, CSS3, JavaScript, grafiki, wideo, a nawet WebGL. To całkiem nowoczesna przeglądarka upchnięta w linuksowy terminal. Możliwa jest nawet nawigacja z wykorzystaniem myszki.

browsh lynx przeglądarki
Magnifier.pl w przeglądarce Browsh

Jego głównym zastosowaniem jest działanie na serwerze pozbawionym interfejsu graficznego z możliwością uzyskania zdalnego dostępu poprzez SSH / Mosh lub z innej przeglądarki poprzez HTTP.

Warto wspomnieć także o innych projektach. Links2 to zmodernizowana wersja przeglądarki Links (której nie należy mylić z opisywanym Lynksem), potrafi działać w trybie tekstowym lub graficznym, a także obsługiwać podstawowy JavaScript. Forkiem Linksa jest także ELinks – w przeciwieństwie do Links2 brakuje mu obsługi JS oraz trybu graficznego, możliwa jest jednak nawigacja przy użyciu myszki. ELinks radzi sobie z menu typu drop-down, a także potrafi wyświetlać grafiki w dodatkowym okienku. Ostatnią alternatywą jest w3m, który podobno znacznie lepiej radzi sobie z rozbudowanymi stronami prezentując je w bardziej czytelny i rozbudowany sposób. Nie próbowałem, wierzę na słowo.

W poszukiwaniu sensu

Przeglądanie wizualnego medium, którym bez wątpienia jest internet, może wydawać się fanaberią, zabawką lub oknem dla świat dla tych, którzy nie przyjmują do wiadomości rozwoju technologii informatycznych i utknęli gdzieś w czasach DOS-a 4.0. Poważne astosowania dla przeglądarek takich jak Lynx jednak jak najbardziej istnieją. Sprawdzają się one na maszynach pozbawionych systemu operacyjnego z interfejsem graficznym, umożliwiając dostęp do stron internetowych i działając przy tym zazwyczaj poprzez SSH, telnet lub w nowocześniejszych wersjach – HTTP i normalną przeglądarkę. Jednocześnie potrafią zapewnić wysoki poziom bezpieczeństwa, kluczowy w przypadku zastosowań serwerowych, który wprost wynika z ograniczonych możliwości lub całkowitym braku obsługi skryptów. Wycięcie multimediów pozwala także na pracę w lokalizacjach pozbawionych dostępu do szybkiego internetu. Webmasterzy i specjaliści od SEO wykorzystują niekiedy przeglądarki działające w trybie tekstowym w celu analizy sposobu, w jaki crawlery internetowe widzą stronę. Jest to kluczowe przy pozycjonowaniu w popularnych wyszukiwarkach. Przeglądarki takie potrafią także ułatwić wyszukiwanie linków na stronie, zautomatyzowane wprowadzanie danych, sprawdzanie nawigacji i linkowania, a także ekstraktowanie (scraping) danych.

Na koniec ciekawostka. Richard Stallman, twórca projektu GNU oraz ewangelizator wolnego oprogramowania, człowiek dosyć… specyficzny, w ten sposób opisuje swój sposób na korzystanie z internetu:

Zazwyczaj nie łączę się ze stronami bezpośrednio z mojego komputera, oprócz tych z którymi jestem związany (m.in. stallman.org). Zwykle wysyłam maila z adresem strony która mnie interesuje do specjalnego programu, który następnie pobiera ją dla mnie i wysyła z powrotem. Oglądam taką stronę za pomocą przeglądarki lokalnie, chyba że można łatwo przeczytać tekst bezpośrednio w HTML. Jeśli nie, próbuję najpierw przy pomocy Lynx, potem za pomocą przeglądarki Konqueror, bo nie pobiera dodatkowych plików z innych stron.

W ten sposób Stallman próbuje ominąć wszelkie śledzące skrypty, a także nie-wolne kodeki i formaty, niezgodne z jego światopoglądem skupiającym się na rozwoju oraz popularyzacji wolnego oprogramowania.