В юности у меня был 8-ми разрядный компьютер без мыши, и когда она наконец появилась, радости не было предела. А вот теперь обратная тенденция, задалбывает постоянно мышковать в интернете, отрывать руку от клавиатуры. Казалось бы, куда денешься, но...
К браузеру firefox есть плагин tridactyl-vim. Превращает мышь в рудимент чуть менее чем полностью. Название происходит от греческого tri (три) и δακτυλος (палец), то есть трёхпалая конечность, как видно на логотипе. Идеологически основан на консольном текстовом редакторе vim. Поэтому обычные пользователи скорее всего в ужасе убегут, а сумевшие выйти из vim без резета попадут в привычную среду обитания.
Ниже привожу свой конспект основных возможностей из Tridactyl tutorial, куда можно войти по :tutor (нажать двоеточие и ввести в консоли tutor )
РЕЖИМЫ РАБОТЫ
За Tridactyl стоит идея позволить вам более эффективно перемещаться в Интернете с помощью клавиатуры. Tridactyl превращает Firefox в модальный браузер, то есть у него есть несколько различных режимов работы, как у Vim.
Каждая вкладка может одновременно находиться только в одном режиме, и каждый из этих режимов может выполнять совершенно разные операции. Вы можете думать об этом как о трансформере, если хотите. Вам необходимо ознакомиться с пятью основными режимами:
Normal mode — основной режим навигации и входа в другие режимы, вернуться в него из которых можно по клавишей <Escape>. Команды вводятся сразу на странице, лишь бы без фокуса на поля ввода. В этом режиме вы будете проводить большую часть своего времени. Однократно пропустить на страницу нажатие клавиши без обработки (не переходя в Ignore mode) можно комбинацией: <Ctrl+v> и, например, Esc.
Hint mode — вход клавишей <f> В этом режиме элементы страницы выделяются кодами для перехода к ним. Если на странице есть только одна ссылка, выполняется немедленный переход по ней. Подсказки отображаются в виде прописных букв, но вы должны вводить строчные буквы. Чаще всего используется для перехода по ссылкам, но у него есть много других подрежимов. Выход из режима по <Escape> или <Enter>.
Visual mode (экспериментальный) — вход клавишей <v> Аналогично предыдущему, но служит для выделения текста, поиска фрагментов в истории по <s> или <S> или копирования в буфер обмена по <y> или ^c. Выход из режима по <Escape>.
Command mode — вход по символу <:> Режим ручного ввода команд, переназначение клавиш, и многое другое. Например открытие справки, по которой я пишу этот конспект. Выход из режима по <Escape> или <Enter>.
Ignore mode — включается и выключается одной из следующих комбинаций:<Shift-Insert>, <Ctrl-Alt-Escape>, <Ctrl-Alt-Backtick>, или <Shift-Esc>. Этот режим пропускает на страницу все нажатия без обработки, полезен, если вы вспоминаете поговорку "vim - бибикает и всё портит". Полезен когда на странице есть собственные комбинации клавиш, конфликтующие с плагином. Однако не выходя из данного режима можно однократно вызвать команду Normal mode предварительно нажав <Ctrl+o>.
В Normal и Ignore можно однократно вызывать противоположенный режим:
Ctrl+o — В режиме Ignore передать нажатие плагину
Ctrl+v — В режиме Normal пропустить нажатие на страницу минуя плагин
Сразу привыкаем к особенности vim — команды работают только в латинской раскладке! А ещё все клавиши в Normal mode привязаны к исполняющим их командам, и их можно переназначать в command mode.
Перемещение по странице согласно идеологии vim:h — влево
j — вниз
k — вверх
l — вправо
H — назад по истории (аналог alt+с_rigth)
L — вперёд по истории (аналог alt+с_left)
gg — в конец страницы
G — в начало gu — назад на одно вложение по URL
gU — открыть корневой домен текущего URL
r / R — перезагрузить страницу или жёстко перезагрузить.
. — повторить последнее действие. ;; — выбрать фокус курсора на странице
[[ / ]] — Навигация назад / вперёд по разбитым на страницы материалам, например комиксам, поисковым выдачам, темам форумов.
zi — (zoom in) Увеличить масштаб
zo — (zoom out) Уменьшить масштаб
zz — (zoom off) Сбрсоить масштабирование
g^ / g$ — перейти к первой / последней вкладке gt / gT — предыдущая / следующая вкладка d — закрыть текущую вкладку
u — восстановить закрытую ранее вкладку Открытие вкладок из history and bookmarks w — (winopen) открыть новое окно с вкладкой из списка в command mode o — (open) открыть в текущей вкладке url из списка в command mode t — (tabopen) открыть новую вкладку из списка в command mode
Эти же команды заглавными (WOT) буквами открывают команду с вставленным URL текущей страницы:W — (winopen) открыть текущую страницу в новом окне O — (open) открыть в текущей вкладке её саму T — (tabopen) дублировать текущую вкладку
s — поиск в текущей вкладке в поисковой системе по введённому запросу.
S — поиск в новой вкладке. Кстати слово search можно заменить на bing, duckduckgo, или scholar p — открыть в текущей вкладке поисковую систему с запросом из буфера обмена
P — открыть в новой вкладке поисковую систему с запросом из буфера обмена
Многие нажатия в Normal mode переводят в другой режим для выполнения заданной операции.
f — перейти по ссылке, выбирая её в hinting mode. F — открыть ссылку в фоновой вкладке, выбирая её в hinting mode. gi — сфокусироваться в поле ввода на странице (перебор нескольких полей по tab)
b — (brings current tabs) выбор текущей вкладки в командном режиме. Выбор тремя способами: 1) табуляцией + Enter. 2) ввести порядковый номер вкладки + Enter. 3) фильтрация (по заголовкам и URL) по вводимой маске + Enter. Можно комбинировать с двумя предыдущими.
yy — (yank) скопировать текущий URL в буфер обмена. ;p — (paragraph) скопировать в буфер обмена параграф по коду в hint mode
;y — скопировать в буфер обмена url по коду в hint mode ;k — удалить элемент страницы по коду (до перезагрузки страницы) ;i / ;I — открыть изображение в текущей / новой вкладке.
Поиск на странице (^ это Ctrl): / — ввод запроса
^g — следующее совпадение
^G — предыдущее совпадение
Выделение текста на странице (кроме F7 режима firefox). v — (visual mode) выбрать начало выделения, затем изменить его клавишами vim-cursor: hjkl, а также w, e,b - сразу на слово больше или меньше. 0 — расширить или урезать выделение до начала строки
$ — расширить или урезать выделение до конца строки = — расширить выделение до всей страницы
y — скопировать выделенное в буфер обмена.
S или S — Поиск в выделенном.
Полезные команды Command mode (вводятся без : )
:tabdetach — отсоединить текущую вкладку в новое окно.
:viewsource — открыть в текущем окне исходный код страницы.
Назначение клавиш, примеры:
:bind j scrollline 5 — изменить дефолтное значение скролинга вниз с 10 на 5 строк.
:unbind — снять назначенное действие с клавиши :bind key — узнать какое действие назначено на клавишу key.
Настройки: :set theme dark — установить тёмную тему оформления плагина. Вернуть обратно - default. :set searchengine google — установить поисковую систему по умолчанию. Варианты: bing, duckduckgo, или scholar. blacklistadd https://www.youtube.com/ Выключить плагин на указанном сайте. Подробнее :help blacklistadd
Полезные назначения клавиш:
Отсоединить (gd) или дублировать (gD) вкладку в отдельное окно:
bind gd tabdetach
bind gD composite tabduplicate; tabdetach
Ссылки:
|