Мне, как и многим на хабре, очень нравится текстовый редактор vim. Частенько бывает так, что поработав долгое время в vim, ты по привычке пытаешься использовать его комбинации и в других программах и искренне удивляешься «Ну почему же они не сделали такое удобное управление, как в vim?». Для таких людей и написана эта статья. Под катом я постараюсь описать некоторые программы, которые имеют похожее на vim управление.
Браузеры
Наверное каждый вимер знает о плагинах к firefox — vimperator и pentadactyl, которые позволяют превратить вашу лису почти что в настоящий vim. Для chrome есть аналогичный плагин — vimium. Об этих плагинах написано очень много, в том числе и на хабре. Поэтому я не буду повторятся здесь, но упоминуть их я был просто обязан.
uzbl-browser
Этот браузер многие считают самым лучшим, из минималистичных. Он написан в стиле философии unix — делать только одну вещь, но делать ее хорошо. В итоге, он ничего толком не умеет, кроме как открывать веб страницы. Все остальное (даже табы) реализуется с помощью сторонних плагинов. Для взаимодействия с другими программами используется стандартный ввод и вывод, что делает uzbl очень гибким. Конечно же, все управление происходит в стиле vim.
XXXTerm
В отличии от uzbl, имеет все что нужно для стандартного серфинга — журнал посещений, вкладки, поиск и вообще, имеет графический интерфейс похожей на любой обычный браузер, но при этом, имеет и vim управление. Им вполне смогут пользоваться все члены вашей семьи, в независимости от предпочтений.
Cream-browser
Очередной минималистичный браузер, который на вид и по функционалу практически ничем не отличается от firefox с установленным vimperator'ом. Только намного легче и экономичнее, в плане ресурсов.
Netrik
А это уже текстовый браузер, которые будет работать везде, в том числе и на сервере без графического интерфейса. Умеет css и javascript, плюс управление в стиле vim, разумеется.
Читалки
apvlv
Читалка для pdf и djvu. Пока еще немного сыровата, но функционала вполне достаточно.
Zathura
Это уже более продвинутая читалка, с гораздо большим функционалом. Но к сожалению, она не поддерживает djvu, а только pdf формат. Надеюсь, эта будет исправлено в будущих версиях.
Evince
Решил включить в список и эту программу. От вима ей досталась лишь навигация: hjkl, все остальное же, как у обычных читалок.
less
Ну и конечно же стандартный просмоторщик текстовых документов в терминале — less, тоже поддерживает vim управление. Тут и навигация, и поиск, и выполнение команд в системе… все, как у vim.
Командные оболочки
Мы можем превратить выполнение команд в настоящий праздник, переведя интерпретатор команд в режим vi. По дефолту, стандартные оболочки используют стиль емакс. Чтобы поставить более привычный режим нужно прописать в конфиге следующее:
для bash:
set -o vi
для zsh:
zle -N edit-command-line
bindkey -M vicmd v edit-command-line
Прекрасно! Теперь мы можем редактировать командную строку намного комфортабельнее, прям, как в виме.
Файловые менеджеры
vifm
Консольный двух панельный файловый менедежр в стиле вим. Достаточно молодой проект, но уже вполне пригоден для постоянного использования. Умеет достаточно много — маркеры для быстрого вызова каталогов, переход к файлу по его порядочному номеру в каталоге (G8, например), поиск в стиле sed, и многое другое.
ranger
Файловые менеджер, написанный на python (а значит кросплатформенный), очень удобен в использовании. Присутствует vim навигация.
Почтовые клиенты
Mutt
Консольный почтовый клиент, который умеет работать с imap и smtp. Очень мощный в плане настройки. Все управление строится на горячих клавишах, а листинг писем использует навигацию hjkl. Командная строка также вызывается с помощью двоеточия, а в качестве редактора для написания письма можно легко подключить сам vim.
HEX редакоры
Bviplus
шестнадцатеричный редактор, который использует псевдографический интерфейс ncurses.
Медиалееры
Cmus
Очень легкий текстовый плеер, написанный с использованием ncrurses. Умеет дополнения по TAB, очереди, фильтры. Поддерживает многие форматы файлов и выводов звука. Жаль, что подобного я не нашел для mpd.
Органайзеры
Tudu
Представляет из себя иерархический список ваших задач. Умеет предупреждать о приближающейся дате выполнения задания. Использует ncurses. Отличная и очень полезная вещь!
И многое, многое другое...
Множество редакторов и IDE содержат плагины, позволяющие редактировать текст в стиле vim. Описать их все просто невозможно, но я уверен, если ваше любимое IDE достаточно распространенное, то вы обязательно сможете найти плагин для его вимизации :).
А какие еще подобные программы вы знаете? Давайте продолжим список в комментариях!
Автор: lirvux