RIFERIMENTO RAPIDO EMACS
Navigazione, modifica, buffer, ricerca, org mode, pacchetti
Navigazione
Movimento del Cursore
| C-f / C-b | Avanti / indietro di un carattere |
| M-f / M-b | Avanti / indietro di una parola |
| C-n / C-p | Riga successiva / precedente |
| C-a / C-e | Inizio / fine riga |
| M-a / M-e | Inizio / fine frase |
| C-v / M-v | Scorri giù / su di una pagina |
| M-< / M-> | Inizio / fine buffer |
| M-g g | Vai al numero di riga |
Posizionamento Schermo
| C-l | Centra schermo (cicla in alto/centro/basso) |
| C-M-l | Riposiziona la finestra euristicamente |
Modifica
Kill e Yank (Taglia e Incolla)
| C-k | Kill fino a fine riga |
| C-w | Kill regione (taglia) |
| M-w | Copia regione |
| C-y | Yank (incolla) |
| M-y | Cicla nel kill ring dopo yank |
| C-d | Elimina carattere in avanti |
| M-d | Kill parola in avanti |
| M-DEL | Kill parola indietro |
Annulla e Trasponi
| C-/ o C-_ | Annulla |
| C-g C-/ | Ripristina (annulla l'annullamento) |
| C-t | Trasponi caratteri |
| M-t | Trasponi parole |
| C-x C-t | Trasponi righe |
Selezione
| C-SPC | Imposta marca (inizia selezione) |
| C-x h | Seleziona tutto il buffer |
| M-h | Seleziona paragrafo |
| C-x C-x | Scambia punto e marca |
Buffer e Finestre
Buffer
| C-x b | Passa a un buffer |
| C-x C-b | Elenca tutti i buffer |
| C-x k | Kill (chiudi) buffer |
| C-x LEFT / RIGHT | Buffer precedente / successivo |
Finestre
| C-x 2 | Dividi finestra orizzontalmente |
| C-x 3 | Dividi finestra verticalmente |
| C-x 0 | Chiudi finestra corrente |
| C-x 1 | Chiudi tutte le altre finestre |
| C-x o | Passa all'altra finestra |
| C-x ^ | Espandi finestra verticalmente |
| C-x { | Riduci finestra orizzontalmente |
Frame
| C-x 5 2 | Crea nuovo frame |
| C-x 5 0 | Elimina frame corrente |
| C-x 5 o | Passa all'altro frame |
Ricerca e Sostituzione
Ricerca Incrementale
| C-s | Cerca in avanti (incrementale) |
| C-r | Cerca indietro (incrementale) |
| C-s C-s | Ripeti ultima ricerca in avanti |
| C-M-s | Ricerca regex in avanti |
| C-M-r | Ricerca regex indietro |
| RET | Esci dalla ricerca nella posizione corrente |
| C-g | Annulla ricerca, torna all'inizio |
Sostituzione
| M-% | Sostituisci con conferma |
| C-M-% | Sostituisci con conferma (regex) |
| y | Sostituisci questa corrispondenza |
| n | Salta questa corrispondenza |
| ! | Sostituisci tutte le rimanenti |
| q | Esci dalla sostituzione |
File
Operazioni sui File
| C-x C-f | Trova (apri) file |
| C-x C-s | Salva buffer corrente |
| C-x C-w | Salva come (scrivi su nuovo file) |
| C-x s | Salva tutti i buffer modificati |
| C-x C-r | Apri file in sola lettura |
| C-x i | Inserisci contenuto file al punto |
Dired (Editor Directory)
| C-x d | Apri directory in Dired |
| d / x | Segna per eliminazione / esegui eliminazioni |
| R | Rinomina / sposta file |
| C | Copia file |
| + | Crea directory |
| g | Aggiorna l'elenco |
Modalità
Modalità Principali
| M-x fundamental-mode | Modifica testo semplice |
| M-x text-mode | Testo con riempimento e correttore |
| M-x prog-mode | Base per le modalità di programmazione |
| M-x python-mode | Modifica Python e indentazione |
| M-x shell-mode | Shell interattiva nel buffer |
Modalità Minori Utili
| M-x display-line-numbers-mode | Alterna numeri di riga |
| M-x auto-fill-mode | Testo a capo automatico alla colonna di riempimento |
| M-x flyspell-mode | Correttore ortografico al volo |
| M-x column-number-mode | Mostra colonna nella riga di modo |
| M-x whitespace-mode | Visualizza gli spazi bianchi |
| M-x electric-pair-mode | Chiusura automatica parentesi e virgolette |
Basi di Org Mode
Struttura
| * / ** / *** | Livelli di intestazione 1 / 2 / 3 |
| TAB | Cicla visibilità intestazione |
| S-TAB | Cicla visibilità globale |
| M-RET | Inserisci intestazione allo stesso livello |
| M-LEFT / M-RIGHT | Promuovi / retrocedi intestazione |
| M-UP / M-DOWN | Sposta sottostruttura su / giù |
TODO e Checkbox
| C-c C-t | Cicla stato TODO |
| C-c C-d | Imposta scadenza |
| C-c C-s | Pianifica elemento |
| C-c C-c | Alterna checkbox [ ] / [X] |
| C-c a | Apri vista agenda |
Link ed Esportazione
| C-c C-l | Inserisci / modifica link |
| C-c C-o | Apri link al punto |
| C-c C-e | Dispatcher esportazione (HTML, PDF, ecc.) |
Gestione Pacchetti
package.el
| M-x list-packages | Sfoglia i pacchetti disponibili |
| i / d / x | Segna installa / elimina / esegui |
| U | Segna tutti gli aggiornabili |
| M-x package-refresh-contents | Aggiorna la lista dei pacchetti |
use-package (init.el)
(use-package magit
:ensure t
:bind ("C-x g" . magit-status))
(use-package company
:ensure t
:hook (prog-mode . company-mode))
Configurazione
File di Configurazione Principali
| ~/.emacs.d/init.el | File di configurazione principale |
| ~/.emacs.d/early-init.el | Init anticipato (prima della GUI, Emacs 27+) |
| ~/.emacs.d/custom.el | Impostazioni scritte da Customize |
Impostazioni Comuni
(setq inhibit-startup-screen t)
(tool-bar-mode -1)
(set-face-attribute 'default nil :height 120)
(global-display-line-numbers-mode 1)
(setq make-backup-files nil)
Sistema di Aiuto
| C-h k | Descrivi la scorciatoia da tastiera |
| C-h f | Descrivi la funzione |
| C-h v | Descrivi la variabile |
| C-h m | Descrivi le modalità correnti |
| C-h t | Apri il tutorial di Emacs |
| C-h i | Apri la documentazione Info |
Pattern Comuni
Modifica Rettangolo
| C-x SPC | Avvia modalità marca rettangolo |
| C-x r k | Kill rettangolo |
| C-x r y | Yank rettangolo |
| C-x r t | Sostituisce rettangolo con stringa |
| C-x r o | Inserisci rettangolo vuoto |
Macro
| C-x ( | Inizia registrazione macro |
| C-x ) | Ferma registrazione macro |
| C-x e | Esegui ultima macro |
| C-u 10 C-x e | Esegui macro 10 volte |
| M-x name-last-kbd-macro | Assegna nome alla macro per riuso |
Shell e Eval
| M-x shell | Apri shell nel buffer |
| M-x eshell | Shell Emacs Lisp |
| M-! | Esegui comando shell |
| M-x eval-buffer | Valuta l'intero buffer come Elisp |
| C-x C-e | Valuta espressione Elisp prima del punto |