Usando lisp in emacs

Usando lisp in emacs
La rapida progressione della tecnologia ha permesso a vari strumenti di programmazione di diventare prominenti e di entrare sotto i riflettori. Gli editori di testo sono inclusi in tali strumenti a causa del massiccio sviluppo che si verificano all'interno del business tecnologico. La loro natura leggera, insieme alla loro flessibilità di modificare e creare file e forti prestazioni fuori dalla scatola, ha reso i redattori di testo abbastanza apprezzati dalla comunità. I vantaggi forniti dagli editori di testo spesso portano gli sviluppatori a favorire questi strumenti rispetto ad altri strumenti simili, come l'IDE. Gli editori di testo siedono in prima linea nel lavoro svolto dagli sviluppatori, quindi è importante utilizzare un editor che fornisce una varietà di funzionalità in base alle tue esigenze.

EMACS è uno di questi esempi di un editore di testo che, a causa della sua versatilità e natura personalizzabile, ha raccolto il nome per se stesso tra la comunità degli sviluppatori. Come uno dei più antichi redattori di testo là fuori, Emacs è noto per la sua stabilità e coerenza.

Ciò che rende speciale EMACS è che non è solo un editor di testo, ma piuttosto una macchina a tutti gli effetti. Emacs può essere impostato come shell, un client di posta elettronica, un organizzatore e molto altro ancora. La complessità degli EMAC deriva dall'interprete LISP nel suo core, che a sua volta consente agli utenti di personalizzarlo con ancora più funzionalità utilizzando la lingua LISP.

Questo articolo copre come utilizzare LISP attraverso vari metodi per configurare e personalizzare EMACS.

Nozioni di base di Lisp

Prima di vedere come LISP può essere usato per configurare EMACS, è prima importante guardare alcune delle basi del linguaggio LISP per comprendere meglio questa funzione.

In LISP, i programmi sono costituiti da espressioni simboliche, abbreviati a S-EXP. Queste espressioni possono consistere solo di variabili o includere anche altre funzioni.

Una funzione è nota avvolgendo il testo all'interno di una parentesi. Ad esempio, per chiamare la funzione di addizione, viene utilizzata la seguente sintassi:

(+ 2 2)

La dichiarazione di cui sopra dice "Aggiungi 2 a 2."S-Exps nidificati sembrerà qualcosa del genere:

(+ 2 (+ 1 1))

È inoltre possibile archiviare i valori all'interno di una variabile utilizzando il comando setq:

(setq my-name "John")

Le funzioni possono essere definite usando il defun parola chiave. Ad esempio, una funzione che calcola il quadrato di un numero è scritta come segue:

(Defun Square (x)
(* x x)
(Square 2)

È possibile valutare le funzioni definite utilizzando le chiavi Ctrl + X seguito da Ctrl + e. Questo produrrà un'output all'interno del mini-buffer. Ad esempio, la funzione quadrata avrà il seguente output:

Nota: è necessario valutare sia il segmento DEFUN che il segmento quadrato.

Che copre le basi. Le seguenti sezioni mostreranno come configurare Emacs usando LISP.

File di inizializzazione

Quando si avvia EMACS, il primo file elaborato è il file di inizializzazione o il file INIT, che contiene comandi scritti in LISP che consentono agli utenti di configurare EMACS. Per aprire il file di inizializzazione, premere Ctrl + X, seguito da Ctrl + f, e poi entrare ~/.emacs. All'interno di questa espressione, è possibile inserire codice aggiuntivo per personalizzare EMACS.

1) Aggiunta del supporto per i pacchetti

LISP può essere utilizzato per aggiungere supporto in EMACS per pacchetti di diverse fonti. Melpa è una delle fonti da cui gli utenti possono installare queste estensioni. Per aggiungere Melpa a EMACS, aggiungere le seguenti righe al file INIT:

(Richiedi 'pacchetto)
(Archivi pacchetti aggiuntivi
'("Melpa" . "http: // melpa.org/pacchetti/") t)
(pacchetto-initialis)
(pacchetto-refresh contenenti)

Questo codice aggiunge l'archivio MELPA all'elenco dei repository del pacchetto, fornisce l'autorizzazione agli EMAC per utilizzare questi pacchetti, inizializza questi pacchetti e aggiorna il contenuto per le modifiche che si svolgono. Se apri l'elenco dei pacchetti toccando Alt + x ed entra pacchetti di pacchetto-pacchetti, Puoi vedere i pacchetti installati nell'archivio MELPA.


-

2) Cambiare il tema di Emacs

Inizialmente, quando carichi Emacs, otterrai uno schermo che ti dà il benvenuto su EMACS e ti offrirai varie opzioni, come il tutorial EMACS.

Tuttavia, questa pagina non sembra eccezionale. Lisp ti consente di cambiare il tema di Emacs e la pagina di avvio in base alle tue preferenze. Gli utenti possono caricare vari tipi di temi, cambiare le dimensioni dei caratteri e persino aggiungere proiettili di linea.

Ad esempio, supponiamo di voler sostituire la pagina di avvio al buffer graffio, caricare il tema del materiale e aggiungere proiettili di linea. Questo può essere fatto aggiungendo le seguenti righe al file init:

(setq inibit-startup-message t)
(Materiale di carico "T)
(Global-Linum-Mode T)

Come definito sopra, la sintassi SETQ rende vero il metallo inibito, che rimuove la pagina iniziale iniziale. Il tema carico carica il tema del materiale. La sintassi in modalità globale-linum è semplicemente una funzione impostata per essere vera ed eseguita per produrre numeri di linea. Questo è l'aspetto di Emacs dopo aver inserito i comandi sopra:

3) Legare le scorciatoie ai legami chiave

LISP può anche essere usato per legare comandi o scorciatoie per le chiavi. Ciò consente agli utenti di personalizzare gli EMAC in base alle loro preferenze, nonché eseguire funzioni personalizzate realizzate dall'utente con un solo clic.

Supponiamo di aver definito una funzione che produce semplicemente un carattere di backslash e vuoi assegnarlo alle chiavi Ctrl + X seguito da Ctrl + O. Questo può essere fatto aggiungendo le seguenti righe al file di inizializzazione:

(defun insert_backslash ()
(interattivo)
(inserire "\"))
(Global-Set-Key (KBD ""C-X C-O"")
'Insert_backslash)

Qui, la funzione insert_backslash è definita, resa interattiva (ciò consente di chiamare la funzione in modo interattivo con il legame della chiave) e l'output è un retroscena. Quindi, è possibile associare la funzione con i tasti sopra indicati usando la parola chiave a chiave globale.

Perché usare Lisp?

Lisp è parte integrante di EMACS, in quanto consente a EMAC di avere più potenza e funzionalità. Lisp offre agli utenti l'opportunità di personalizzare EMAC e trasformarlo in qualcosa che corrisponda ai loro interessi e alle loro esigenze. Lisp è ciò che rende Emacs davvero potenti e unici rispetto ad altri redattori di testo.

"