Emacs

Подробное сравнение Vim и Emacs

Подробное сравнение Vim и Emacs
Сообществу Linux не привыкать к горячим спорам. От обсуждения плюсов и минусов проприетарного программного обеспечения по сравнению с открытым исходным кодом до защиты своих любимых дистрибутивов с рвением рыцаря, защищающего последний редут, пользователи Linux могут быть чрезвычайно самоуверенными, что не позволяет новичкам находить полезную и беспристрастную информацию.

Одна дискуссия, которая несколько десятилетий сбивала с толку новичков, теперь вращается вокруг Vim и Emacs, двух почтенных текстовых редакторов, которые многие опытные пользователи Linux и программисты по-прежнему предпочитают в качестве альтернативы современным редакторам и IDE, таким как Sublime Text, Visual Studio Code или IntelliJ.

В этой статье мы сравниваем Vim и Emacs, чтобы объяснить, почему сравнение этих двух текстовых редакторов похоже на сравнение яблок с апельсинами. К концу этой статьи вы сможете решить, какой из двух текстовых редакторов больше соответствует вашим потребностям и предпочтениям и не стоит ли вам все же придерживаться чего-то более современного.

Философия дизайна

Vim был впервые выпущен в 1991 году как прямой потомок vi, гораздо более старого текстового редактора, ориентированного на экран, который изначально был разработан Биллом Джоем для операционной системы Unix. Создатель Vim, Брэм Мооленаар, первоначально назвал редактором Vi Imitation, но позже решил изменить значение аббревиатуры на Vi Improved. Поклонник программного обеспечения с открытым исходным кодом, Мооленаар выпустил Vim по лицензии благотворительного ПО, поощряя пользователей, которым нравится текстовый редактор, делать пожертвования детям в Уганде.

Как и Vi, Vim должен быть быстрым, легкодоступным и чрезвычайно универсальным. Он предустановлен в большинстве дистрибутивов Linux и доступен практически для всех операционных систем. Поскольку Vim везде, действительно стоит знать хотя бы основы, потому что вы никогда не знаете, когда вам нужно отредактировать текстовый файл в системе, в которой нет вашего любимого текстового редактора.

Emacs существует с 1976 года, и его название расшифровывается как Editor MACroS. Версия Emacs, которую сегодня использует большинство людей, называется GNU Emacs, она была создана не кем иным, как основателем проекта GNU Ричардом Столлманом. Как и Vim, Emacs работает практически на всех операционных системах, с которыми вы когда-либо сталкивались. Однако, поскольку это относительно большая часть программного обеспечения, она обычно не поставляется предварительно установленной.

Причина, по которой Emacs большой, связана с тем, что он намного ближе к операционной системе, чем к текстовому редактору. Он включает полный язык программирования Тьюринга, Emacs Lisp, который позволяет настраивать и расширять Emacs способами, которые уму трудно понять. Чтобы проиллюстрировать, что мы имеем в виду, мы рекомендуем вам посетить веб-сайт GNEVE, видеоредактора для Emacs.

Легкость использования

Изображение выше прекрасно иллюстрирует кривые обучения Vi / Vim, Emacs и других популярных текстовых редакторов. С Vim все, что вам нужно сделать, чтобы начать работу, - это открыть любую шпаргалку, которую вы найдете в Google Images, в отдельном окне и некоторое время поиграть с привязками клавиш. Изначально вы даже не будете знать, как редактировать текстовый файл, но вам потребуется не больше пары часов, чтобы узнать все основы.  Вы даже можете загрузить версию VIM с графическим интерфейсом пользователя, такую ​​как gVim, чтобы добавить меню и панели инструментов для часто используемых команд, что еще больше упростит изучение редактора.

Emacs похож на игру-песочницу. Вы начинаете с коричневой коробки без надписи, в которой есть инструменты, способные выполнить практически все, что вы только можете себе представить, включая редактирование текстовых файлов. Проблема только в том, что нет очевидного способа подойти к этой песочнице. Хотя в Интернете есть шпаргалки и учебные пособия, но вы можете проводить с ними часы, и вы едва прикроете поверхность того, что может делать Emacs. Да, может быть чрезвычайно полезно знать все входы и выходы Emacs, но вы должны спросить себя, стоит ли ваше путешествие затраченных усилий.

Продуктивность

Vim - это быстрый текстовый редактор, который открывается мгновенно и предоставляет пользователям два режима: режим вставки и режим команд. В первом случае вы вводите текст в редактор, а во втором вы вводите сочетания клавиш для выполнения различных команд. Emacs запускается немного дольше, и он немодален, как и большинство современных текстовых редакторов.

Несмотря на то, что Emacs может загружаться до 2-3 секунд в старых системах, большинство пользователей вообще не возражают, потому что они никогда не закрывают его. Вместо этого они открывают Emacs в режиме оболочки, что позволяет им запускать оболочку в Emacs, а не наоборот. С оболочкой, запущенной внутри Emacs, вы можете более или менее жить внутри программного обеспечения 24/7 и использовать его, чтобы делать все, от прослушивания музыки до заметок и игр.

Излишне говорить, что на Emacs легко отвлечься, если вы относитесь к тому типу людей, которые любят возиться с программным обеспечением. Но если вам удастся сосредоточиться и использовать Emacs для улучшения рабочего процесса, ваша продуктивность может взлететь до небес. Для редактирования чистого текста Vim обычно быстрее, но в этом отношении огромную роль играет опыт.

Настраиваемость и расширяемость

И Vim, и Emacs поддерживают плагины, которые могут улучшить их функциональность, Emacs делает шаг вперед в настраиваемости и расширяемости с помощью своего языка программирования Emacs Lisp. Поскольку Emacs Lisp завершен для Touring, его возможности безграничны.

Хотите ли вы искать в Google прямо из Emacs?? Просто запустите следующий код Emacs Lips, введите M-x prelude-google, и эта новая команда мгновенно заработает:

(defun prelude-google ()
"Погуглиет запрос или регион, если есть."
(интерактивный)
(URL-адрес просмотра
(concat
"http: // www.Google.com / search?ie = utf-8 & oe = utf-8 & q = "
(если отметка активна
(буфер-подстрока (начало области) (конец области))
(строка чтения "Google:")))))

Чтобы узнать больше о впечатляющей расширяемости Emacs, мы рекомендуем вам прочитать эту статью, написанную Божидаром Бацовым, автором приведенного выше фрагмента кода.

Когда пользователи Vim чувствуют, что им не хватает определенных функций, они обычно берут один из тысяч и тысяч доступных плагинов Vim. Однако они также могут использовать Vimscript, внутренний язык сценариев Vim. И Vim, и Emacs дополнительно поддерживают темы, поэтому ничто не мешает вам притвориться Neo из Matrix.

Заключение

Как мы уже говорили в начале, сравнение Vim с Emacs похоже на сравнение яблок с апельсинами. Один - способный текстовый редактор с множеством расширенных функций, нацеленных на опытных пользователей, а другой - песочница, которая просто отлично подходит для редактирования текстовых файлов. Если вас устраивает текущий рабочий процесс и вам просто нужна альтернатива современным текстовым редакторам, таким как Sublime Text, Vim - это то, что вам нужно. Но если вы хотите полностью переосмыслить, как вы редактируете текстовые файлы и пишете программные приложения, Emacs может дать вам все, о чем вы могли бы попросить, и многое другое.

Vim:

Emacs:

Как установить Doom и играть в него в Linux
Введение в Doom Серия Doom возникла в 90-х годах после выхода оригинальной Doom. Это мгновенно стал хитом, и с тех пор серия игр получила множество на...
Vulkan для пользователей Linux
С каждым новым поколением видеокарт мы видим, как разработчики игр расширяют границы графической точности и приближаются на шаг ближе к фотореализму. ...
OpenTTD против Simutrans
Создание собственного транспортного симулятора может быть увлекательным, расслабляющим и чрезвычайно увлекательным занятием. Вот почему вам нужно попр...