Znáte možnosti Emacsu?

2. 5. 2007
Doba čtení: 4 minuty

Sdílet

Jedněmi zatracovaný, druhými milovaný, takový je Emacs. Chcete vědět, čím si tento starobylý editor i dnes stále získává nové a nové uživatele? Chcete nahlédnout do nevyčerpatelné zásoby jeho možností, funkcí, pluginů a rozšíření?

Úvodem

Tento článek je pouze takovým krátkým exkurzem do pohádkového světa tohoto mocného editoru, nikoliv jeho učebnicí. Chcete-li se naučit pracovat s tímto editorem, podívejte se na náš úvodní seriál o Emacsu nebo na seriál pro mírně pokročilé emacsisty.

Jak vlastně vznikl?

Vývoj Emacsu započal Richard M. Stallman již roku 1975, takže Emacs již před dvěma lety oslavil své třicátiny. Ostatně je to vidět i na číslu verze, která je v současné době 21.4 a chystá se 22.

Nesmírně zajímavý je jeho návrh. V jazyce C je napsán interpret jazyka Lisp, respektive jeho dialektu Emacs Lisp, v kterém je pak de facto celý zbytek editoru napsán. Z toho vyplývá několik veskrze pozitivních vlastností, jimž vévodí naprosto dokonalá rozšiřitelnost. Stinnou stranou mince je trochu pomalejší běh, který nám ale dnes již naštěstí vrásky na čele díky výkonu počítačů dělat nemusí, a také nejednotnost vývoje. Jednak existuje několik ne vždy úplně kompatibilních forků jako je MicroEmacs, Jove, SXEmacs nebo XEmacs, ale také máme odlišné balíčky v různých distribucích a podobně. Mimochodem když už jsem zmínil ten MicroEmacs – není bez zajímavosti, že v něm píše i Linus Torvalds.

Možnosti Emacsu

Čím dál tím více se přesvědčuji, že v Emacsu jde prostě všechno. V Emacsu chodím na jabber, IRC, čtu si v něm poštu a když se nudím ve škole, tak hraji Tetris nebo šachy. Když potřebuji vyvíjet, Emacs mi poskytuje komplexní vývojové prostředí pro Ruby, Ruby on Rails, CSS, HTML, MySQL, Lisp, TeX a vůbec cokoliv, co potřebuji. A pokud začnu mít deprese, v Emacsu mám dokonce integrovaného i psychiatra.

Jedna z největších výhod oproti mnohým jiným editorům je geniální vazba na okolní prostředí. Oceníte to zejména u debuggeru, debugování TeXových dokumentů, MySQL, PostgreSQL či SQL lite konsole. V Emacsu není pak nejmenší problém skákat na další chyby v kompilaci, zvýrazňovat na SQL konsolích syntaxi a podobně.

Verze

V současné době je stabilní verze 21.4. Ta bohužel není bezchybná, a tedy bych raději doporučil kompilaci vývojové verze 22 pre. Ta je na tom podstatně lépe s podporou unicode a navíc zkompilována s volbou --with-gtk bude nyní v líbivém GTK 2 kabátku.

Budete-li instalovat z balíčkovacího systému, můžete rovněž zvážit, zda chcete používat GUI, a pak instalovat klasicky balíček emacs, anebo GUI nepotřebujete, a pak stačí instalovat balíček emacs-nox.

emacs-gtk

Nový Emacs se vzhledově velmi zlepšil.

Letem světem rozšířeními Emacsu

Rozšíření, na které jsem si rychle zvykl, je emacs-jabber. Jak již název napovídá, je to plnohodnotný XMPP klient napsaný v Emacs Lispu. V bufferu -jabber zpřístupňuje váš roster, každý rozhovor či MUC samozřejmě obsazují buffer vlastní.

emacs-jabber

Jabber klient je opravdu povedený.

Když už jsem u těch komunikátorů, nelze opomenout Erc, což je samozřejmě IRC klient. Jako v mnohých dalších případech, ani v případě IRC není pouze jediná možnost, dále existují například klient zenirc.

emacs-erc

Emacs a IRC? Žádný problém!

Gnus je již letitá klasika mezi rozšířeními pro tento editor. Je určen pro čtení diskusních skupin a správu pošty. Není to sice jediný klient svého druhu v Emacsu, ale za to je patrně nejpropracovanější.

Krom čtení pošty můžete také chodit na internet. Nejčastější a nejznámější je jistě prohlížeč W3.

Píšete-li v TeXu, jistě oceníte velmi precizně propracované prostředí AucTeX. Co jistě stojí za zmínku jsou náhledy, které umožní zorientovat se v tom, jak výsledný dokument bude zhruba vypadat. A to vše v teple vašeho útulného Emacsu.

emacs-auctex

Preview v AucTeXu (viz homepage projektu).

Autory rozsáhlejších textů potěší Emacs-muse, což je prostředí určené pro psaní a publikování textů. Díky němu můžete snadno exportovat svá data do LaTeXu, Texinfa, (X)HTML, Docbooku nebo Blosxomu.

emacs-devel

MySQL konsole a filemanager nečiní Emacsu nejmenší problém.

Na seznam činností, které lze v Emacsu provádět je nutno připočítat také hry. Již v defaultní podobě obsahuje například tetris, Go Moku, což jsou jednoduše piškvorky, ping-pong nebo blackbox. Doinstalovat si dále můžete třeba dosti zdařilé šachy.

emacs-games

Nudíte se? V Emacsu je k dispozici spoustu her.

Vývojářům dává Emacs krom jiného zabudové CVS, konsole pro MySQL, PostgreSQL či SQL-lite a velmi komplexní debugovací knihovny (GUD) s vazbou na mnoho různých debuggerů.

bitcoin_skoleni

emacs-gud

Debugování lze pohodlně provádět přímo z Emacsu.

Co z toho?

Cílem článku bylo předvést alespoň částečně velikou sílu textových editorů. Nechci však rozviřovat polemiku zda je lepší Vim nebo Emacs. Umíte-li některý z nich, určitě jste ve velké výhodě, oba jsou velmi mocné, byť jsou navzájem velmi odlišné. Nicméně i Vim se dá dosti rozšiřovat a třeba i ve Vimu můžete hrát Tetris nebo chodit na IRC. Já osobně dle potřeby a možností používám oba editory.

Odkazy

Mají editory význam pro moderní programování?

Autor článku

Jakub Šťastný byl v letech 2007 až 2008 redaktorem serveru Root.cz. Mezi jeho zájmy patří Linux, programování a typografický systém TeX.