5

Я уже давно пользуюсь Vim, и мне очень нравится с ним работать. Тем не менее, я продолжаю читать похвалы за Emacs. Я решил взглянуть на Emacs, чтобы завершить свои знания о редакторах Unix (не говоря уже о том, что сочетания клавиш Emacs широко используются).

Но! Я счастлив делать большую часть своей ежедневной работы в Vim. Поэтому в идеале мне хотелось бы взглянуть (кроме основ) на пробелы, которые может заполнить Emacs, или на те вещи, которые он может сделать лучше, чем Vim. Я предполагаю, что каноническим примером является кодирование Lisp/Scheme в Emacs против Vim.

С чего бы вам начать работать с Emacs, чтобы по-настоящему оценить его мощь и получить представление о том, чем его подход к редактированию отличается от Vim, и как редакторы могут дополнять друг друга? Что было бы хорошим введением в том же духе?

4 ответа4

7

Какие функции дополняют друг друга? Практически все, что не является прямым редактированием текста. Чтение почты, usenet, запуск оболочки, отладчик (gdb), компиляция, интеграция управления версиями, справочные страницы, списки задач / планирование проекта (org, planner), просмотр веб-страниц, ide (CEDET), IM, IRC, удаленное редактирование файлов (TRAMP) и др. Есть даже глупые вещи, такие как игры: тетрис, змея, пузыри, понг.

В области строгого редактирования текста Emacs и vi выполняют свою работу, которую вы предпочитаете, как мороженое, которое вы предпочитаете. И я согласен с richardhoskins : режим Viper - это, вероятно, способ изучить Emacs, если вы не заинтересованы в переключении целого борова.

Примечание: извиняюсь, если какая-либо из функций предоставляется в vim, прошло много времени с тех пор, как я ее использовал, и я был очень простым пользователем vim.

6

Вы можете использовать режим Viper. Viper - это эмулятор vi, который ведет пользователя vi через 5 уровней, каждый уровень представляет функции по мере того, как пользователю становится комфортно с Emacs.

Уровень 1 почти прямой vi. Уровень 5 - это почти Emacs. Вы можете переключиться с Viper на прямой Emacs и обратно по желанию.

Viper поставляется с Emacs, и все настроено и готово к использованию. Mx viper-mode запускает его. Он имеет вводный экран, который объясняет, как его использовать.

1

Что переключило меня с nvi/vim на nvi/emacs, так как мои соответствующие редакторы "меняйте два слова в файле" / «тратят часы на редактирование огромного дерева каталогов, заполненного файлами», была интеграция подпроцессов. Возможность оценить область текста в интерпретаторе одним нажатием клавиши, автоматически перейти к ошибкам, чтобы исправить их, а затем оставить переводчик включенным все время, была чрезвычайно полезной.

Другие вещи, которые я пропускаю сегодня, когда не использую emacs: согласованность сочетаний клавиш в разных режимах и контекстах (вырезание / вставка / перемещение / и т.д. Работают в минибуфере так же, как в буфере), интерактивное обновление отображения потенциальных завершений через режим ido (" Cx b "показывает мне список буферов, на которые я могу переключиться, набирая одну букву" .c "скрывает все из них без .c где-то в имени," Cs "поворачивает список," enter "выбирает элемент на передняя часть списка. Я разочарован непригодностью моего оконного менеджера или Firefox, теперь, когда у меня есть такой способ переключения контекстов, все остальное неуклюже).

Другим преимуществом, на мой взгляд, является многократное преимущество, заключающееся в том, что большинство emacs реализовано в emacs lisp. Это означает, что emacs lisp может использоваться в качестве языка расширения и обладает функциями, необходимыми для реального программирования. Это означает, что язык расширения поддерживается достаточно эффективным и масштабируемым. Это означает, что когда люди расширяют emacs для повышения своей производительности, их функции могут быть тривиально интегрированы в официальные emacs. Со временем это означает, что emacs разрабатывается сообществом в масштабе, не сопоставимом с другими проектами свободного программного обеспечения (хотя firefox может в конечном итоге догнать xul/userscript). Это означает, что, поскольку elisp является очень рефлексивным языком, я могу запрашивать подробности о функциональности редактора в интерактивном режиме - на достаточно рефлексивном языке сама программа является самой точной документацией, которую вы можете иметь.

0

Что действительно заставило меня перейти с Vim на Emacs, так это Org-Mode, который позволяет гибко настраивать личную организацию или публиковать. Это планировщик, и я не думаю, что в Vim есть что-то похожее. Я также широко использую R и Latex, и встроенная поддержка для обоих из них более надежна (по моему опыту), чем интеграция в Vim. Мне нравится комплект Vim-Latex, но Emacs кажется более мощным.

Мне действительно нравится использовать Vim, но сейчас я использую VACULL-режим UDNER EMACS, который является улучшением Viper-режима, чтобы сделать его похожим на vim. Одним из преимуществ vimpulse по сравнению с использованием обычного vim является то, что вы можете делать больше вещей в "режиме редактирования"; если вы хотите сделать быстрое редактирование, вы можете использовать сочетания клавиш emacs без необходимости переключения режимов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .