Portál AbcLinuxu, 4. červenec 2020 22:50

Emacs - jak začít

3. 3. 2004 | Jan Fuchs
Články - Emacs - jak začít  

Ať už jste Emacs někdy zahlédli nebo vás to teprve čeká, může se vám hodit přehled těch nejdůležitějších příkazů, které využijete při práci s textem.

Úvod

Emacs není "jen" textový editor. Umožňuje ladit programy, pracovat s poštou, prohlížet WWW, hrát hry, povídat si atd. Představím vám ho, ale pouze z hlediska textového editoru. Má vlastní programovací jazyk Emacs LISP, pomocí kterého je celý napsán. Jeho autor je Richard Stallman (zakladatel FSF). Pracuje v textovém režimu i v prostředí X-Window. Chcete-li v X spustit textovou verzi editoru, zajistíte to následujícím příkazem.

emacs -nw

 

Jako další argument můžete zadat název souboru, který chcete editovat. Editor ukončíte následující kombinací kláves.

Ctrl+x Ctrl+c

Buffery

Do bufferů si Emacs ukládá editované soubory. Obsahuje 3 speciální buffery *scratch*, *Messages*, *Buffer List*, které se automaticky otevřou při spuštění. Následujícím příkazem spustíme Emacs a otevřeme 3 nové buffery pro 3 nové soubory.

emacs prvni druhy treti

Obrazovka editoru se rozdělila na dvě poloviny. V první polovině je buffer posledního souboru s názvem treti a v té druhé speciální buffer *Buffer List*, který obsahuje seznam všech otevřených bufferů. Zkuste přecházet mezi okny s buffery.

Ctrl+x o

Nacházíte se v bufferu treti a chcete mít na obrazovce pouze tento buffer, proto zavřete všechny ostatní okna.

Ctrl+x 1

Nyní se přesuňte do bufferu prvni. Pro doplňování můžete používat TAB, jak jste zvyklí z Bashe. V případě, že existuje několik možností, otevře Emacs další buffer a v něm je zobrazí. Po doplnění se buffer zase sám zavře. Když se vás Emacs ptá, do kterého bufferu se chcete přesunout, zobrazuje na řádku výchozí možnost (tj. předchozí zobrazený buffer), která se vybere, stisknete-li ENTER.

Ctrl+x b prvni

Rozdělte okno na dvě.

Ctrl+x 2

Přepněte se v prvním okně do bufferu druhy a v druhém okně do bufferu treti.

Ctrl+x b druhy
Ctrl+x 4 b treti

Jste v druhém okně, zavřete všechny ostatní (v našem případě pouze jedno). Zavřete buffer treti, druhy.

Ctrl+x 1
Ctrl+x k treti
Ctrl+x k druhy

Soubory a adresáře

Otevřete si libovolný soubor.

Ctrl+x Ctrl+f

Místo souboru si otevřete nějaký adresář.

Ctrl+x Ctrl+d

Nyní můžete pracovat s adresáři a soubory.

Pohyb v textu

Zkuste pro pohyb v textu použít Left, Right, Down, Up, Home, End, PageUp, PageDown. A nyní to zkuste s držením klávesy Ctrl. Dle mého názoru je ale rychlejší používat následující klávesové zkratky. Mají ekvivalentní funkci jako předchozí klávesy a podle toho jsou řazeny za sebou. U prvních šesti zkuste ještě držet Alt místo Ctrl.

Ctrl+b
Ctrl+f
Ctrl+n
Ctrl+p
Ctrl+a
Ctrl+e
Alt+v
Ctrl+v

Místo držení klávesy Alt můžete stisknout a uvolnit Esc.

Základy editace

Otevřete si buffer s nějakým textem. Označte si začátek (konec) regionu.

Ctrl+MEZERA

Posuňte se např. o dva řádky dolů. A pak text vyjměte a nebo ho zkopírujte do schránky.

Ctrl+w
Alt+w

Dle chuti se přesuňte na jiné místo v textu a vložte obsah schránky na pozici kurzoru.

Ctrl+y

Makra

Zkopírujte si do bufferu následující text.

www.abclinuxu.cz
www.root.cz
www.underground.cz
www.qwert.cz
www.penguin.cz
www.seif.cz

Máte za úkol pomocí makra upravit text do následující podoby.

Abclinuxu - http://www.abclinuxu.cz
Root - http://www.root.cz
Underground - http://www.underground.cz
Qwert - http://www.qwert.cz
Penguin - http://www.penguin.cz
Seif - http://www.seif.cz

Jsme na prvním řádku textu a provedeme definici makra.

Ctrl+x (
Ctrl+a
http://
Alt+f
Ctrl+f
Ctrl+MEZERA
Alt+f
Alt+w
Ctrl+a
Ctrl+y
 -
Ctrl+a
Alt+c
Ctrl+n
Ctrl+x )

Nyní spustíme 5x naše makro.

Alt+5 Ctrl+x e

A máme hotovo. Naše první makro se nám zalíbilo a proto si ho pojmenujeme pekne_makro. Na druhém řádku vidíme, jak ho pak můžeme spouštět.

Alt+x name-last-kbd-macro
Alt+x pekne_makro

Uložíme si ho do souboru ~/.emacs. A můžeme ho používat i při dalším spuštění Emacsu.

Ctrl+x f ~/.emacs
Alt+x insert-kbd-macro

Můžete si nadefinovat spuštění makra po stisknutí klávesy F1, přídáním následujícího řádku za definici makra.

(global-set-key (quote [f1]) 'pekne_makro)

~/.emacs

Pro začátek by se vám mohlo hodit něco z níže uvedeného konfiguračního souboru.

(custom-set-variables
'(default-input-method "czech")
'(load-home-init-file t t)
'(case-fold-search t)
'(global-font-lock-mode t nil (font-lock))
'(current-language-environment "Czech"))

(custom-set-faces)

; Nastavení kódování
(if window-system
(setq clipboard-coding-system 'latin-2)
(set-terminal-coding-system 'latin-2))

(set-selection-coding-system 'iso-8859-2)
(setq process-coding-system-alist '((".*" . iso-8859-2)))

; U souborů s příponou tk zapne tcl-mode
(setq auto-mode-alist (cons '("\\.tk$" . tcl-mode) auto-mode-alist))

; Počet mezer při odsazování
(setq c-basic-offset '2)

; Definice hlavního módu
(setq default-major-mode 'text-mode)

; Definice vedlejšího módu
(add-hook 'text-mode-hook 'turn-on-auto-fill)

Závěr

Dle mého názor jsou editory Emacs a Vim jedny z nejlepších a nejmocnějších. Věčné hádky, bitky a války o tom, který z nich je lepší, nemají žádný smysl.

Nedávno jsem začal používat Vim. Proč?

Nedoporučuji používat oba editory zároveň. Dřív jsem používal klávesové zkratky Emacsu ve Vimu a nyní to dělám obráceně. Zvyk je zvyk ;-)

Související články

Mutt - jak začít
Editor VIM prakticky

Odkazy a zdroje

GNU Emacs

Další články z této rubriky

VDR a DVB-T2, část 2.
VDR a DVB-T2, část 1.
Šifrovaný Proxmox VE 6: ZFS, LUKS, systemd_boot a Dropbear
MapTiler – proměňte obrázek v zoomovatelnou mapu
Syncthing

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.