Emacs Lisp - это язык расширения для текстового редактора GNU Emacs, и на самом деле большая часть функциональных возможностей Emacs реализована с использованием Emacs Lisp. Пользователи обычно настраивают поведение Emacs, добавляя операторы Emacs Lisp в свои `~/.emacs` или записывая отдельные пакеты.

Emacs Lisp - это язык расширения для текстового редактора GNU Emacs, и на самом деле большая часть функциональных возможностей Emacs реализована с использованием Emacs Lisp. Пользователи обычно настраивают поведение Emacs, добавляя операторы Emacs Lisp в свои~/.emacs или ~/.emacs.d/init.elфайла или написания отдельных пакетов. Руководство по изучению Emacs Lisp для непрограммистов можно найти здесь.

Emacs Lisp отличается от большинства других лиспов двумя основными способами:

  1. Он имеет специальные функции для сканирования и анализа текста, а также функции для обработки файлов, буферов, массивов, дисплеев и подпроцессов. Это связано с тем, что он предназначен для использования в текстовом редакторе.
  2. Он использует в основном динамическую область видимости, а не лексическую область видимости. Это было сделано очень намеренно, причины хорошо объяснены в статье 1981 года по Emacs. Лексическая область видимости была введена только недавно, и, хотя она еще не получила широкого распространения, ожидается, что она станет все более важной в будущих версиях согласно руководству.

Мудрость из стека

Emacs в стеке обмена