Emacs/Tryby
Rozróżniamy tryby :
- uruchomieniowe : tekstowe i graficzne
- pracy : główne i dodatkowe ( ang. major and minor mode)
Tryby pracy
edytujEmacsa można dostosować do swoich potrzeb. Wykonuje się to poprzez wybranie odpowiedniego trybu ( ang. mode ):
- ręczne
- automatycznie ( po otwarciu pliku określonego typu )
Typy trybów
edytujIstnieją dwa typy trybów Emacsa :
- główne (ang. Major mode)
- dodatkowe (ang. Minor mode).
Dla pojedynczego bufora może być wywołany tylko jeden tryb głównych oraz wiele dodatkowych.
Istnieją tryby główne dla większości języków programowania które m.i. kolorują składnie, dodają nowe funkcje, nowe kombinacje klawiszy lub inteligentne "wcinanie" kodu źródłowego.
Dodatkowe tryby służą zazwyczaj do dodania jakiejś jednej funkcji np. wyświetlanie zegarka czy liczby wierszy.
Definicje trybów są umieszczone w plikach elispa ( rozszerzenie el ) za zwyczaj w katalogu:
/usr/share/emacs/site-lisp/
Wyjątkiem jest tryb cc-mode
Rodzaje trybów wg zastosowań
edytuj- dla sprawdzania pisowni, np. Flyspell
- dla programowania
- podświetlania składni (ang. "syntax highlighting" ) : tryb dodatkowy Font Lock
- przeglądanie katalogów (M-x dired)[1]
- obsługa urządzeń typu modemy
- graficzna przeglądarka stron WWW,
- klient poczty elektronicznej,
- gry komputerowe
- implementacja ELIZY.
Tryby główne dla języków programowanie
edytujTryby wybieramy :[2]
M-x TRYB-mode
np. :
- tryb AWK'a : M-x awk-mode
- tryb BASH'a : M-x sh-mode
- tryb C/C++
- tryb Pythona : M-x python-mode
- tryb Fortrana : M-x fortran-mode
- Java : M-x java-mode
- JavaScript : M-x javascript-mode
- PHP : M-x php-mode
- Pascal : M-x pascal-mode
- HTML : M-x html-mode
Lisp
edytujInferiorEmacsLispMode
edytujOtwieranie :
- M-x ielm
Bufor w tym trybie przypomina powłokę ( ang. shell). Wwyrażenia są wykonywane a rezultat wyświetlany w buforze.
Lisp-Interaction mode
edytujBufor *scratch* jest w tym trybie. Ten tryb nieznacznie różni się od Emacs-Lisp mode.
SLIME
edytujSkrót SLIME oznacza :
- Superior Lisp Interaction Mode, Enhanced.[3]
- The Superior Lisp Interaction Mode for Emacs
Jest oparty na :
- Emacs Lisp
- ILISP
Jest to tryb Emacsa dla Common Lispa, w szczególności :
- CMU Common Lisp (CMUCL)
- Steel Bank Common Lisp (SBCL)
- Clozure CL (a.k.a. OpenMCL)
- LispWorks
- Allegro CL
- CLISP
- Scieneer CL
- ECL
- Corman CL
- ABCL
SLIME należy do minor-mode
Otwieranie trybów
edytujJest to możliwe za pomocą komend lub menu.