XEmacs

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
XEmacs
Xemacs.PNG
XEmacs
Тип

Текстовый редактор

Разработчик

XEmacs community

Операционная система

Кроссплатформенный

Последняя версия

21.4.22 (30 января 2009)

Лицензия

GNU GPL

Сайт

xemacs.org

XEmacs — это графический и консольный текстовый редактор, работающий как на большинстве Unix-подобных операционных систем, так и в Microsoft Windows. XEmacs это ответвление (fork), разрабатываемое на основе GNU Emacs начиная с конца 1980-х годов. Любой пользователь может загрузить, использовать и изменять XEmacs, так как он является свободным программным обеспечением, доступным под GNU GPL.

История[править | править вики-текст]

Между 1987 и 1993 имела место значительная задержка в выпуске новой версии Emacs[1]. В конце восьмидесятых, компания Ричарда П.Габриеля (Richard P. Gabriel) Lucid Inc. столкнулась с необходимостью использовать Emacs в качестве редактора в своём новом продукте Energize — IDE для C++. Так что Lucid набрала команду разработчиков для улучшения и последующего развития кода[2], ожидая, что их новая версия, выпущенная в 1991 году, станет основой для GNU Emacs 19. Однако, из-за нехватки времени они не смогли передать сделанные ими изменения Free Software Foundation(FSF)[3].

Когда Lucid ушла из бизнеса в 1994, другие разработчики продолжили поддерживать код[4]. Такие компании как Sun Microsystems хотели продолжать выпускать Lucid Emacs; однако, использование этой торговой марки стало юридически неоднозначным, из-за того, что никто не знал кто должен контролировать торговую марку «Lucid»[5].

XEmacs всегда поддерживал текстовые терминалы и оконные системы отличные от X11. XEmacs и GNU Emacs могут быть скомпилированы с или без поддержки X. В течение определённого промежутка времени XEmacs обладал некоторыми возможностями при работе с терминалами, такими как подсветка синтаксиса, которых не было в GNU Emacs.

Возможности[править | править вики-текст]

Среди команд XEmacs присутствуют команды предназначенные для манипуляции словами и абзацами (удаление, перемещение, передвижение внутри них и так далее), подсветка синтаксиса исходных кодов для того чтобы улучшить их читаемость, «keyboard macros» для выполнения произвольных последовательностей команд редактирования, определённых пользователем.

XEmacs обладает всеобъемлющей встроенной справкой, наравне с пятью руководствами доступными на веб сайте XEmacs. XEmacs поддерживает множество языков. XEmacs облегчает редактирование исходных кодов на множестве языков программирования с помощью !!editing-modes. XEmacs может работать на множестве операционных систем, включая Unix/Linux, BSD и Mac OS X. Запуск программы на Mac OS требует X11; хотя разработка родной версии для Carbon начата в 2007 году. Существуют две версии XEmacs для Microsoft Windows: одна не требует установки дополнительного программного обеспечения, а для запуска второй требуется установка Cygwin.

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

Разработка[править | править вики-текст]

С самого начала проекта, разработчики старались выпускать новые версии редактора как можно чаще, на данный момент в год появляется 2-3 релиза[6]. Также поддерживается открытость для экспериментов, и XEmacs часто предлагает новые функции раньше других емаксов — например применение различных шрифтов или использование цветов при работе с текстовым терминалами terminal coloring. С течением времени разработчики активно переписывают код для того чтобы он соответствовал одним стандартам и для того чтобы успевать за современными требованиям к применению абстрактных типов данных. В XEmacs присутствует единая система управления пакетами, написанных независимыми разработчиками. Начиная с 2007 года редактор поддерживает GTK+[7].

Разработка XEmacs всегда была очень открытой, включая анонимный CVS, позднее Mercurial доступ и доступные всем желающим mailing-list.

«Разработчики XEmacs стремятся поддерживать совместимость с GNU Emacs, особенно в отношении Lisp»[8].

Разработка XEmacs идёт по трём направлениям: стабильная(stable), гамма(gamma), и бета(beta)[9]. Нововведения вначале появляются в бете, хотя эти версии могут быть протестированными в недостаточной степени и иметь проблемы со стабильностью и безопасностью.

XEmacs и GNU Emacs[править | править вики-текст]

Некоторые главные разработчики XEmacs опубликовали свои точки зрения на раскол между XEmacs и GNU Emacs, например, Стивен Тёрнбулл (Stephen Turnbull) опубликовал краткое изложение аргументов обеих сторон. Одной из главных причин разногласий стали различные взгляды на передачу прав. FSF считает передачу прав FSF необходимым для того, чтобы обеспечить защиту от нарушений GPL[10]. в то время как разработчики XEmacs утверждают, что отсутствие необходимости в передаче прав позволило крупным компаниям принять участие в разработке, так как иногда компании могут лицензировать код, но из-за нежелания конфликтовать с владельцами акций, компаниям может быть сложно получить разрешение на полную передачу прав на код. Free Software Foundation обладает правами на значительную часть кода XEmacs, так как эти права были переданы во время попыток слияния и совместной разработки. Войдёт ли кусок нового кода из XEmacs в GNU Emacs часто зависит от желания конкретного автора передать права FSF.

Новые функции одного редактора обычно раньше или позже появляются и в другом. Более того, многие разработчики вносят изменения в оба проекта, в частности, главные подсистемы Lisp, такие как Gnus и Dired, разрабатываются так, чтобы они работали в обоих редакторах.

См. также[править | править вики-текст]

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]