GNU Emacs

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
GNU Emacs
Emacs-logo.svg
GNU Emacs window.png

Робоче вікно GNU Emacs при редагуванні однієї із версій цієї статті, в режимі wikipedia-mode, кольорова тема color-theme-goldenrod, шрифт Terminus
Тип текстовий редактор, інтерпретатор
Автор(и) Річард Столмен
Розробник GNU Project[d]
Перший випуск 1976 рік
Стабільний випуск 25.1 (17 вересня 2016; 401 день тому )
Версії 25.2[1]
Репозиторій http://git.savannah.gnu.org/cgit/emacs.git, git://git.sv.gnu.org/emacs.git
Операційна система Unix, FreeBSD, Linux, MS Windows та інші
GNU фреймворк Windows API, Cocoa і GTK+
Написано на C та Emacs Lisp
Українська ні
Ліцензія GNU GPL
Онлайн-документація https://www.gnu.org/software/emacs/manual/html_node/emacs/index.html
gnu.org/software/emacs

CMNS: GNU Emacs на Вікісховищі

GNU Emacs (від англ. GNU Editor MACroS) — потужний розширюваний, з великими можливостями у налаштуванні, екранний текстовий редактор. Є варіантом реалізації Emacs організації GNU. Створений Річардом Столменом.

Особливості[ред.ред. код]

GNU Emacs має такі особливі характеристики:

потужність
має засоби не тільки для простої вставки та видалення тексту, а й управління підпроцесами, автоматичної розстановки відступів та переносів в програмах, одночасного перегляду та редагування більш ніж одного файлу, редагування форматованого тексту, може враховувати літери, слова, рядки, речення, абзаци та сторінки, а також вирази та коментарі в різних мовах програмування.
автоматична документація
в будь який момент роботи з редактором, користувач може звернутись до вбудованої системи довідки, аби отримати інформацію про комбінацію клавіш, команду редактора, режим редагування тощо.
конфігурованість
користувач має можливість контролювати майже всі можливі налаштування роботи редактора, починаючи від визначення символів початку та кінця коментарів, до перевизначення команд закріплених за клавішами або комбінаціями клавіш.
розширюваність
функціональні можливості редактора можна розширювати додаванням абсолютно нових команд, написаних на мові програмування Lisp. Ці програми виконуються в інтерпретаторі Emacs. Функціональність Emacs можна розширювати прямо під час роботи в редакторі. Майже будь яку частину Emacs можна змінити без створення нової копії Emacs. Більша частина команд редагування в Emacs написано на мові програмування Lisp, за виключенням деяких функцій, які написано на мові програмування C та скомпільовано для підвищення ефективності роботи.

Вважається, що GNU Emacs доступний на найбільшій кількості апаратних платформ серед усіх нетривіальних програмних систем. Може працювати як в текстовому режимі на текстових терміналах, так і в графічному в графічних середовищах.

Використання[ред.ред. код]

Типові команди[ред.ред. код]

В нормальному режимі редагування, Емакс поводиться як і решта текстових редакторів: клавіші з друкованими символами (a, b, c, 1, 2, 3, тощо) вставляють відповідні символи в текст, клавіші переміщення змінюють місце розташування курсора, бекспейс видаляє текст, і так далі. Інші команди викликаються за допомогою натискання спеціальних клавіш (контрол, Control, або альт, Alt) разом із звичайними. Будь-яка команда редагування, насправді, є викликом функції із середовища Емакс Лісп. Навіть, просте натискання a для вставки a призводить до виклику функції, в цьому випадку, self-insert-command.

Деякі із типових команд перелічено нижче; решту команд можна знайти в довідці Емакса. Клавішу «Ctrl» позначено літерою С, а мета, або «Alt» літерою М.

Команда Комбінація клавіш Описання
forward-char C-f Пересунути курсор на наступний символ (вправо).
backward-char C-b Пересунути курсор на попередній символ (вліво).
previous-line C-p Перейти на попередній рядок (вгору).
next-line C-n Перейти на наступний рядок (вниз).
forward-word M-f Перейти на одне слово вперед.
backward-word M-b Перейти на одне слово назад.
beginning-of-line C-a Перейти на початок рядка.
end-of-line C-e Перейти на кінець рядка.
isearch-forward C-s Почати інкрементний пошук вперед.
isearch-backward C-r Почати інкрементний пошук назад.
undo C-/ Скасувати останню зміну, і попередні при повторному виклику.
keyboard-quit C-g Скасувати поточну команду.
fill-paragraph M-q Розбити параграф на рядки.
find-file C-x C-f Відкрити файл (слід вказати ім'я) в окремому буфері для редагування.
save-buffer C-x C-s Зберегти поточний буфер у відповідному файлі.
write-file C-x C-w Зберегти поточний буфер у файлі з вказаним ім'ям.
save-buffers-kill-emacs C-x C-c Запропонувати зберегти зміни, а потім закрити Емакс.
set-marker C-[space]/C-@ Встановити маркер на початок регіону тексту, який слід копіювати або вирізати.
cut C-w Вирізати весь текст між маркером та поточним місцем знаходження курсора.
copy M-w Скопіювати текст між маркером та поточним місцем знаходження курсора.
paste C-y Вставити текст з буферу обміну Емакса.
paste special C-x C-r Вставити спеціальний текст із буферу обміну Емакса.
kill-buffer C-x k Закрити буфер з вказаним ім'ям, або поточний буфер, якщо ім'я відсутнє.

Додаткові макроси[ред.ред. код]

Існує велика кількість додаткових пакетів розширення функціональності системи. Так, в стандартному дистрибутиві GNU Emacs є пакети для емуляції терміналів, поштовий клієнт, календар, кліент Usenet, файловий менеджер, переглядач документів допомоги GNU Info тощо. Існують макроси для полегшення редагування файлів різних форматів (тексти програм, ASCII Art, тексти в форматі SGML, XML та LaTeX тощо).

GNU Emacs, також, може використовуватись як інтегроване середовище для створення програм, документів, сайтів. Наприклад:

  • JDE додає можливостей для роботи з Java програмами.
  • nxml-mode призначено для полегшення роботи з XML документами. Макроси з цього пакету додають можливості валідації XML документів проти RelaxNG XML схем, автоматичну розстановку відступів тощо.
  • AUCTeX робить GNU Emacs зручним середовищем для підготовки документів TeX.
  • emacs-wiki-mode надає засоби створення та підтримки локальних Wiki сайтів. А wikipedia-mode — полегшує редагування статей Wikipedia.
  • psvn та pcvs додають засоби роботи з репозиторіями систем контролю версій Subversion та CVS відповідно.

Інформацію про більшість додаткових макросів та пакетів макросів, можна знайти на сайті EmacsWiki.

Окрім редагування текстів та документів, Emacs може використовуватись як середовище для виконання комп'ютерних ігор. До складу стандартного дистрибутива GNU Emacs включено відому програму Eliza, запустити яку можна в редакторі командою M-x doctor.

Див. також[ред.ред. код]

Посилання[ред.ред. код]

  1. https://www.gnu.org/software/emacs/history.html
  2. https://www.gnu.org/software/emacs/