Tutorial GNU Emacs: come modificare un file (cheat sheet incluso)

Pubblicato: 2016-01-26

emac tutorial Byte brevi: vuoi imparare le basi dell'editor di testo Emacs? Bene, ecco un tutorial di base per iniziare. Per chi non lo sapesse, GNU Emacs è un editor di testo molto popolare che viene fornito con un'ampia gamma di funzionalità.

Di recente ho iniziato a imparare Emacs e in questo post descriverò come modificare un file di testo in Emacs e alcune scorciatoie utilizzate principalmente. Questo post è rivolto a coloro che non hanno mai usato Emacs o sono stati abbastanza pigri da leggere persino il tutorial introduttivo, proprio come me.

Allora, cos'è Emacs?

GNU Emacs, o generalmente solo Emacs, è un editor di visualizzazione in tempo reale estensibile, personalizzabile e auto-documentante secondo la sua pagina man. È più di un semplice editor di testo. Può essere utilizzato per visualizzare e-mail, navigare sul Web, compilare ed eseguire programmi, testare software (utilizzando gdb) e gestire file. Per il bene di questo post, lo useremo come editor di testo.

L'editing è così difficile in Emacs?

No, per niente. Puoi modificare i tuoi file utilizzando solo il mouse e la tastiera, senza scorciatoie. Proprio come Blocco note. Apparentemente, non è molto efficiente. Hai bisogno di scorciatoie per alcune attività frequenti ed Emacs ne ha migliaia.

Facciamo un po' di editing...

Apri un file in Emacs

Bene. Premi Ctrl-x Ctrl-f . Quindi digita il nome del file. Puoi vedere il nome del file mentre digiti nella riga inferiore dello schermo (noto come minibuffer). Anche il completamento Tab funziona lì.

In alternativa, si può anche aprire un file utilizzando un menu a tendina file, o aprire l'icona del file (angolo in alto a sinistra della cornice di Emacs), o semplicemente facendo doppio clic sul file.

Movimento di base del cursore

Emacs supporta il movimento del cursore tramite i tasti freccia, ma è sempre meglio avere le dita nella posizione standard della tastiera. Ecco un elenco di associazioni di tasti per il movimento di base attorno al testo.

Ctrl-p: passa alla riga precedente

Ctrl-n: passa alla riga successiva

Ctrl-f: avanza di un carattere

Ctrl-b: torna indietro di un carattere

Ctrl-e: Sposta alla fine della riga

Ctrl-a: Sposta all'inizio della riga

Ci sono Meta cugini della maggior parte di queste scorciatoie. Come Ctrl-f sposta il cursore in avanti di un carattere, Meta-f sposta il cursore in avanti di una parola. Meta viene visualizzato come Alt sulla maggior parte delle tastiere.

Un po' di terminologia prima della prossima sezione

In Emacs, la nozione di buffer è molto comune. In generale, una volta aperto un file, si dice che risieda in un buffer. Qualsiasi modifica apportata a quel file esiste nel buffer. A meno che tu non abbia salvato tali modifiche, non vengono visualizzate sul disco. Emacs supporta l'editing simultaneo di più buffer. Cioè, puoi caricare più file nei buffer di Emacs e passare da uno all'altro senza perdere le modifiche apportate.

La nozione di Windows è diversa in Emacs rispetto ad altri software comunemente usati. In Emacs, è possibile dividere lo schermo in più finestre, ognuna con il proprio buffer. Si noti che entrambe le finestre condividono lo stesso schermo, gli stessi menu di file e gli stessi pulsanti di chiusura e riduzione a icona. In senso generale, entrambi esistono sulla stessa finestra.

Ciò che altri software chiamano finestra, Emacs li chiama frame. Cioè, ogni fotogramma ha i suoi diversi menu di file e pulsanti di chiusura.

Modifica di più finestre in Emacs

La modifica di più finestre è una delle funzionalità che mi piace di più in Emacs. Ci sono diverse scorciatoie di modifica multi-finestra in Emacs. Proverò a ridurlo al minimo. Basta modificare due file contemporaneamente.

Innanzitutto, apri un file usando Ctrl-x Ctrl-f, quindi il nome del file. Quindi premere Ctrl-x 2 . Questo dividerebbe la finestra in due, una sotto l'altra. Inizialmente, entrambe le finestre visualizzano lo stesso buffer. Per passare da una finestra all'altra, premi Ctrl-x o . Apri un altro file nella seconda finestra e modificali entrambi contemporaneamente. In alternativa, Emacs può visualizzare più finestre in parallelo. Per fare ciò premi Ctrl-x 3.

Per chiudere la seconda finestra, cioè visualizzare solo una finestra sul frame, premere Ctrl-X 1. Quando si interrompe una finestra, il buffer associato a quella non viene distrutto. In altre parole, tutte le modifiche apportate alla seconda finestra non vanno perse. Quel buffer è solo nascosto. Per passare da un buffer all'altro, leggere la sezione successiva.

Passaggio da un buffer all'altro

Un principiante potrebbe non trovare l'idea di buffer multipli abbastanza intuitiva. Beh, non l'ho fatto. Ho usato per aprire un file, apportare modifiche, salvarlo, chiuderlo, aprirne un altro. Anche per riferimento, devi prima salvare e chiudere, o aprire un'altra finestra dell'editor di testo (es. frame nel contesto di Emacs), per visualizzare un altro file. Credimi, più buffer possono rendere le attività molto più semplici ed efficienti.

Il passaggio tra i buffer aperti è piuttosto semplice in Emacs. Premi Ctrl-x b, quindi digita il nome del buffer. È possibile utilizzare il completamento delle tab per tali attività. In alternativa, premi Ctrl-x Ctrl-b. Questo aprirebbe un'altra finestra che mostra l'elenco dei buffer. Per chiudere questa finestra, sai cosa fare. Potresti vedere alcuni buffer esistenti in precedenza come TUTORIAL, *Messages*, ecc. Il loro utilizzo sarà evidente quando li apri.

Salvataggio file in Emacs

Questo è forse il compito più importante. Emacs è abbastanza intelligente da non perdere le modifiche quando esci senza salvare o dopo un'interruzione di corrente. Quando non hai salvato le tue modifiche ed Emacs è chiuso, per qualsiasi motivo, per impostazione predefinita viene creato un nuovo file chiamato #filename.txt# . Questo file contiene tutte le modifiche non salvate. Tuttavia, è meglio evitare di correre rischi quando non è necessario e salvare i file prima di uscire.

Per salvare le modifiche apportate nel buffer, premere Ctrl-x Ctrl-s. In alternativa, premere Ctrl-x Ctrl-w, per salvare il file con un altro nome.

Varie:

Alcune altre scorciatoie e funzionalità di Emacs che potresti trovare utili.

Annullamento di un comando

Se sei rimasto bloccato nell'area del minibuffer, a causa di un comando inserito parzialmente o per qualsiasi altro motivo, premi Ctrl-g per uscire dall'operazione. In alternativa, anche premendo tre volte il tasto Esc ( Esc Esc Esc) si annulla un'operazione parziale.

Ricerca

Per cercare una parola chiave o una frase, premere Ctrl-s e digitare la parola chiave. La parola chiave durante la digitazione verrà visualizzata nel minibuffer (riga più in basso). Emacs esegue una ricerca incrementale per la parola chiave, ovvero inizia a cercare non appena si digita il primo carattere. Per trovare l'occorrenza successiva della parola chiave, premi di nuovo Ctrl-s .

Smettere subito

Si può uscire da Emacs premendo il pulsante di chiusura (X) visualizzato in alto (ovunque il DE lo mostri). Poiché in questo post stiamo parlando solo della riga di comando, premere Ctrl-x Ctrl-c fa la stessa cosa. Sebbene visualizzi un avviso nel minibuffer se hai buffer non salvati. Basta premere y o n lì.

Scorrimento

Lo scorrimento delle righe è descritto sopra, ad esempio premendo Ctrl-n o Ctrl-p. Per scorrere le pagine, premi Ctrl-v o Meta-v .

Nota conclusiva

Ho provato a descrivere alcune scorciatoie usate più di frequente e la modifica di base dei file in Emacs. Quello che ho descritto è solo una frazione di ciò che puoi fare con Emacs. Tuttavia questo sarebbe sufficiente per iniziare con Emacs. Pubblicherò di più su Emacs man mano che imparerò ulteriormente e troverò funzionalità che vale la pena pubblicare.

Se hai iniziato ad imparare Emacs e ti sei trovato simpatico, ti consiglio vivamente di leggere il tutorial introduttivo fornito con Emacs.

Cheat sheet di Emacs

Prendi una stampa di questo cheat sheet (Emacs Cheat Sheet) e prova a eseguire operazioni usando solo combinazioni di tasti. Evita di usare il mouse il più possibile e vedrai quanto diventa efficiente la modifica del testo.

Hai trovato utile questo tutorial di base su Emacs? Raccontaci le tue opinioni nei commenti qui sotto.