GNU Emacs (від англ. GNU Editor MACroS) — потужний розширюваний, з великими можливостями у налаштуванні, екранний текстовий редактор. Є варіантом реалізації Emacs організації GNU. Створений Річардом Столменом.
Робоче вікно GNU Emacs при редагуванні однієї із версій цієї статті, в режимі wikipedia-mode, кольорова тема color-theme-goldenrod, шрифт Terminus | |
Тип | текстовий редактор, інтерпретатор |
---|---|
Автор | Річард Столмен |
Розробник | проєкт GNU |
Перший випуск | 1976 рік |
Стабільний випуск | 27.2 (25 березня 2021 ) |
Операційна система | Unix, FreeBSD, Linux, MS Windows та інші |
GNU фреймворк | d і GTK |
Мова програмування | C та Emacs Lisp |
Українська мова | ні |
Ліцензія | GNU GPL |
Онлайн-документація | gnu.org/software/emacs/manual/html_node/emacs/index.html |
Репозиторій | git.savannah.gnu.org/cgit/emacs.git |
Вебсайт | 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, файловий менеджер, переглядачі довідкових сторінок, документів допомоги тощо. Існують макроси для полегшення редагування файлів різних форматів (тексти програм, , тексти в форматі SGML, XML та LaTeX тощо).
GNU Emacs, також, може використовуватись як інтегроване середовище для створення програм, документів, сайтів. Наприклад:
- Org - програмний засіб для ведення нотаток, списків завдань, планування та мова розмітки даних.
- Project.el додає інструменти для взаємодії з початковим кодом проєктів, а також навігації та пошуку.
- призначено для полегшення роботи з XML документами. Макроси з цього пакету додають можливості валідації XML документів проти RELAX NG XML схем, автоматичне розставлення відступів тощо.
- VC додає засоби роботи з репозиторіями систем керування версіями.
Починаючи з версії 24 в GNU Emacs вбудований менеджер пакетів package.el, завдяки якому можна встановити додаткові пакети за допомогою команди M-x package-install
. Найвідоміші репозиторії:
- GNU - офіційний репозиторій проєкту який містить пакети схвалені FSF.
- NonGNU ELPA [ 25 січня 2022 у Wayback Machine.] - також є офіційним, але на відміну від GNU ELPA не вимагає передавати авторські права.
- MELPA [ 19 лютого 2022 у Wayback Machine.] - неофіційний репозиторій, але містить найбільшу кількість пакетів.
Інші популярні [ 11 січня 2022 у Wayback Machine.] пакети, що не входять до складу GNU Emacs:
- - інтерфейс до системи керування версіями Git.
- Company [ 12 січня 2022 у Wayback Machine.] - фреймворк для автодоповнення.
- Evil [ 16 лютого 2022 у Wayback Machine.] емулює текстовий редактор Vim.
- LSP mode [ 15 лютого 2022 у Wayback Machine.] додає підтримку .
- Flycheck [ 18 травня 2021 у Wayback Machine.] - система перевірки синтаксису.
- AUCTeX робить GNU Emacs зручним середовищем для підготовки документів TeX.
- надає засоби створення та підтримки локальних Wiki сайтів. А mediawiki-mode [ 15 лютого 2022 у Wayback Machine.] — полегшує редагування статей Wikipedia.
Інформацію про додаткові макроси та пакети також можна знайти на сайті EmacsWiki [ 6 грудня 2012 у Wayback Machine.].
Окрім редагування текстів та документів, Emacs може використовуватись як середовище для виконання комп'ютерних ігор. До складу стандартного дистрибутиву GNU Emacs включено відому програму , запустити яку можна в редакторі командою M-x doctor, Tetris та інші.
Див. також
- Emacs Lisp — мова програмування макросів в GNU Emacs.
- Локалізація GNU Emacs — приклад налаштування GNU Emacs для роботи з кириличними текстами.
- wikipedia-mode — застосування Emacs для редагування статей Вікіпедії.
Посилання
- Офіційна сторінка GNU Emacs [ 13 червня 2006 у Wayback Machine.]
- EmacsWiki [ 6 грудня 2012 у Wayback Machine.] — Wiki присвячена Emacs.
- (укр.)
Примітки
- https://www.gnu.org/software/emacs/
Це незавершена стаття про програмне забезпечення. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
GNU Emacs vid angl GNU Editor MACroS potuzhnij rozshiryuvanij z velikimi mozhlivostyami u nalashtuvanni ekrannij tekstovij redaktor Ye variantom realizaciyi Emacs organizaciyi GNU Stvorenij Richardom Stolmenom GNU EmacsRoboche vikno GNU Emacs pri redaguvanni odniyeyi iz versij ciyeyi statti v rezhimi wikipedia mode kolorova tema color theme goldenrod shrift TerminusTiptekstovij redaktor interpretatorAvtorRichard StolmenRozrobnikproyekt GNUPershij vipusk1976 rikStabilnij vipusk27 2 25 bereznya 2021 3 roki tomu 2021 03 25 Operacijna sistemaUnix FreeBSD Linux MS Windows ta inshiGNU frejmvorkd i GTKMova programuvannyaC ta Emacs LispUkrayinska movaniLicenziyaGNU GPLOnlajn dokumentaciyagnu org software emacs manual html node emacs index htmlRepozitorijgit savannah gnu org cgit emacs gitVebsajtgnu org software emacs Mediafajli u VikishovishiOsoblivostiGNU Emacs maye taki osoblivi harakteristiki potuzhnist maye zasobi ne tilki dlya prostoyi vstavki ta vidalennya tekstu a j upravlinnya pidprocesami avtomatichnogo rozstavlennya vidstupiv ta perenesennya v programah odnochasnogo pereglyadu ta redaguvannya bilsh nizh odnogo fajlu redaguvannya formatovanogo tekstu mozhe vrahovuvati literi slova ryadki rechennya abzaci ta storinki a takozh virazi ta komentari v riznih movah programuvannya avtomatichna dokumentaciya v bud yakij moment roboti z redaktorom koristuvach mozhe zvernutis do vbudovanoyi sistemi dovidki abi otrimati informaciyu pro kombinaciyu klavish komandu redaktora rezhim redaguvannya tosho konfigurovanist koristuvach maye mozhlivist kontrolyuvati majzhe vsi mozhlivi nalashtuvannya roboti redaktora pochinayuchi vid viznachennya simvoliv pochatku ta kincya komentariv do pereviznachennya komand zakriplenih za klavishami abo kombinaciyami klavish rozshiryuvanist funkcionalni mozhlivosti redaktora mozhna rozshiryuvati dodavannyam absolyutno novih komand napisanih movoyu programuvannya Lisp Ci programi vikonuyutsya v interpretatori Emacs Funkcionalnist Emacs mozhna rozshiryuvati pryamo pid chas roboti v redaktori Majzhe bud yaku chastinu Emacs mozhna zminiti bez stvorennya novoyi kopiyi Emacs Bilsha chastina komand redaguvannya v Emacs napisano movoyu programuvannya Lisp za viklyuchennyam deyakih funkcij yaki napisano movoyu programuvannya C ta skompilovano dlya pidvishennya efektivnosti roboti Vvazhayetsya sho GNU Emacs dostupnij na najbilshij kilkosti aparatnih platform sered usih netrivialnih programnih sistem Mozhe pracyuvati yak v tekstovomu rezhimi na tekstovih terminalah tak i v grafichnomu v grafichnih seredovishah VikoristannyaTipovi komandi V normalnomu rezhimi redaguvannya Emaks povoditsya yak i reshta tekstovih redaktoriv klavishi z drukovanimi simvolami a b c 1 2 3 tosho vstavlyayut vidpovidni simvoli v tekst klavishi peremishennya zminyuyut misce roztashuvannya kursora bekspejs vidalyaye tekst i tak dali Inshi komandi viklikayutsya za dopomogoyu natiskannya specialnih klavish kontrol Control abo alt Alt razom zi zvichajnimi Bud yaka komanda redaguvannya naspravdi ye viklikom funkciyi iz seredovisha Emaks Lisp Navit proste natiskannya a dlya vstavki a prizvodit do vikliku funkciyi v comu vipadku self insert command Deyaki iz tipovih komand perelicheno nizhche reshtu komand mozhna znajti v dovidci Emaksa Klavishu Ctrl poznacheno literoyu S a meta abo Alt literoyu M Komanda Kombinaciya klavish Opisannya forward char C f Peresunuti kursor na nastupnij simvol vpravo backward char C b Peresunuti kursor na poperednij simvol vlivo previous line C p Perejti na poperednij ryadok vgoru next line C n Perejti na nastupnij ryadok vniz forward word M f Perejti na odne slovo vpered backward word M b Perejti na odne slovo nazad beginning of line C a Perejti na pochatok ryadka end of line C e Perejti na kinec ryadka isearch forward C s Pochati inkrementnij poshuk vpered isearch backward C r Pochati inkrementnij poshuk nazad undo C Skasuvati ostannyu zminu i poperedni pri povtornomu vikliku keyboard quit C g Skasuvati potochnu komandu fill paragraph M q Rozbiti paragraf na ryadki find file C x C f Vidkriti fajl slid vkazati im ya v okremomu buferi dlya redaguvannya save buffer C x C s Zberegti potochnij bufer u vidpovidnomu fajli write file C x C w Zberegti potochnij bufer u fajli z vkazanim im yam save buffers kill emacs C x C c Zaproponuvati zberegti zmini a potim zakriti Emaks set marker C space C Vstanoviti marker na pochatok regionu tekstu yakij slid kopiyuvati abo virizati cut C w Virizati ves tekst mizh markerom ta potochnim miscem znahodzhennya kursora copy M w Skopiyuvati tekst mizh markerom ta potochnim miscem znahodzhennya kursora paste C y Vstaviti tekst z bufera obminu Emaksa paste special C x C r Vstaviti specialnij tekst iz bufera obminu Emaksa kill buffer C x k Zakriti bufer z vkazanim im yam abo potochnij bufer yaksho im ya vidsutnye Dodatkovi paketiIsnuye velika kilkist dodatkovih paketiv rozshirennya funkcionalnosti sistemi Tak v standartnomu distributivi GNU Emacs ye paketi dlya emulyaciyi terminaliv poshtovij kliyent kalendar kliyent Usenet fajlovij menedzher pereglyadachi dovidkovih storinok dokumentiv dopomogi tosho Isnuyut makrosi dlya polegshennya redaguvannya fajliv riznih formativ teksti program teksti v formati SGML XML ta LaTeX tosho GNU Emacs takozh mozhe vikoristovuvatis yak integrovane seredovishe dlya stvorennya program dokumentiv sajtiv Napriklad Org programnij zasib dlya vedennya notatok spiskiv zavdan planuvannya ta mova rozmitki danih Project el dodaye instrumenti dlya vzayemodiyi z pochatkovim kodom proyektiv a takozh navigaciyi ta poshuku priznacheno dlya polegshennya roboti z XML dokumentami Makrosi z cogo paketu dodayut mozhlivosti validaciyi XML dokumentiv proti RELAX NG XML shem avtomatichne rozstavlennya vidstupiv tosho VC dodaye zasobi roboti z repozitoriyami sistem keruvannya versiyami Pochinayuchi z versiyi 24 v GNU Emacs vbudovanij menedzher paketiv package el zavdyaki yakomu mozhna vstanoviti dodatkovi paketi za dopomogoyu komandi M x package install Najvidomishi repozitoriyi GNU oficijnij repozitorij proyektu yakij mistit paketi shvaleni FSF NonGNU ELPA 25 sichnya 2022 u Wayback Machine takozh ye oficijnim ale na vidminu vid GNU ELPA ne vimagaye peredavati avtorski prava MELPA 19 lyutogo 2022 u Wayback Machine neoficijnij repozitorij ale mistit najbilshu kilkist paketiv Inshi populyarni 11 sichnya 2022 u Wayback Machine paketi sho ne vhodyat do skladu GNU Emacs interfejs do sistemi keruvannya versiyami Git Company 12 sichnya 2022 u Wayback Machine frejmvork dlya avtodopovnennya Evil 16 lyutogo 2022 u Wayback Machine emulyuye tekstovij redaktor Vim LSP mode 15 lyutogo 2022 u Wayback Machine dodaye pidtrimku Flycheck 18 travnya 2021 u Wayback Machine sistema perevirki sintaksisu AUCTeX robit GNU Emacs zruchnim seredovishem dlya pidgotovki dokumentiv TeX nadaye zasobi stvorennya ta pidtrimki lokalnih Wiki sajtiv A mediawiki mode 15 lyutogo 2022 u Wayback Machine polegshuye redaguvannya statej Wikipedia Informaciyu pro dodatkovi makrosi ta paketi takozh mozhna znajti na sajti EmacsWiki 6 grudnya 2012 u Wayback Machine Okrim redaguvannya tekstiv ta dokumentiv Emacs mozhe vikoristovuvatis yak seredovishe dlya vikonannya komp yuternih igor Do skladu standartnogo distributivu GNU Emacs vklyucheno vidomu programu zapustiti yaku mozhna v redaktori komandoyu M x doctor Tetris ta inshi Div takozhEmacs Lisp mova programuvannya makrosiv v GNU Emacs Lokalizaciya GNU Emacs priklad nalashtuvannya GNU Emacs dlya roboti z kirilichnimi tekstami wikipedia mode zastosuvannya Emacs dlya redaguvannya statej Vikipediyi Posilannya Oficijna storinka GNU Emacs 13 chervnya 2006 u Wayback Machine EmacsWiki 6 grudnya 2012 u Wayback Machine Wiki prisvyachena Emacs ukr Primitkihttps www gnu org software emacs Ce nezavershena stattya pro programne zabezpechennya Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi