Emacs

Usare Lisp in Emacs

Usare Lisp in Emacs
La rapida progressione della tecnologia ha permesso a vari strumenti di programmazione di diventare prominenti e di venire sotto i riflettori. Gli editor di testo sono inclusi in tali strumenti a causa del massiccio sviluppo in corso nel settore tecnologico. La loro natura leggera, insieme alla loro flessibilità per modificare e creare file e forti prestazioni pronte all'uso, ha reso gli editor di testo abbastanza apprezzati dalla comunità. I vantaggi forniti dagli editor di testo spesso portano gli sviluppatori a preferire questi strumenti rispetto ad altri strumenti simili, come IDE. Gli editor di testo sono in prima linea nel lavoro svolto dagli sviluppatori, quindi è importante utilizzare un editor che fornisca una varietà di funzionalità in base alle proprie esigenze.

Emacs è uno di questi esempi di editor di testo che, grazie alla sua versatilità e natura personalizzabile, si è guadagnato un nome nella comunità degli sviluppatori. Essendo uno dei più vecchi editor di testo in circolazione, Emacs è noto per la sua stabilità e coerenza.

Ciò che rende Emacs speciale è che non è solo un editor di testo, ma piuttosto una macchina a tutti gli effetti. Emacs può essere configurato come shell, client di posta elettronica, organizzatore e molto altro ancora so. La complessità di Emacs deriva dall'interprete Lisp al suo interno, che a sua volta consente agli utenti di personalizzarlo con ancora più funzionalità utilizzando il linguaggio Lisp.

Questo articolo spiega come usare Lisp attraverso vari metodi per configurare e personalizzare Emacs.

Nozioni di base di Lisp

Prima di vedere come è possibile utilizzare Lisp per configurare Emacs, è importante esaminare alcune delle basi del linguaggio Lisp per comprendere meglio questa funzionalità.

In Lisp, i programmi sono costituiti da espressioni simboliche, abbreviate in s-exps. Queste espressioni possono consistere solo di variabili o includere anche altre funzioni.

Una funzione viene annotata avvolgendo il testo tra parentesi. Ad esempio, per chiamare la funzione di addizione, viene utilizzata la seguente sintassi:

(+ 2 2)

L'affermazione di cui sopra dice "aggiungi 2 a 2." Le s-exp nidificate avranno un aspetto simile a questo:

(+ 2 (+ 1 1))

Puoi anche memorizzare valori all'interno di una variabile usando il comando setq:

(setq il mio nome "John")

Le funzioni possono essere definite utilizzando il defunto parola chiave. Ad esempio, una funzione che calcola il quadrato di un numero si scrive come segue:

(defun quadrato (x)
(* x x))
(quadrato 2)

Puoi valutare le funzioni definite usando i tasti 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: devi valutare sia il segmento defun che il segmento quadrato.

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

File di inizializzazione

All'avvio di Emacs, il primo file elaborato è il file di inizializzazione, o 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 entra ~/.emacs. All'interno di questa espressione, puoi inserire codice aggiuntivo per personalizzare Emacs.

1) Aggiunta del supporto per i pacchetti

Lisp può essere usato 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, aggiungi le seguenti righe al file init:

(richiede 'pacchetto)
(aggiungi alla lista 'pacchetti-archivi'
'("melpa" . "http://melpa.org/pacchetti/") t)
(inizializzazione del pacchetto)
(pacchetto-aggiorna-contenuto)

Questo codice aggiunge l'archivio Melpa all'elenco dei repository di pacchetti, dà il permesso a Emacs di usare questi pacchetti, inizializza questi pacchetti e aggiorna il contenuto affinché le modifiche abbiano luogo. Se apri l'elenco dei pacchetti premendo Alt + x ed entra elenco-pacchetti-pacchetti, puoi vedere i pacchetti installati nell'archivio Melpa.


-

2) Cambiare il tema di Emacs

Inizialmente, quando carichi Emacs, vedrai una schermata che ti dà il benvenuto in Emacs e ti dà varie opzioni, come il Tutorial Emacs.

Tuttavia, questa pagina non ha un bell'aspetto. Lisp ti permette di cambiare il tema di Emacs e la pagina di avvio secondo le tue preferenze. Gli utenti possono caricare vari tipi di temi, modificare le dimensioni dei caratteri e persino aggiungere punti elenco line.

Ad esempio, supponiamo che tu voglia sostituire la pagina iniziale nel buffer di lavoro, caricare il tema Materiale e aggiungere punti elenco. Questo può essere fatto aggiungendo le seguenti righe al file init:

(setq inhibit-startup-message t)
(carica-tema 'materiale t)
(modalità globale-linum t)

Come definito sopra, la sintassi setq rende true il messaggio inhibit-startup, che rimuove la pagina iniziale iniziale. Il tema di caricamento carica il tema del materiale. La sintassi global-linum-mode è semplicemente una funzione che è impostata su true e viene eseguita per produrre numeri di riga. Ecco come dovrebbe apparire Emacs dopo aver inserito i comandi sopra:

3) Associa scorciatoie a combinazioni di tasti

Lisp può essere utilizzato anche per associare comandi o scorciatoie ai tasti. Ciò consente agli utenti di personalizzare Emacs in base alle proprie preferenze, nonché di eseguire funzioni personalizzate create dall'utente con un semplice clic.

Supponiamo di aver definito una funzione che produce semplicemente un carattere di barra rovesciata e di volerlo assegnare ai tasti Ctrl + x seguito da Ctrl + o. Questo può essere fatto aggiungendo le seguenti righe al file di inizializzazione:

(defun insert_backslash ()
(interattivo)
(inserire "\"))
(chiave-set-globale (kbd ""C-x C-o"")
'inserisci_barra rovesciata)

Qui, la funzione insert_backslash è definita, resa interattiva (questo consente di chiamare la funzione in modo interattivo, ovvero con l'associazione dei tasti), e l'output è una barra rovesciata. Quindi, puoi associare la funzione con i tasti sopra indicati usando la parola chiave global-set-key.

Perché usare Lisp??

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

"
Come utilizzare Xdotool per stimolare i clic del mouse e le sequenze di tasti in Linux
Xdotool è uno strumento da riga di comando gratuito e open source per simulare i clic del mouse e le sequenze di tasti. Questo articolo tratterà una b...
I 5 migliori mouse per computer ergonomici per Linux
L'uso prolungato del computer provoca dolore al polso o alle dita?? Soffri di rigidità articolare e devi continuamente stringerti la mano? Senti un do...
Come modificare le impostazioni del mouse e del touchpad utilizzando Xinput in Linux
La maggior parte delle distribuzioni Linux viene fornita con la libreria "libinput" per impostazione predefinita per gestire gli eventi di input su un...