- GNU Emacs
- Download & installation
- GNU/Linux
- Nonfree systems
- Windows
- MacOS
- Emacs для начинающих
- Алексей Отт
- Введение
- Что такое Emacs?
- Разновидности Emacs
- Основы работы с Emacs
- Используемая терминология
- GNU Emacs
- An extensible, customizable, free/libre text editor — and more.
- The features of GNU Emacs include
- Discover Emacs in video
- Emacs 27.2
- Released Mar 25, 2021
- Emacs 27.1
- Released Aug 10, 2020
- Emacs 26.3
- Released Aug 28, 2019
- Emacs 26.2
- Released Apr 12, 2019
- Emacs 26.1
- Released May 28, 2018
- Emacs 25.3
- Released September 11, 2017
- Emacs 25.2
- Released April 21, 2017
- Emacs 25.1
- Released September 17, 2016
- GNU Emacs
GNU Emacs
Download & installation
Emacs runs on several operating systems regardless of the machine type. The main ones are: GNU, GNU/Linux, FreeBSD, NetBSD, OpenBSD, MacOS, MS Windows and Solaris.
GNU/Linux
Most GNU/Linux distributions provide GNU Emacs in their repositories, which is the recommended way to install Emacs unless you always want to use the latest release.
You can download GNU Emacs releases from a nearby GNU mirror; or if automatic redirection does not work see the list of GNU mirrors, or use the main GNU ftp server.
GNU Emacs source code and development is hosted on savannah.gnu.org.
The BSDs provide GNU Emacs in their repositories, which is the recommended way to install Emacs unless you always want to use the latest release.
Nonfree systems
The reason for GNU Emacs’s existence is to provide a powerful editor for the GNU operating system. Versions of GNU, such as GNU/Linux, are the primary platforms for Emacs development.
However, GNU Emacs includes support for some other systems that volunteers choose to support.
The purpose of the GNU system is to give users the freedom that proprietary software takes away from its users. Proprietary operating systems (like other proprietary programs) are an injustice, and we aim for a world in which they do not exist.
To improve the use of proprietary systems is a misguided goal. Our aim, rather, is to eliminate them. We include support for some proprietary systems in GNU Emacs in the hope that running Emacs on them will give users a taste of freedom and thus lead them to free themselves.
Windows
GNU Emacs for Windows can be downloaded from a nearby GNU mirror; or the main GNU FTP server.
Unzip the zip file preserving the directory structure, and run bin\runemacs.exe . Alternatively, create a desktop shortcut to bin\runemacs.exe , and start Emacs by double-clicking on that shortcut’s icon.
The Windows binaries are signed by Phillip Lord 8E64 B119 FE4B AC58 C767 D5EC E095 C1A6 3FB1 EAD2 .
MSYS2 users can install Emacs (64bits build) with the following:
For the 32bits build, evaluate:
MacOS
Emacs can be installed on MacOS using Homebrew.
The Emacs for OSX website also provides universal binaries.
Emacs для начинающих
Алексей Отт
Введение
Этот документ предназначен для тех пользователей Linux, которые хотят узнать о Emacs и научиться работать с ним.
Этот документ не является специфичным только для ALT Linux . Его можно использовать для работы с Emacs из других дистрибутивов Linux, в других вариантах операционной системы UNIX, а также с Emacs для Windows.
Что такое Emacs?
Emacs — один из наиболее мощных и широко распространённых редакторов, используемых в мире UNIX. По популярности он соперничает с редактором vi и его клонами.
В зависимости от ситуации, Emacs может быть:
программой для чтения почты и новостей Usenet;
интегрированной средой разработки (IDE);
всем, чем угодно.
Всё это разнообразие достигается благодаря архитектуре Emacs, которая позволяет расширять возможности редактора при помощи языка Emacs Lisp. На языке C написаны лишь самые базовые и низкоуровневые части Emacs, включая полнофункциональный интерпретатор языка Lisp. Таким образом, Emacs имеет встроенный язык программирования, который может использоваться для настройки, расширения и изменения поведения редактора. В действительности, большая часть того редактора, с которым пользователи Emacs работают в наши дни, написана на языке Lisp.
Первая версия редактора Emacs была написана в 70-х годах 20-го столетия Richard Stallman (Ричардом Столманом) как набор макросов для редактора TECO . В дальнейшем, уже будучи основателем Фонда Свободного программного обеспечения Free Software Foundation и проекта GNU, Stallman разработал GNU Emacs в развитие оригинального Emacs и до сих пор сопровождает эту программу. Вы можете подробнее ознакомиться с историей редактора, прочитав статью, располагающуюся по этому адресу.
Emacs является одним из старейших редакторов. Он использовался тысячами программистов на протяжении последних 20 с лишним лет, для него создано много дополнительных пакетов расширений. Эти дополнения позволяют делать с помощью Emacs такие вещи, которые Stallman , вероятно, даже не считал возможными в начале своей работы над редактором. Более подробно я расскажу о них в следующих разделах.
Разновидности Emacs
Существует две основных разновидности Emacs — GNU Emacs и XEmacs. GNU Emacs — это развитие оригинальной версии Emacs, написанного Столлманом, а XEmacs — это версия с некоторыми добавлениями к интерфейсу и языку Emacs Lisp. О причинах, по которым образовалось две версии, можно прочесть по этому адресу. В большинстве случаев их поведение похоже друг на друга, но есть и некоторые отличия. Поэтому некоторые пакеты расширений могут работать только с конкретной версией Emacs.
Кроме двух основных версий, существует и множество других редакторов, считающихся вариантами Emacs. Полный их список можно найти на странице Emacs Implementations and Literature.
В данном документе я буду рассказывать, прежде всего, о GNU Emacs, входящем в поставку ALT Linux . Однако большая часть сказанного применима и для XEmacs, а также для версий Emacs в других дистрибутивах Linux.
Основы работы с Emacs
Используемая терминология
В этом разделе описываются термины Emacs, с которыми вы встретитесь при использовании редактора.
Буфер — это основная единица редактирования; один буфер соответствует одному куску редактируемого текста. Вы можете иметь несколько буферов, но в каждый конкретный момент вы редактируете только один « выбранный » буфер, хотя когда вы используете несколько окон, то видимыми могут быть несколько буферов. Чаще всего буферы обращаются к какому-либо файлу, считывая данные из файла в буфер, или записывая данные из буфера в файл.
Вы встретите термин « буфер » в документации по Emacs, сообщениях программы, описаниях режимов и пакетов. Просто имейте в виду, что при работе с файлами буфер означает « копию файла, которая находится в памяти в данный момент ». Однако необходимо отметить, что буфер не всегда соответствует какому-либо файлу на диске. Очень часто Emacs создаёт буфера в результате выполнения ваших команд. Такие буфера могут содержать вывод команды, список для выбора вариантов и другую информацию.
Точка, область и метка
Точка (point) — это место в буфере, в котором происходит вставка или удаление данных. Считается, что точка находится между двумя знаками, а не на каком-то одном из них. Например, если курсор находится на букве « h » в слове « the », то точка находится между « t » и « h ». Курсор терминала показывает положение точки.
Как и другие современные редакторы, Emacs позволяет выполнять разные действия над фрагментами текущего буфера — изменение отступа, проверку орфографии, переформатирование, вырезание, копирование, вставку и т.д. Вы можете подсветить (или « пометить ») блок текста, используя клавиатуру или мышь, а затем выполнить операцию только над выделенным блоком. В Emacs такой блок текста называется область (region) . Область — это текст между точкой и меткой.
Метка указывает на позицию в тексте. Она определяет один конец области, в то время как точка находится на другом конце области. Многие команды работают с текстом целиком от точки до метки. Каждый буфер имеет свою метку.
Окно в Emacs — это область экрана, в которой отображается буфер. Когда Emacs запускается, у вас на экране отображается одно окно. При обращении к некоторым функциям Emacs (таким, как оперативная справка и интерактивная документация) часто (временно) открываются дополнительные окна на экране Emacs.
Окна Emacs не имеют ничего общего с окнами графической среды X Window. Одно окно X Window может быть разбито на несколько окон в смысле Emacs, в каждом из которых отображается отдельный буфер. Однако вы можете открывать для отображения буферов Emacs и дополнительные окна X, например, при сравнении двух файлов. Эти новые окна X в жаргоне Emacs называются фреймы .
Фрейм (frame) — это отдельное окно используемой оконной системы, в котором отображаются одно или несколько окон Emacs. При этом несколько фреймов, открытых одновременно, являются частью одного сеанса Emacs.
GNU Emacs
An extensible, customizable, free/libre text editor — and more.
At its core is an interpreter for Emacs Lisp, a dialect of the Lisp programming language with extensions to support text editing.
The features of GNU Emacs include
- Content-aware editing modes, including syntax coloring, for many file types.
- Complete built-in documentation, including a tutorial for new users.
- Full Unicode support for nearly all human scripts.
- Highly customizable, using Emacs Lisp code or a graphical interface.
- A wide range of functionality beyond text editing, including a project planner, mail and news reader, debugger interface, calendar, IRC client, and more.
- A packaging system for downloading and installing extensions.
Discover Emacs in video
Watch more episodes on Emacsrocks.com.
Emacs 27.2
Released Mar 25, 2021
Emacs 27.2 is a maintenance release.
- The behavior of the user option ‘resize-mini-frames’ has changed.
Emacs 27.1
Released Aug 10, 2020
Emacs 27.1 has a wide variety of new features, including:
- Built-in support for arbitrary-size integers
- Text shaping with HarfBuzz
- Native support for JSON parsing
- Better support for Cairo drawing
- Portable dumping used instead of unexec
- Support for XDG conventions for init files
- Additional early-init initialization file
- Built-in support for tab bar and tab-line
- Support for resizing and rotating of images without ImageMagick
Emacs 26.3
Released Aug 28, 2019
Emacs 26.3 is a maintenance release.
- New GPG key for GNU ELPA package signature checking.
Emacs 26.2
Released Apr 12, 2019
Emacs 26.2 has a wide variety of new features, including:
- Emacs modules can now be built outside of the Emacs tree source.
- Emacs is now compliant with the latest version 11.0 of the Unicode Standard.
- In Dired, the ‘Z’ command on a directory name compresses all of its files.
Emacs 26.1
Released May 28, 2018
Emacs 26.1 has a wide variety of new features, including:
- Limited form of concurrency with Lisp threads
- Support for optional display of line numbers in the buffer
- Emacs now uses double buffering to reduce flicker on the X Window System
- Flymake has been completely redesigned
- TRAMP has a new connection method for Google Drive
- New single-line horizontal scrolling mode
- A systemd user unit file is provided
- Support for 24-bit colors on capable text terminals
Emacs 25.3
Released September 11, 2017
Emacs 25.3 fixes a significant security hole.
Emacs 25.2
Released April 21, 2017
Emacs 25.2 is mostly a bug-fix release.
For more information, read the News file.
Emacs 25.1
Released September 17, 2016
Emacs 25.1 has a wide variety of new features, including:
- Emacs can now load shared/dynamic libraries (modules). A dynamic Emacs module is a shared library that provides additional functionality for use in Emacs Lisp programs, just like a package written in Emacs Lisp would.
- Experimental support for Cairo drawing.
- Enhanced network security (TLS/SSL certificate validity and the like) via the new Network Security Manager (NSM).
- New minor mode ‘electric-quote-mode’ for using curved quotes as you type.
- Character folding support in isearch.el.
- New and improved facilities for inserting Unicode characters: C-x 8 now has shorthands for several chars, such as U+2010 (HYPHEN), U+2011 (NON-BREAKING HYPHEN), and U+2012 (FIGURE DASH).
For more information, read the News file.
Subscribe to our monthly newsletter, the Free Software Supporter
“Our mission is to preserve, protect and promote the freedom to use, study, copy, modify, and redistribute computer software, and to defend the rights of Free Software users.”
GNU Emacs
GNU Emacs (от англ. GNU Editor MACroS) – мощный расширяемый, с большими возможностями в настройке, экранный текстовый редактор. Является вариантом реализации Emacs организации GNU. Созданный Ричардом Столменом.
В нормальном режиме редактирования, GNU Emacs ведёт себя как и остальные текстовые редакторы: клавиши с печатными символами (a, b, c, 1, 2, 3, и т. п.) вставляют соответствующие символы в текст, клавиши перемещения меняют место расположения курсора, Backspace удаляет текст, и так далее. Другие команды вызываются с помощью нажатия специальных клавиш (Ctrl или Alt) вместе с обычными. Любая команда редактирования, на самом деле, является вызовом функции из среды Emacs Lisp. Даже простое нажатие a для вставки a приводит к вызову функции, в этом случае, self-insert-command.
Особенности GNU Emacs
GNU Emacs имеет следующие особые свойства:
Имеет средства не только для простой вставки и удаления текста, но и управление подпроцессами, автоматической расстановки отступов и переносов в программах, одновременного просмотра и редактирования более чем одного файла, редактирование форматированного текста, может учитывать буквы, слова, ленты, предложения, абзацы и страницы , а также выражения и комментарии в различных языках программирования.
В любой момент работы с редактором, пользователь может обратиться к встроенной справке, чтобы получить информацию о комбинации клавиш команду редактора, режим редактирования и т. д..
Пользователь имеет возможность контролировать почти все возможные настройки работы редактора, начиная от определения символов начала и конца комментариев, до переопределения команд закреплённых за клавишами или комбинациями клавиш.
Функциональные возможности редактора можно расширять добавлением совершенно новых команд, написанных на языке программирования Lisp. Эти программы выполняются в интерпретаторе GNU Emacs. Функциональность GNU Emacs можно расширять прямо во время работы в редакторе. Почти любую часть GNU Emacs можно изменить без создания новой копии GNU Emacs. Большая часть команд редактирования в GNU Emacs написана на языке программирования Lisp, за исключением некоторых функций, которые написаны на языке программирования C и скомпилированы для повышения эффективности работы.
Считается, что GNU Emacs доступен на большом количестве аппаратных платформ среди всех нетривиальных программных систем. Может работать как в текстовом режиме на текстовых терминалах, так и в графическом в графических средах.