GNU Emacs
GNU Emacs (від англ. GNU Editor MACroS) — потужний розширюваний, з великими можливостями у налаштуванні, екранний текстовий редактор. Є варіантом реалізації Emacs організації GNU. Створений Річардом Столменом.
![]() | |
Робоче вікно GNU Emacs при редагуванні однієї із версій цієї статті, в режимі wikipedia-mode, кольорова тема color-theme-goldenrod, шрифт Terminus | |
Тип | текстовий редактор, інтерпретатор |
---|---|
Автор(и) | Річард Столмен |
Розробник | проект GNU[d] |
Перший випуск | 1976 рік |
Стабільний випуск | 25.1 (17 вересня 2016 ) |
Репозиторій | git.savannah.gnu.org/cgit/emacs.git |
Операційна система | Unix, FreeBSD, Linux, MS Windows та інші |
GNU фреймворк | Windows API, Cocoa і GTK |
Мова програмування | C та Emacs Lisp |
Українська | ні |
Ліцензія | GNU GPL |
Онлайн-документація | gnu.org/software/emacs/manual/html_node/emacs/index.html |
Вебсайт | gnu.org/software/emacs |
![]() |
ОсобливостіРедагувати
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.
Див. такожРедагувати
- Emacs Lisp — мова програмування макросів в GNU Emacs.
- Локалізація GNU Emacs — приклад налаштування GNU Emacs для роботи з кириличними текстами.
- wikipedia-mode — застосування Emacs для редагування статей Вікіпедії.
ПосиланняРедагувати
- Офіційна сторінка GNU Emacs
- EmacsWiki — Wiki присвячена Emacs.
- Початок перекладу підручника з GNU Emacs(укр.)
ПриміткиРедагувати
Це незавершена стаття про програмне забезпечення. Ви можете допомогти проекту, виправивши або дописавши її. |