GNU Emacs
(defarticle GNU-Emacs
(текстовый редактор. Мем /s/, перекочевавший в /b/ и, отчасти, в ЖЖ.)
;; Истинное предназначение — редактирование уровней для игры Battletoads.
(defun типичное-использование ()[править]
(interactive)
(— Дорогой /s/, какой программой мне сделать <что угодно>?
— GNU Emacs)
)
(defun объяснение ()[править]
;; This shouldn’t work — rms
('GNU Emacs, каноническая версия редактора[2], является одним из самых сложных и расширяемых текстовых редакторов. Следует подчеркнуть, что это именно текстовый редактор, а не текстовый процессор и не операционная система" (для этого в нем не хватает менеджера аппаратных ресурсов). С его помощью специалисты по разным областям деятельности пишут программы, статьи, музыку, посты и книги[3].)
(Написан нашим всем Столлманом, чтобы свободно писать свободный GNU-код, из того же окна компилировать его в свободном gcc и отлаживать в свободном gdb, а потом заливать в интернеты через свободный CVS. В бородатые 80-е его так и хранили: на одной ленте emacs+gdb, на другой gcc. )
(Emacs имеет встроенный интерпретатор лиспа (Emacs Lisp), на котором написан почти весь редактор и расширяющие функции, включающие в себя всё, что требуется человеку для деятельности — от шахмат до программы-психоаналитика; все они запускаются внутри Emacs. Согласно известной старой поговорке, единственное, чего не умеет Emacs — это варить кофе. (После публикации её возникло несколько `M-x coffee-mode` той или иной сложности реализации.) Согласно другой, еретической, поговорке, единственное, чего не хватает в Emacs — это нормального текстового редактора.)
;; Next form should always evaluate to t
(В кругах линупсоидов Emacs считается редактором, с помощью которого можно сделать все, что угодно. Именно этой славой и объясняется необычная популярность редактора на дваче. Алсо, Emacs — первая программа проекта GNU.) )
Перевод этого комикса на русском
(defun применение-в-среде (гиков)[править]
(interactive)
(Считается, что существует только два истинных редактора — vi и Emacs, и между ними идет вечная война, что само по себе является источником целого пласта компьютерного юмора и мифологии. Причем, как и во многих срачах, исполнители ролей бобра и осла произвольно меняются. Например, в вебкомиксе userfriendly.org Питр, написавший вирус для vi, получает упрек: «Ты нарушил Баланс Силы! Люди переходят на Emacs!»)
(Emacs популярен не только среди компьютерных маньяков. Некоторые знаменитые деятели культуры и искусства заслуженно и всьерьез считают Emacs очень хорошим редактором. Так о нём отзывается американский фантаст Нил Стивенсон:
I use emacs, which might be thought of as a thermonuclear word processor. It was created by Richard Stallman; enough said. It is written in Lisp, which is the only computer language that is beautiful. It is colossal, and yet it only edits straight ASCII text files, which is to say, no fonts, no boldface, no underlining. In other words, the engineer-hours that, in the case of Microsoft Word, were devoted to features like mail merge, and the ability to embed feature-length motion pictures in corporate memoranda, were, in the case of emacs, focused with maniacal intensity on the deceptively simple-seeming problem of editing text. If you are a professional writer--i.e., if someone else is getting paid to worry about how your words are formatted and printed--emacs outshines all other editing software in approximately the same way that the noonday sun does the stars. It is not just bigger and brighter; it simply makes everything else vanish.
))
(defun расшифровки-аббревиатуры ()[править]
(Канонические толкования:[4] (list
- Editing MACroS
- Eight Megabytes And Constantly Swapping
- Escape Meta Alt Control Shift
- Eventually malloc()s All Computer Storage
- Editor for Middle-Aged Computer Scientists '(вариант: Generally Not Used / Except by Middle-Aged Computer Scientists)
- EMACS Makes A Computer Slow (w:рекурсивный акроним)
)))
(defun emacs-клавиатура ()[править]
История рождения emacs'а включает в себя забавный факт: Столлман пилил его вовсе не на PC. И всё бы обошлось, если бы сей столп свобод программного обеспечения додумался бы посмотреть в ближайшем компьютерном магазине как выглядит нормальная клавиатура, но ему, очевидно, было похуй, и он заточил emacs на весьма странную клавиатуру. Собственно он был не единственным таким разработчиком-похуистом, последствия разработки софта на странных клавиатурах можно наблюдать не только в emacs'е, но также и в ряде других мест юниксов. Стандартные проблемы включают в себя неожиданное поведение кнопок backspace и delete, решаются достаточно очевидным образом и не вызывают никаких проблем и споров, и в общем-то проблемой не являются. Но Столлман явно злоупотреблял, и навлёк на голову фанов emacs ещё одну проблему. Дело в том, что чуть менее чем все сочетания клавиш emacs (через которые делается ВСЁ) начинаются с "C-", что в более широкораспространённой терминологии означает, что начинаются эти комбинации с модификатора Control. Например, для открытия файла надо нажать C-x C-f (Control-x, Control-f), для сохранения C-x C-s и тд. и тп. Такое неуёмное использование контрола вызвано тем фактом, что на той древней клавиатуре, с которой работал Столлман, кнопка Control располагалась примерно там, где сейчас находится Alt. И вот на этом месте начинаются срачи. Одни жалуются на артрит кисти заработанный в процессе работы emacs'а на PC'шной клавиатуре. Другие заявляют, что можно поменять местами Caps Lock и Control. Третьи учат жать модификаторы боковой стороной ладони. Правда, надо признать, что к сегодняшнему дню всем видимо надоело спорить на этот счёт. Но тем не менее иногда слышны отголоски старых войн.
Специально для тех, кто привык к бездушным блокнотам, в Emacs есть возможность переключить копировать/вырезать/вставить на привычные C-c/C-x/C-v. Делается в меню: Options/Use CUA Keys и Options/Save Options. В консольной версии так же, только меню вызывают по F10.
(defun next-generation-emacs ()[править]
Столлман подложил под emacs свинью. Точнее не то чтобы живую, срущую и совсем как настоящую свинью, но elisp (Emacs Lisp) он подложил. Elisp – это lisp-машина созданная специально для Emacs’а. С одной стороны вроде бы и ничего, так и задумывалось, в этом сила. Но с другой стороны Столлман не смог не продемонстрировать свои ум и сообразительность, поэтому выбирая диалект лиспа для реализации он отверг Scheme как излишне унылый диалект, а Common Lisp как диалект перегруженный keyword-аргументами сверх всякой меры. Столлман выбрал образцом для подражания маклисп "и немножко Common Lisp", и запилил ни с чем не совместимую лисп-машину. И опять же, может быть всё и обошлось бы, но столлмановский лисп долгое время не умел компилировать себя в native-код (пофикшено в версии 28), имеет унылый ffi (точнее, по-сути, не имеет его вовсе) и при этом по большей части однопоточный. Естественно, труЪ-лисперы – гордые пользователи sbcl (под не-Ъ пермиссивной лицензией), Racket (тоже с неподходящей лицензией) или ещё чего-нибудь не менее навороченного – испытывают жуткий баттхёрт от отсутсвия анальной привязки к их любимому диалекту. Последствия такого баттхёрта можно видеть в судорожных попытках запилить какой-нибудь климакс, Hemlock, EdWin и кучи других, тысячи их.
(defun church-of-emacs ()[править]
Существует Церковь Emacs (Church of Emacs). Чтобы стать её членом, надо произнести Символ Веры (Confession of the Faith):
Основатель, пророк и глава Церкви — Святой Игнутий (Saint IGNUcius), в миру — Ричард Столлман.
(defvar галерея[править]
)
(defvar примечания[править]
(list
- ↑ Если приглядеться, то ящерик пользуется Space Cadet keyboard и скобки у него лунные. А-А-А-А-А-А-А! ОНИ СРЕДИ НАС!!!!
- ↑ Что не отменяет существования других версий Emacs. Например, Линус пользуется MicroEMACS, доработав его напильником, и смотрит на версию от GNU как на говно.
- ↑ Нил Стивенсон (Neal Stephenson), «In the Beginning was the Command Line», глава 14
- ↑ Статья о EMACS в «The Jargon File», Эрика С Рэймонда
))
(defvar гиперссылки[править]
(list
- http://www.gnu.org/software/emacs/emacs-lisp-intro/ — статья по Emacs Lisp для начинающих.
- http://www.gnu.org/software/emacs/manual/elisp.html — справочник священнослужителя церкви Имэкса.
- http://steve.yegge.googlepages.com/effective-emacs — must-read для всех адептов церкви Emacs.
- http://www.youtube.com/watch?v=knoHt072e7g — Андрею-программеру плевать на все.
- http://emacsos.51t.ru — Серьезный бизнес выбирает Emacs.
)) ;; Some data related to the GNU project and its goals — rms
(defvar см-также[править]
(list
)))