LXF160:Текстовый браузер
|
|
|
Содержание |
Elinks: Текстовый Интернет
Аскетические наклонности Тихона Тарнавского внушают ему легкую неприязнь к графическим наворотам – в том числе и у web-браузеров.
Сколько бы Интернет ни развивался в сторону интерактивности, графики и видео, а все же значительную его часть по-прежнему составляет и будет составлять текстовая информация. И при работе с этой текстовой информацией распространенные ныне полнофункциональные и тяжеловесные браузеры часто оказываются избыточными. И дело даже не только в тяжеловесности как таковой, хотя по требовательности к ресурсам компьютера, особенно при множестве открытых вкладок, такие браузеры растут примерно с такой же скоростью, что и мощность самих компьютеров. Зачастую лишняя информация в виде картинок, флэш-роликов или боковых меню сайта оказывается действительно лишней и мешает воспринимать информацию основную.
В таких случаях и бывает полезно воспользоваться браузером текстовым, который всю эту лишнюю информацию сам по себе тщательно скрывает. Последнее время такие браузеры почти забыты и считаются отсталыми и недоразвитыми. И совершенно незаслуженно, так как есть среди них один, некоторыми своими возможностями даже превосходящий ряд своих графических собратьев. Именно эти его возможности мы сейчас и рассмотрим подробнее. Называется он elinks. Название отсылает нас к другому консольному браузеру – links, от которого герой этой статьи и происходит (подробнее см. врезку «Родословная героя»). Изначально оно происходило от “experimental links”. Со временем расшифровка была переименована в “extended/enhanced links”, то есть “расширенный/улучшенный links”.
Мы расскажем об основных принципах работы с elinks, а как именно эту работу организовать – уже дело личное; как и то, в каких случаях использовать его, а в каких – полновесный графический браузер. Обратите внимание: хотя стабильной считается версия elinks 0.11, использовать нужно версию 0.12pre1 и выше (актуальная версия – 0.12pre5), так как только в ней появилась поддержка локали UTF-8, которая используется по умолчанию практически во всех современных дистрибутивах. На практике эта версия ведет себя вполне стабильно.
Главное — начать
А начать нужно с открытия некого адреса, будь то страница в Интернете или локальный файл. В начале работы, когда у вас еще нет собственноручно созданных закладок и сокращений для адресов, простейший способ – воспользоваться окном ввода адреса. В стандартной конфигурации это окно открывается автоматически при запуске браузера или открытии новой вкладки. Если в вашем дистрибутиве умолчания изменены, его можно вызвать клавишей g (от “go” – «пойти» или «перейти») и в нем ввести нужный адрес. Можно также задать адрес в виде параметра командной строки при запуске elinks, как и для многих других браузеров. Зайдя на некую web-страницу, логично будет перейти к базовой навигации: прокрутке страницы и переходу по ссылкам. Сначала только скажем пару слов в целом о концепции управления elinks.
Обычный режим работы с консольным браузером подразумевает управление исключительно с клавиатуры. После получения минимальных навыков это очень удобно, но поначалу скорее всего окажется не слишком привычным. Поэтому сразу пара советов. Первый: в отличие от других консольных браузеров, elinks полностью поддерживает управление мышью. Правую кнопку скорее всего перехватит эмулятор терминала, но она и не нужна: прокрутка доступна по вращению колесика мыши, а все остальное управление осуществляется «одной левой». Если же вам понадобится использовать мышь для выделения текста или вставки его нажатием средней кнопки (колесика), удерживайте Shift: это временно отключит «мышиное» управление браузером и переведет мышь в «обычный» режим.
Впрочем, управление с клавиатуры на практике оказывается куда удобнее и быстрее, так что перейдем ко второму совету: не старайтесь заучить умолчательное расположение управляющих клавиш – особенно если они вам не покажутся удобными. Elinks – добротно проработанная программа в этом смысле, и полностью следует разумной концепции: компьютер – всего лишь инструмент, он должен уметь подстраиваться под человека, вместо того, чтобы насильно переучивать его под себя. Практически все поведение программы поддается тонкой настройке, и в том числе управляющие клавиши. Более того, настроить их, как и любые другие опции, можно двумя различными способами на выбор: не только традиционным для GNU/Linux текстовым конфигурационным файлом, но и через систему меню в визуальном интерфейсе браузера. Впрочем, к настройкам мы вернемся позже; сейчас скажу лишь, что в интерфейсе браузера все они доступны из меню, по умолчанию вызываемого клавишей Esc. А сейчас поговорим о базовой навигации.
Для выбора ссылок и перехода по ним в elinks используется так называемая навигация в стиле lynx [lynx-style navigation], полностью завязанная на стрелки (клавиши управления курсором). Стрелками вниз и вверх курсор перемещается к следующей и предыдущей ссылке соответственно. Если на экране больше нет ссылок в этом направлении, страница проматывается на один экран вверх либо вниз (как по клавишам PageUp и PageDown), чтобы отобразить соседнюю ссылку, на которую и устанавливается курсор. Стрелка вправо (как, впрочем, и клавиша ввода) используется для перехода по ссылке (то есть «вперед»). А стрелка влево – для возврата на предыдущую страницу («назад»). Это как раз те привязки, от которых я вам не советую отказываться, даже если поначалу они покажутся неудобными: при длительном (читай: привычном) использовании что-либо более сподручное придумать непросто. Можно также отредактировать вручную URL текущей страницы по клавише G (Shift+g) или выбранной ссылки – E (Shift+e).
Прокрутка по чуть-чуть тоже доступна, по умолчанию она назначена сразу на две пары клавиш: Ins/Del и Ctrl-p/Ctrl-n. Здесь задействована удобная особенность настройки клавиш в elinks: каждое действие может быть привязано одновременно к любому количеству управляющих клавиш. При желании вы можете как назначить новые клавиши для короткой прокрутки, так и изменить количество строк, на которые будет прокручиваться страница за одно нажатие.
Вполне возможно, что по умолчанию elinks запустится у вас в монохромном режиме. Это легко исправить: в большинстве дистрибутивов он собран с поддержкой 256 или по крайней мере 88 цветов. Даже если авторы вашего дистрибутива не удосужились собрать elinks «достаточно цветным», а вам неохота возиться с его пересборкой, 16 цветов должны быть доступны всегда. Достаточно выбрать цветовую схему в настройках, вызвав их из меню: Настройка > Настройки терминала (рис. 1). После этого можно сохранить настройки кнопкой Save в нижней части окна. Обратите внимание: настройки сохраняются отдельно для каждого типа терминала (то есть каждого значения переменной $TERM). Это позволяет иметь при необходимости отдельные настройки для каждого эмулятора терминала (если вы их используете несколько) и отдельно для голой консоли (если вы ее используете вообще). Цветной elinks будет выглядеть примерно как на рис. 2. Возможно, вы не привыкли к светлому фону в терминале – на этот предмет у elinks есть специальная опция: помимо полного отображения цветов, заданных самой web-страницей, доступен вариант «кроме цвета фона», как и полное игнорирование этих установок и отображение всего умолчательными цветами. Установка опций вызывается пунктом меню Настройка > Options manager (увы, интерфейс браузера на русский язык переведен лишь частично), либо клавишей o (по умолчанию). А за вышеописанные варианты отображения цветов отвечает опция Document > Default color settings > Use document-specified color [Документ > Настройки цветов по умолчанию > Использовать цвета, указанные в документе]. Значение по умолчанию (все цвета из документа, включая цвет фона) – 2; цвета документа, кроме фона – 1; все цвета из настроек браузера – 0.
Но вернемся к навигации по сайтам. Пока мы говорили только о прямых переходах по ссылкам и возврате по истории. Но мало кто в наше время может представить полноценную навигацию без таких вещей, как...
Вкладки и закладки
Конечно же, elinks, как и любой современный браузер, умеет работать со вкладками. По умолчанию активную ссылку можно открыть в фоновой вкладке клавишей t (от слова “tab” – «вкладка»). А по нажатию T (т. е. Shift + t) откроется новая вкладка без перехода по ссылке, по умолчанию сразу с окном для ввода нового адреса. Функция открытия ссылки в новой активной вкладке, конечно же, тоже присутствует, но по умолчанию клавиша ей не назначена. Видимо, разработчики подразумевают такой стиль работы с браузером, когда эта функция почти не используется: ссылки «на потом» открываются в фоновых вкладках, а «на сейчас» – в этой же, с последующим возвратом назад по истории. В чем-то этот подход оправдан: у elinks, в отличие от популярных графических браузеров, есть, помимо кэша, еще и специальная область в оперативной памяти, в которой временно хранятся уже отрисованные страницы. Поэтому возврат на предыдущую страницу происходит, условно говоря, даже быстрее, чем нажатие на клавишу «влево».
Если же умолчательный стиль навигации вам почему-либо неудобен, это как раз тот случай, когда можно перейти к настройке управляющих клавиш – Настройка > Keybinding manager или клавиша k (по умолчанию). В этом окне (как, впрочем, и в окне опций) имеется кнопка Поиск. Попробуйте, развернув пункт Main mapping, нажать эту кнопку и ввести в появившейся строке “tab” [вкладка]. Теперь найти нужный пункт будет совсем просто: “Open the current link in a new tab [Открыть текущую ссылку в новой вкладке]”.
Функция создания новой вкладки в elinks устроена не совсем обычно. Она добавляет не пустую вкладку, а с копией текущей открытой страницы. Это позволяет использовать вкладки вместо временного маркера на странице. Например, вы читаете некую страницу подряд, и тут вам понадобилось посмотреть что-то в самом ее начале или в конце, или найти нужную фразу. Создайте новую вкладку; перейдите к нужному месту или воспользуйтесь поиском; а затем закройте вкладку – первоначальная все это время будет оставаться ровно на том же месте, где вы ее покинули.
Можно, разумеется, открывать и по нескольку таких временных вкладок сразу.
Вообще, не бойтесь создавать много вкладок: elinks весьма нетребователен к ресурсам по сравнению с графическими браузерами, и даже с несколькими десятками (а то и сотнями) открытых вкладок не занимает критичного для нынешних машин объема памяти. Перемещаться между открытыми вкладками можно с помощью клавиш < и > (т. е. Shift + и Shift +.), а передвигать сами вкладки вправо и влево – клавишами Alt + < и Alt + > (Alt + Shift+ и Alt + Shift+.). Закрыть текущую вкладку позволит клавиша c (от “close” – «закрыть»).
Создав несколько (а тем более много) вкладок, наверняка захочется запомнить, какие именно страницы в них открыты. Чтобы добавить страницу в закладки, нажмите a (от “Add bookmark” – «добавить закладку»). По клавише A (Shift + a) можно добавить в закладки ссылку, на которой стоит курсор. В обоих случаях будет предложено отредактировать только имя закладки и URL; упорядочение закладок доступно из менеджера закладок, вызываемого клавишей s (здесь нет смысловой расшифровки; клавиша используется из-за соседнего расположения с a на стандартных клавиатурах).
Еще одна функция, связанная с закладками, не имеет привязанной клавиши по умолчанию, но я вам советую сразу же это исправить, т. к. на практике эта функция очень удобна – она добавляет в закладки сразу все открытые в данный момент вкладки в виде отдельной группы, имя которой можно задать в момент добавления. Открыв несколько вкладок по сходной тематике, вполне резонно добавить их в закладки именно так.
Кроме ручного добавления и редактирования посредством менеджера закладок, закладки используются еще для одной задачи – вместо «менеджера сеансов [session manager]». По умолчанию все эти настройки выключены, а включить их можно в разделе опций User interface > Sessions. Здесь доступно то, что должен уметь любой уважающий себя современный браузер: автоматическое сохранение сеанса при выходе и загрузка при запуске браузера (Auto save session и Auto restore session). Кроме того, есть опция периодического сохранения сеанса на случай некорректного завершения работы браузера или системы (Periodic snapshotting). По умолчанию первая опция сохраняет «сеанс» под именем “Auto saved session”, а вторая – “Session snapshot – <дата>, <время>”. Автосохранение будет перезаписываться, а «снимки [snapshots]» придется время от времени удалять вручную.
На работе с окном закладок подробно останавливаться не будем – там все достаточно очевидно. Добавим только, что во всех подобных окнах (опции, назначение клавиш, cookie manager и т. д.) стрелки вверх-вниз перемещают курсор по пунктам списка, влево-вправо – по управляющим клавишам, а пробел раскрывает и скрывает подпункты в списке.
Настройка и расширенные возможности
Как уже упоминалось, elinks поддерживает два способа настройки: в интерфейсе браузера, через пункты Options manager, Keybinding manager и Настройки терминала в меню «Настройка»; и посредством редактирования конфигурационного файла ~/.elinks/elinks.conf. Советуем воспользоваться обоими способами.
Первый хорош для первоначальной настройки под свои предпочтения: пройтись «от и до» по всем пунктам и подпунктам всех меню и все «оттюнинговать» на свой вкус (не забывая сохранять результаты «тюнинга» кнопкой Save [Сохранить] в тот самый elinks.conf). Второй предпочтительнее для внесения точечных правок в процессе работы: поиск по спискам меню в интерфейсе присутствует, но он не столь удобен и гибок, как возможности поиска по текстовому файлу средствами достаточно продвинутого редактора или традиционных утилит командной строки.
Все настройки щедро комментированы, причем комментарии присутствуют как в меню, так и в текстовом конфиге. Увы, на русский они (пока?) не переведены, так что если нет знания английского хотя бы на самом базовом уровне (которого для прочтения комментариев вполне достаточно), Google Translate вам в помощь.
Останавливаться на конкретных пунктах настройки мы не будем, поскольку, как уже говорилось, политика elinks – не «быть хорошим для всех» (что пока удавалось, как известно, только червонцу), а «предоставить всем возможности сделать все на свой вкус». А предпочтения у каждого свои.
Первую из еще не упомянутых возможностей, пожалуй, расширенной можно назвать разве что с некоторой натяжкой: в самых популярных браузерах она присутствует уже давно. Речь об автоматическом сохранении логинов и паролей к различным сайтам. При входе по логину и паролю на любой сайт, для которого именно эта пара логин/пароль еще не сохранена, появится окно с вопросом, нужно ли сохранять ее сейчас (рис. 3), с тремя вариантами ответа: сохранить, не сохранять сейчас, не сохранять никогда для этого сайта. При сохранении и логин, и пароль шифруются.
Хранится все это добро в файле ~/.elinks/formhist (как и все остальные файлы в этом каталоге, он текстовый), а в интерфейсе доступно по пункту меню Tools > Form history. При желании любой сохраненный логин в каждом из этих двух мест можно удалить. Удаляя в интерфейсе, не забывайте опять-таки нажимать кнопку Save.
Одна из самых удобных возможностей, редко встречающихся в других браузерах, в то же время и самая простая – даже, как на первый взгляд может показаться, примитивная: это отключение таблиц. Действительно, зачем оно, казалось бы, в реальной жизни нужно? Но на практике при работе с текстовой информацией такое зачастую оказывается незаменимой штукой, поскольку позволяет «избавиться» от так называемой табличной верстки множества сайтов – к примеру, от боковых колонок с разнообразными ссылками, которые, видимо, по мнению авторов сайтов страсть как нужны при чтении основной информации; а на деле только мешают. В лучшем случае, они отнимают место по краям, оставляя для основного текста узкую полоску. В худшем, если сайтостроители не озаботились подгонкой по ширине окна или реализовали ее неправильно, основной текст, наоборот, растянется шире чем нужно, вынуждая к горизонтальной прокрутке туда-обратно на каждой строчке. Отключите таблицы (по умолчанию клавиша не назначена, но назначить ее можно, как и на любое другое действие) – и левая колонка «уйдет» в самый верх, а правая в самый низ; а основной текст впишется ровно в ширину окна.
О возможностях elinks можно говорить долго, и размеров статьи для этого, конечно, недостаточно. Но еще одну возможность хотя бы вкратце упомянуть все же стоит. Называется она “URI rewriting” (дословно: «переписывание ссылок») и настраивается в меню опций или в файле elinks.conf.
Раздел, отвечающий за эту возможность, делится на два подраздела: “Dumb prefixes” (дословно: «тупые (или глупые) префиксы») и “Smart prefixes” (дословно, «умные префиксы»).
Первые – это, по сути, текстовый вариант закладок: каждый из них сопоставляет некому буквосочетанию одну конкретную ссылку. Например, можно задать, что при вводе в строке адреса букв “lxf” вы будете автоматически попадать на сайт linuxformat.ru. Со вторыми все намного интереснее (недаром их назвали «умными»). Здесь можно подставлять в адрес страницы «аргументы» префикса. К примеру, заданный в умолчательном конфиге «умный» префикс ‘g’ превратит строку “g набор слов” в http://www.google.com/search?q=набор+слов, т. е. попросту найдет заданную фразу в Google.
Аналогично можно задать «умные» префиксы для других поисковых систем, википедии, онлайн-словарей (к примеру, lingvo.yandex.ru), поиска по форумам... да практически для чего угодно. Для этого достаточно один раз выполнить нужный поиск вручную, а затем подставить в полученную ссылку шаблон ‘ %s’ вместо конкретного текста. |
Родословная героя
Родоначальником семейства консольных браузеров считается браузер lynx. Название его – своеобразный каламбур. С одной стороны, оно созвучно со словом links, то есть ссылки. С другой, “lynx” по-английски означает «рысь», что намекает на его «рысью стремительность», то есть скорость работы. По мере развития функционала графических браузеров эта скорость осталась, пожалуй, единственным весомым преимуществом lynx, которое перевешивалось все большим и большим числом недостатков.
Со временем идеи lynx получили развитие в новом проекте с более незамысловатым названием links. Он отличался от родителя более широкими функционалом (в частности, поддержкой таблиц и фреймов) и возможностями настройки. Однако со временем и этого стало не хватать, и от links отпочковались примерно в одно время сразу два проекта.
Links2, впоследствии получивший развитие как “links hacked”, приобрел даже способность графического отображения web-страниц в отдельном режиме, равноправном с оригинальным текстовым. А elinks пошел по другому пути – создания максимально удобного и функционального чисто текстового браузера. Позже некоторые наработки стали портировать из links2 в elinks и обратно. Но затем развитие links2/links-hacked практически прекратилось, а elinks, таким образом, стал основной линией развития текстовых браузеров в целом.
Дальний родич
Существует параллельная ветвь развития текстовых браузеров. Точнее, даже не ветвь, а одно-единственное звено – браузер w3m от японских разработчиков. Его история ненамного короче lynx/links: разработка lynx началась в 1992 году, а разработка w3m – в 1995. Но по возможностям он во многом уступает elinks. В частности, у w3m вообще нет кэша; нет и возможности фоновой загрузки страниц, то есть пока страница загружается и отрисовывается, переключиться на другую вкладку или создать новую нельзя. Это часто бывает достаточно неприятно, особенно на медленных соединениях. Нет в w3m и столь гибкой настройки (например, для переназначения клавиш нужно перекомпилировать браузер), и некоторых из расширенных возможностей elinks.