Emacs

Korištenje Lispa u Emacsu

Korištenje Lispa u Emacsu
Brzi napredak tehnologije omogućio je raznim programskim alatima da postanu istaknuti i dođu u središte pozornosti. Uređivači teksta uključeni su u takve alate zbog masovnog razvoja unutar tehnološkog posla. Njihova lagana priroda, zajedno s fleksibilnošću uređivanja i izrade datoteka i snažnim izvanrednim performansama, učinili su urednike teksta prilično omiljenim u zajednici. Prednosti koje pružaju uređivači teksta često navode programere da favoriziraju ove alate u odnosu na druge slične alate, poput IDE-a. Uređivači teksta prednjače u poslu koji rade programeri, pa je važno koristiti uređivač koji nudi razne značajke prema vašim potrebama.

Emacs je jedan takav primjer uređivača teksta koji je, zahvaljujući svojoj svestranosti i prilagodljivosti, stekao prilično ime za sebe među zajednicom programera. Kao jedan od najstarijih uređivača teksta vani, Emacs je poznat po svojoj stabilnosti i dosljednosti.

Ono što Emacs čini posebnim je to što nije samo uređivač teksta, već punopravni stroj. Emacs se može postaviti kao ljuska, klijent e-pošte, organizator i još mnogo toga. Složenost Emacsa proizlazi iz interpretatora Lisp u njegovoj osnovi, što zauzvrat omogućava korisnicima da ga prilagode s još više funkcionalnosti pomoću jezika Lisp.

Ovaj članak pokriva kako koristiti Lisp putem različitih metoda za konfiguriranje i prilagodbu Emacs-a.

Osnove Lispa

Prije nego što vidite kako se Lisp može koristiti za konfiguriranje Emacsa, prvo je važno pogledati neke od osnova jezika Lisp kako biste bolje razumjeli ovu značajku.

U Lispu se programi sastoje od simboličkih izraza, skraćenih na s-exps. Ti se izrazi mogu sastojati samo od varijabli ili mogu sadržavati i druge funkcije.

Funkcija se bilježi umotavanjem teksta u zagradu. Na primjer, za pozivanje funkcije zbrajanja koristi se sljedeća sintaksa:

(+ 2 2)

Gornja izjava kaže „dodajte 2 na 2.”Ugnježđeni s-exps izgledat će otprilike ovako:

(+ 2 (+ 1 1))

Također možete pohraniti vrijednosti unutar varijable pomoću naredbe setq:

(postavi moje ime "Ivan")

Funkcije se mogu definirati pomoću defun ključna riječ. Na primjer, funkcija koja izračunava kvadrat broja zapisuje se na sljedeći način:

(defun kvadrat (x)
(* x x))
(kvadrat 2)

Funkcije definirane pomoću tipki možete procijeniti Ctrl + x nakon čega slijedi Ctrl + e. To će proizvesti izlaz unutar mini-međuspremnika. Na primjer, kvadratna funkcija imat će sljedeći izlaz:

Napomena: morate procijeniti i defun segment i kvadratni segment.

To pokriva osnove. Sljedeći odjeljci pokazat će kako konfigurirati Emacs pomoću Lispa.

Datoteka za inicijalizaciju

Kada se Emacs pokrene, prva obrađena datoteka je datoteka inicijalizacije ili init datoteka koja sadrži naredbe napisane na Lispu koje korisnicima omogućuju konfiguriranje Emacs-a. Da biste otvorili inicijalizacijsku datoteku, pritisnite Ctrl + x, nakon čega slijedi Ctrl + f, a zatim uđite ~ /.emacs. Unutar ovog izraza možete umetnuti dodatni kôd za prilagodbu Emacsa.

1) Dodavanje podrške za pakete

Lisp se može koristiti za dodavanje podrške u Emacs-u za pakete različitih izvora. Melpa je jedan od izvora iz kojeg korisnici mogu instalirati ova proširenja. Da biste Melpu dodali u Emacs, dodajte sljedeće retke u init datoteku:

(zahtijeva 'paket)
(dodavanje na popis 'arhiva paketa
'("melpa" . "http: // melpa.org / paketi / ") t)
(inicijalizacija paketa)
(paket-osvježi-sadržaj)

Ovaj kôd dodaje Melpa arhivu na popis spremišta paketa, daje dozvolu Emacs-u da koristi te pakete, inicijalizira te pakete i osvježava sadržaj radi promjena. Ako otvorite popis paketa pritiskom na Alt + x i uđite paket-popis-paketi, instalirane pakete možete vidjeti u arhivi Melpa.


-

2) Promjena teme Emacsa

U početku, kada učitate Emacs, dobit ćete zaslon koji vas pozdravlja u Emacs i pruža vam razne mogućnosti, poput Emacs vodiča.

Međutim, ova stranica ne izgleda tako sjajno. Lisp vam omogućuje promjenu teme Emacs-a i početne stranice prema vašim željama. Korisnici mogu učitati razne vrste tema, promijeniti veličinu fonta, pa čak i dodati oznake redaka.

Na primjer, recimo da želite zamijeniti početnu stranicu u međuspremnik ogrebotina, učitati temu Materijal i dodati linijske znakove. To se može učiniti dodavanjem sljedećih redaka u datoteku init:

(setq inhibit-startup-poruka t)
(load-theme 'materijal t)
(globalni-linum-način t)

Kao što je gore definirano, sintaksa setq čini poruku inhibit-startup istinitom, što uklanja početnu početnu stranicu. Tema učitavanja učitava temu materijala. Sintaksa modusa globalnog linum-a jednostavno je funkcija koja je postavljena na istinito i izvršava se za stvaranje brojeva redaka. Evo kako bi Emacs trebao izgledati nakon unosa gornjih naredbi:

3) Povežite prečace s ključnim vezima

Lisp se također može koristiti za povezivanje naredbi ili prečaca s tipkama. To omogućava korisnicima da prilagode Emacs prema svojim željama, kao i pokretanje prilagođenih funkcija koje je korisnik izradio samo jednim klikom.

Pretpostavimo da ste definirali funkciju koja jednostavno stvara znak obrnute kose crte i želite to dodijeliti tipkama Ctrl + x nakon čega slijedi Ctrl + o. To se može učiniti dodavanjem sljedećih redaka u datoteku za inicijalizaciju:

(defun insert_backslash ()
(interaktivno)
(umetnite "\"))
(global-set-key (kbd ""C-x C-o"")
'insert_backslash)

Ovdje je funkcija insert_backslash definirana, učinjena interaktivnom (to omogućuje funkciju da se interaktivno naziva u značenju s vezanjem ključa), a izlaz je kosa crta. Zatim funkciju možete povezati gore navedenim tipkama pomoću ključne riječi global-set-key.

Zašto koristiti Lisp?

Lisp je sastavni dio Emacsa, jer Emacu omogućuje veću snagu i funkcionalnost. Lisp pruža priliku korisnicima da prilagode Emacs i pretvore ga u nešto što odgovara njihovim interesima i potrebama. Lisp je ono što Emacs čini doista moćnim i jedinstvenim u usporedbi s drugim uređivačima teksta.

"
Kako razviti igru ​​na Linuxu
Prije deset godina malo je Linux korisnika predviđalo da će njihov omiljeni operativni sustav jednog dana biti popularna platforma za igranje komercij...
Luke komercijalnih igara s otvorenim kodom
Besplatne igre s otvorenim kodom i više platformi mogu se koristiti za igranje starih, kao i nekih prilično nedavnih naslova igara. U ovom će se člank...
Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...