Emacs срещу Vim

Emacs и Vim са двата най-широко използвани текстови редактори на EmacsVimПреглед на изданието 23 7.2a.13 (2008-07-04) Написано в C и Emacs Lisp С и скрипт на Vim платформа Крос-платформа, включително Unix, Linux и Microsoft Windows Крос-платформа, включително Unix, Linux и Microsoft Windows Достъпен в Английски, китайски, френски, италиански, полски, руски Английски, китайски, френски, италиански, полски, руски Тип Текстов редактор Текстов редактор Разрешително GNU GPL Безплатен софтуер, благотворителен софтуер, съвместим с GPL уебсайт http://www.gnu.org/software/emacs/ http://www.vim.org/ Въведение (от Уикипедия) Emacs е клас от текстови редактори, богати на функции, които обикновено се характеризират със своята разширяемост. Emacs има над 1000 команди за редактиране. Също така позволява на потребителя да комбинира тези команди в макроси, за да автоматизира работата. Vim е текстов редактор, издаден за първи път от Bram Moolenaar през 1991 г. за компютъра Amiga. Името "Vim" е съкращение за "Vi IMproved", защото Vim е създаден като разширена версия на редактора на vi, с много допълнителни функции, предназначени да бъдат полезни Проектирано от Ричард Столман Брам Муленаар Първоначално пускане 1976 1991 Стабилно освобождаване 22.3 (2008-09-05) 7.2 (2008-08-09) Раздели за буфер Поддържа се както в командния ред, така и в графичния потребителски интерфейс Поддържа се както в командния ред, така и в графичния потребителски интерфейс

Съдържание: Emacs срещу Vim

  • 1 Emacs и Vim потребителски интерфейс
    • 1.1 Лесно учене
    • 1.2 Производителност и скорост на редактиране
  • 2 RAM използване на Emacs срещу Vim
  • 3 Разширяване и персонализиране на Emacs срещу Vim
    • 3.1 Графичен потребителски интерфейс (GUI)
  • 4 Позовавания

Emacs и Vim потребителски интерфейс

Vim използва режими за редактиране - най-често команден режим и режим на вмъкване. Vim има за цел да намали броя на натисканията на клавиши, които потребителят трябва да натисне, тъй като vi, на който се основава Vim, е проектиран да се използва в бавни терминали.

Emacs използва модификатор за активиране на клавишни комбинации, което често включва едновременно натискане на няколко клавиша за една функция. Този аспект на Emacs често е критикуван.

Лесно учене

Emacs е по-лесен за научаване, тъй като има по-естествен интерфейс (за потребители, запознати с текстови редактори, базирани на GUI). Тъй като Vim има различни режими за редактиране, начинаещите го намират за малко по-трудно.

Производителност и скорост на редактиране

Любителите на Vim твърдят, че след като потребителят се запознае с режимите за редактиране и командите на Vim, това дава много по-голяма производителност и ефективност. Редактирането на файлове обикновено е по-бързо с Vim, отколкото с Emacs, заради целенасочения интерфейс на скоростта на Vim. Например движението на курсора може да се контролира чрез Н, J, K, и L ключове в нормален режим. Това означава, че ръцете на потребителя не се нуждаят от напускане на позиция "начален ред", което подобрява ефективността, но идва на цената на добавяне на режийни разходи, тъй като за превключване на режимите е необходимо да избирате между движение и редактиране на текст. В Emacs (с конфигурация по подразбиране) потребителят премества курсора с клавишните комбинации Ctrl-B или Ctrl-F, което може да забави начинаещия потребител, тъй като трябва да се натиснат два клавиша. Подобренията в производителността и ефективността в Emacs зависят от конфигурацията на средата за редактиране, а не от самия редактор.

Използване на RAM паметта на Emacs срещу Vim

Vim е по-лек от Emacs и използва по-малко памет. Защитниците на Vim критикуват потреблението на ресурси на Emacs с предположението, че Emacs означава „Осемдесет мегабайта и непрекъснато разменяне“.

Въпреки това, с gnuclient, може да се стартира един постоянен Emacs процес, който може да поддържа едновременно няколко клиента. Това ускорява времето за стартиране и намалява общото използване на паметта, затваряйки пропастта между Emacs и Vim.

Разширяване и персонализиране на Emacs срещу Vim

Докато и Vim и Emacs поддържат приставки, които подобряват тяхната функционалност, Emacs поддържа много повече персонализиране на редакторската среда. Това е може би най-важната характеристика на emacs и е отговорна за голяма част от посветените на emacs последващи.

Emacs може да бъде разширен в elisp, докато Vim има собствен вътрешен скриптов език и поддържа използването на други езици за програмиране за разработка на плъгини.

Emacs може да бъде разширен в движение чрез предефиниране на вградени elisp функции, или чрез въвеждане на новото определение в Emacs, или чрез зареждане на elisp файлове. Групите свързани промени се наричат ​​"режими" и могат лесно да бъдат конфигурирани, за да бъдат автоматично използвани за определени типове файлове (буфери). Така че е лесно да се дефинират режими за различни програмируеми езици или рамки, като "режим на липс" или "режим Ruby on Rails" или "режим PHP". Тези режими могат директно да променят дори основните поведения на Emacs, автоматично да форматират или оцветяват текст и да добавят стандартен шаблон или текст от "котел", като декларации за функции и затваряния. Така програмистите намират Emacs за много по-адаптивни към техните специфични изисквания от Vim. И все пак някои програмисти могат да намерят Vim в крайна сметка да бъде по-подходящ за тяхната среда за програмиране поради еднакво приспособимата му и напълно модална работа.

Vim може да се разшири и в движение, като се използва командния режим. Режимът на команда позволява да се задават опции за конфигуриране, да се определят функции и да се правят макроси. Всъщност конфигурационните файлове за Vim са само команди, които могат да бъдат въвеждани през командния режим.

Графичен потребителски интерфейс (GUI)

Както Vim, така и Emacs имат графични потребителски интерфейси. На практика всички елементи от менюто на графичния интерфейс и за двата редактора са просто начини за справяне с команда за пряк път или бърза конфигурация. Графичните интерфейси за редакторите не предоставят практически никакви допълнителни функции извън наличните в CLI (интерфейс на командния ред)

Emacs използва XDisplay или gtk2 за своя GUI. Vim може да използва много други GUI библиотеки, като gtk, gnome, gnome2, motif, athena и neXtaw, в допълнение към gtk2.

Препратки

  • Уикипедия: Vi
  • Уикипедия: Emacs
  • http://www.io.com/~dierdorf/emacsvi.html
  • http://thomer.com/vi/vi.html
  • Emacs има силата на Lisp, което го прави много гъвкав
  • Ръководство за начинаещи за emacs