Vim. Клавиатура. Броузеры
Расширения для броузеров с поддержкой раскладки Vi.
Содержание
1 Режимы ввода
- Зачастую расширения работают в двух режимах: в режиме команд или в режиме ввода.
- В первом все нажимаемые на клавиатуре клавиши воспринимаются как команды для расширения.
- Во втором режиме нажатиями клавиш, например, можно печатать текст на странице.
- Для перехода в режим команд необходимо нажать кнопку
Esc
, а чтобы оказаться в режиме ввода можно нажатьi
.
2 Общая раскладка клавиатуры
- Все расширения придерживаются базовых соглашений по привязке клавиатуры.
2.1 Навигация по текущей странице
?
: показать диалог справки для получения списка всех доступных клавишh
: прокрутка влевоj
,C-e
: прокрутка внизk
,C-y
: прокрутка вверхl
: прокрутка вправоgg
: прокрутка к верхней части страницыG
: прокрутка к нижней части страницыd
: прокрутка вниз на полстраницыu
: прокрутка на полстраницы вверхf
: открыть ссылку на текущей вкладкеF
: открыть ссылку в новой вкладкеr
: перезагрузкаgs
: просмотр источникаi
: войти в режим вставки; все команды будут игнорироваться до тех пор, пока вы не нажметеEsc
для выходаyy
: скопировать текущий url в буфер обменаyf
: копирование url ссылки в буфер обменаgf
: переход к следующему фреймуgF
: фокусировка основного/верхнего фрейма
2.2 Переход на новые страницы
Для работы со ссылками и другими элементами на странице создаётся временная комбинацию из одной или нескольких символов, которые становятся видны после нажатия на клавишу
f
(илиF
).o
: открыть URL, закладку или запись в историиO
: открыть URL-адрес, закладку, запись в истории на новой вкладкеb
: открыть закладкуB
: открыть закладку в новой вкладкеf
: открыть ссылку в текущей вкладкеF
: открыть ссылку в новой вкладке
2.3 Поиск
/
: войти в режим поискаn
: цикл вперед к следующему найденному совпадениюN
: цикл назад к предыдущему найденному совпадению
2.4 Навигация по истории
H
: вернуться в историюL
: идти вперед в истории
2.5 Управление вкладками
J
,gT
: переход на одну вкладку влевоK
,gt
: переход на одну вкладку вправоg0
: переход на первую вкладку. Для перехода на n-ю вкладку используйте ng0g$
: переход на последнюю вкладку^
: посетить ранее посещенную вкладкуt
: создать вкладкуyt
: дублировать текущую вкладкуx
: закрыть текущую вкладкуX
: восстановить закрытую вкладку (т.е. развернуть команду ‘x’)T
: поиск по открытым вкладкамW
: переместить текущую вкладку в новое окно<a-p>
: закрепить/открепить текущую вкладку<<
: переместить вкладку влево>>
: переместить вкладку вправо
2.6 Использование меток
ma
,mA
: установить локальную меткуa
(глобальную меткуA
)`a
,`A
": переход к локальной меткеa
(глобальная меткаA
): прыжок назад в позицию, предшествующую предыдущему прыжку (то есть до предыдущего перехода `gg`, `G`, `n`, `N`, `/` или
`a ``)
2.7 Дополнительные команды просмотра
]]
,[[
: перейти по ссылке с меткой ’next’ или ‘>’ (‘previous’ или ‘<’) (полезно для просмотра страничных сайтов)<a-f>
: открыть несколько ссылок в новой вкладкеgi
: фокусировка на первом (или n-ом) текстовом поле ввода на странице. Для перебора вариантов используйте <tab>gu
: переход на один уровень вверх по иерархии URLgU
: переход к корню иерархии URLge
: редактировать текущий URLgE
: редактировать текущий URL и открывать его в новой вкладкеzH
: прокрутка до конца влевоzL
: прокрутка вправоv
: переход в визуальный режим; используйтеp=/=P
для вставки и перехода, используйтеy
для перемещенияV
: перейти в режим визуальной строки
3 Расширения для броузеров
3.1 Расширения для Chrome
3.1.1 Vimium
- Сайт: https://vimium.github.io/
- Репозиторий: https://github.com/philc/vimium
- Расширение Chrome: https://chrome.google.com/webstore/detail/vimium/dbepggeogbaibhgnhhndojpepiihcmeb
- Можно в настройках добавить локализованные комбинации клавиш: https://github.com/philc/vimium/wiki/Key-Mappings
- В настройках можно внести в список исключений сайты, на которых вы не хотите использовать сочетания клавиш Vimium.
3.1.2 Surfingkeys
- Репозиторий: https://github.com/brookhong/Surfingkeys
- Расширение для Chrome: https://chrome.google.com/webstore/detail/surfingkeys/gfbliohnnapiefjpjlpjnehglfpaknnc
3.1.3 cVim
- Репозиторий: https://github.com/1995eaton/chromium-vim
3.1.4 Vrome
- Репозиторий: https://github.com/jinzhu/vrome
- Разработка прекращена
3.1.5 Spotlink
- Репозитоий: https://github.com/reindert-vetter/spotlink/
3.2 Расширения для Firefox
3.2.1 Tridactyl
- Репозиторий: https://github.com/tridactyl/tridactyl
- Развитие Vimperator и Pentadactyl
- Расширение для Firefox: https://addons.mozilla.org/en-US/firefox/addon/tridactyl-vim/
3.2.2 Vim Vixen
- Репозиторий: https://github.com/ueokande/vim-vixen
- Разработка прекращена.
- Автор делает теперь Vimmatic.
3.2.3 VimFx
- Репозиторий: https://github.com/akhodakivskiy/VimFx
3.2.4 Vimperator
- Репозиторий: https://github.com/vimperator/vimperator-labs
3.2.5 Pentadactyl
- Репозиторий: https://github.com/5digits/dactyl
3.3 Расширения для Safari
3.3.1 Vimari
- Репозитоий: https://github.com/televator-apps/vimari
3.3.2 sVim
- Репозиторий: https://github.com/flippidippi/sVim
3.4 Расширения для Chrome и Firefox
3.4.1 Vimmatic
- Репозиторий: https://github.com/ueokande/vimmatic
3.4.2 Vimium-C
- Репозиторий: https://github.com/gdh1995/vimium-c
3.4.3 Firevin
- Репозитоий: https://github.com/glacambre/firenvim
4 Интерфейс Windows
4.1 Hunt-n-peck
- Репозиторий: https://github.com/zsims/hunt-and-peck
5 Интерфейс MacOS
5.1 VimMotion
- Репозитоий: https://github.com/dwarvesf/VimMotionApp
5.2 Homerow
- Сайт: https://www.homerow.app/
6 Отдельные броузеры
6.1 Vimb
- Сайт: https://fanglingsu.github.io/vimb/
- Репозиторий: https://github.com/fanglingsu/vimb
- На основе Webkit
6.2 Vieb
- Репозиторий: https://github.com/Jelmerro/Vieb