Editor Emacs

emacs logo

Editor emacs je starší editor než vim. Navzájem jsou si konkurenti. Emacs není na linuxech tak často nainstalován jako vim, ale přesto je oblíbený. Pokud vás nebaví neustálé přecházení z příkazového režimu do vkládacího, emacs je pro vás jasná volba. A když kvůli ničemu jinému, tak sql-mysql nebo sql-postgres módy jsou prostě bomba!

Editor emacs se obsluhuje pomoci klavesovych skratek, jako napr. CTRL+x CTRL+c (Zmacknout klavesu CTRL, drzet ji a pritom zmacknout klavesu x a pote zase za drzeni CTRL zmacknout klavesu c)

Klavesa Meta je na modernich klavesnicich klavesa ALT.
Misto teto klavesy je mozne pouzit klavesu Escape. Escape se nedrzi, jen se stiskne (Napr. misto: ALT+x zadate: Esc x).

Pokud zmáčknete CTRL+s, které pozastavuje výpis na obrazovku (obrazovka „zamrzne“), stiskněte CTRL+q pro znovupovolení výpisu.
Zapněte enable-flow-control (stiskněte Meta+x, zapište enable-flow-control a stiskněte Enter). Poté všude místo CTRL+s používejte CTRL^+\.

SYNOPSIS

emacs [soubor ...]

Nápověda

Klávesovou zkratkou CTRL+h t spustíte tutoriál (v češtině), kde je ovládání editoru popsané. Protože by bylo zbytečné tento tutoriál opisovat, ve zbytku kapitoli jsou vypsány jen nejdůležitější klávesové zkratky.

Klávesová zkratkaAkce
CTRL+h CTRL+h CTRL+hnapoveda o napovede
CTRL+h tvyukovy program Emacsu (uz je i v cestine!)
CTRL+h ?ukaze dalsi moznosti napovedy
CTRL+h c zkratkaZobrazi strucnou napovedu k klavesove zkratce zkratka
CTRL+h k zkratkaZobrazi dlouhou napovedu k klavesove zkratce zkratka (otevrene okno zavre CTRL+1)
F10spusti se "menu" v tetxovem rezimu
CTRL+h iInfo stranky

Spuštění a vypnutí editoru

Klávesová zkratkaAkce
CTRL+x CTRL+fotevreni noveho souboru
CTRL+x CTRL+cukonceni prace s editorem
CTRL+x sulozeni vsech otevrenych souboru (emacs se bude ptat, ktery ulozit a ktery ne)
CTRL+x CTRL+sulozeni souboru
CTRL+x CTRL+wulozeni souboru pod jinym jmenem

Práce s bufferem

Buffer je pracovni oblast (v pameti pocitace), kde je ulozen soubor (nebo jiny objekt), se kterym emacs pracuje. Bufferu (souboru) muze byt otevreno vice.

Klávesová zkratkaAkce
CTRL+x CTRL+bzobrazeni seznamu bufferu (CTRL+x 1 zrusi okno s vypisem bufferu)
CTRL+x bprepnuti bufferu
CTRL+x kzruseni buffer

Další důležité zkratky

Klávesová zkratkaAkce
CTRL+gukonci provadeni zapocateho prikazu
CTRL+x uzrusi naposledy provedeno zmenu (undo)
CTRL+svyhledavani retezcu smerem vpred
CTRL+rvyhledavani retezcu smerem vzad

Pohyb kurzoru v editoru

Klávesová zkratkaAkce
CTRL+fkrok doprava (forward)
Meta+fkrok doprava o slovo
CTRL+bkrok doleva (backward)
Meta+bkrok doleva o slovo
CTRL+pkrok nahoru (previous)
CTRL+nkrok dolu (next)
Klávesová zkratkaAkce
CTRL+vposun na dalsi obrazovku
Meta+vposun na predchozi obrazovku
CTRL+lradka pod kurzorem se posune na stred obrazovky
Klávesová zkratkaAkce
CTRL+aposun na zacatek radku
CTRL+eposun na konec radku
Klávesová zkratkaAkce
Meta+>posun na konec souboru
Meta+<posun na zacatek souboru

Pohyb kurzoru lze ovlivnit numerickým argumentem (počtem opakování). Ten se zadává po příkazu CTRL+u (následuje číslo a příkaz pohybu kurzoru).

Práce s okny

Klávesová zkratkaAkce
CTRL+x 2rozdeli okno na dve casti - horizontalne
CTRL+x 3rozdeli okno na dve casti - vertikalne
CTRL+x opresune se do jineho okna
CTRL+x 0(nula) zrusi aktualni okno
CTRL+x 1smaze vsechny okna (nikoliv buffery) mimo aktualniho
CTRL+Meta+vScrollovani druheho okna

Práce s bloky textu

Klávesová zkratkaAkce
CTRL+mezernikoznaci zacatek bloku (konec bloku je tam, kam se zrovna presune kurzor)
CTRL+@stejne jako CTRL+mezernik
Meta+wzkopirovani bloku (copy)
CTRL+wvyjmuti bloku (cut)
CTRL+yvlozeni bloku (paste)
CTRL+k smaze text do konce radky

Ostatní

Klávesová zkratkaAkce
CTRL+qumozni vlozit ridici znak (napr. CTRL+q CTRL+q vlozi do souboru CTRL+q)
Meta+qzarovna odstavec (konce radku) - funkce fill-paragraph. Vice viz auto-fill-mode nize.

Vnitřní funkce editoru

Klavesove zkratky reprezentuji vnitrni funkce editoru, ktere maji sve jmeno a mohou byt zadany po stisku Meta+x. Napriklad CTRL+p je to same, jako Meta+x previous-line ENTER.

Funkce emacsuVýznam
query-replace nejdříve se zada zamenovany retezec a ENTER, pote novy retezec. Pak se jen zadava y pro zamenu a n pro ponechani puvodniho retezce. ENTER zmeny potvrdi, CTRL+g za behu prikazu zmeny zrusi.
auto-save-mode automaticke ukladani souboru do #nazevsouboru#
auto-fill-mode automaticke ukoncovani radek (zapne/vypne). Zkratka CTRL+x f nastaví šířku displeje pro auto-fill-mode

Po stisku Meta+x stačí zadat začátek příkazu a tabulátorem zbytek příkazu nechat doplnit.

Módy emacsu

Klávesová zkratkaAkce
CTRL+h minformace o aktualnim modu
Funkce emacsuVýznam
fundamental-modespusti zakladni mod emacsu
text-modespusti textovy mod (jen "male" vylepseni oproti fundamental, vhodne na editaci cesky psanych souboru)
sql-mysqlspusti SQL mod pro databazi mysql.
CTRL+x mspusti mail mod. Sprava se odesle pomoci CTRL+c CTRL+c

Nastavení konfiguračního souboru

Konfigurační soubor emacsu je ~/.emacs.

Následující ukázka je už hodně stará, tak pozor zejména na nastavování češtiny (latin2 už vážně nefrčí, dneska jede UTF-8!)

;; Are we running XEmacs or Emacs?
(defvar running-xemacs (string-match "XEmacs\\|Lucid" emacs-version))

;; Set up the keyboard so the delete key on both the regular keyboard
;; and the keypad delete the character under the cursor and to the right
;; under X, instead of the default, backspace behavior.
(global-set-key [delete] 'delete-char)
(global-set-key [kp-delete] 'delete-char)

;; Turn on font-lock mode for Emacs
(cond ((not running-xemacs)
       (global-font-lock-mode t)
))

;;(set font-lock-maximum-decoration t)

;; Visual feedback on selections
(setq-default transient-mark-mode t)

;; Always end a file with a newline
(setq require-final-newline t)

;; Stop at the end of the file, not just add lines
(setq next-line-add-newlines nil)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Czech support            ;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(set-language-environment "czech")
(setq default-input-method "czech-qwerty")
(set-terminal-coding-system 'latin-2)
(setq selection-coding-system 'latin-2)


;; cesky slovnik
;; slovnik se prepina pomoci: M-x ispell-change-dictionary
;; ispell se spousti pomoci: M-x ispell
(set-default 'ispell-local-dictionary "czech")
			    
(custom-set-variables
 '(load-home-init-file t t)
 '(gnuserv-program (concat exec-directory "/gnuserv")))
(custom-set-faces)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; automaticke ukoncovani radku

(setq auto-fill-mode t)

;; odsazovani v jazyce C o 4 znaky
(setq c-indent-level 2)

;; Misto CTRL+s se muze pouzivat CTRL+\
(enable-flow-control t)

Komentář Hlášení chyby
Created: 11.9.2005
Last updated: 13.7.2013
Tato stánka používá ke svému běhu cookies, díky kterým je možné monitorovat, co tu provádíte (ne že bych to bez cookies nezvládl). Také vás tu bude špehovat google analytics. Jestli si myslíte, že je to problém, vypněte si cookies ve vašem prohlížeči, nebo odejděte a už se nevracejte :-). Prohlížením tohoto webu souhlasíte s používáním cookies. Dozvědět se více..