Emacs

Lispi kasutamine Emacsis

Lispi kasutamine Emacsis
Tehnoloogia kiire areng on võimaldanud erinevatel programmeerimisvahenditel esile tulla ja tähelepanu keskpunkti tõusta. Teksti redaktorid on sellistes tööriistades kaasatud tehnoloogiaäris toimuva tohutu arengu tõttu. Nende kerge olemus koos paindlikkusega failide redigeerimisel ja koostamisel ning tugeva pakendivälise jõudlusega on muutnud tekstiredaktorid kogukonna seas üsna populaarseks. Tekstiredaktorite pakutavad eelised viivad arendajad sageli neid tööriistu eelistama teiste sarnaste tööriistade, näiteks IDE-ga. Tekstiredaktorid on arendajate tehtud töö esirinnas, seega on oluline kasutada redaktorit, mis pakub teie vajadustele vastavalt erinevaid funktsioone.

Emacs on üks sellistest tekstiredaktori näidetest, mis tänu oma mitmekülgsusele ja kohandatavusele on arendajaskonna seas endale üsna suure nime pälvinud. Emacs on seal ühe vanima tekstiredaktorina tuntud oma stabiilsuse ja järjepidevuse poolest.

Emacsi teeb eriliseks see, et see pole lihtsalt tekstiredaktor, vaid pigem täieõiguslik masin. Emacsi saab seadistada shellina, e-posti kliendina, korraldajana ja palju muuna. Emacsi keerukus tuleneb selle keskmes olevast Lispi tõlkist, mis omakorda võimaldab kasutajatel seda Lispi keelt kasutades veelgi rohkem funktsionaalsustega kohandada.

Selles artiklis käsitletakse, kuidas kasutada Lispi Emacsi seadistamiseks ja kohandamiseks mitmesuguste meetodite abil.

Lispi põhitõed

Enne kui näete, kuidas Lispi saab Emacsi seadistamiseks kasutada, on kõigepealt oluline uurida Lispi keele mõningaid põhitõdesid, et sellest funktsioonist paremini aru saada.

Lispis koosnevad programmid sümboolsetest väljenditest, mis on lühendatud s-exp-ideks. Need väljendid võivad koosneda ainult muutujatest või hõlmata ka muid funktsioone.

Funktsiooni tähistatakse, pakkides teksti sulgudesse. Näiteks liitmisfunktsiooni kutsumiseks kasutatakse järgmist süntaksit:

(+ 2 2)

Ülaltoodud väites öeldakse „lisage 2 kuni 2.”Pesastatud s-expid näevad välja umbes sellised:

(+ 2 (+ 1 1))

Väärtusi saab muutuja sisse salvestada ka käsuga setq:

(setq minu nimi "John")

Funktsioonid saab määratleda lüüa märksõna. Näiteks funktsioon, mis arvutab arvu ruudu, kirjutatakse järgmiselt:

(määrake ruut (x)
(* x x))
(ruut 2)

Klahvide abil määratletud funktsioone saate hinnata Ctrl + x järgneb Ctrl + e. See annab väljundi mini-puhvris. Näiteks on ruutfunktsioonil järgmine väljund:

Märkus: peate hindama nii lõpetatud kui ka ruudukujulist segmenti.

See hõlmab põhitõdesid. Järgmistes jaotistes kuvatakse, kuidas seadistada Emacsi Lispi abil.

Initsialiseerimisfail

Emacsi käivitamisel on esimene töödeldud fail initsialiseerimisfail ehk init-fail, mis sisaldab Lisp-s kirjutatud käske, mis võimaldavad kasutajatel Emacsi seadistada. Initsialiseerimisfaili avamiseks vajutage Ctrl + x, järgneb Ctrl + f, ja seejärel sisestage ~ /.emacs. Selle avaldise sisse saate Emacsi kohandamiseks sisestada täiendava koodi.

1) Pakettide toe lisamine

Lispi abil saab Emacsi tuge lisada erinevatest allikatest koosnevatele pakettidele. Melpa on üks allikatest, kust kasutajad saavad neid laiendusi installida. Melpa lisamiseks Emacsile lisage init-faili järgmised read:

(nõuda paketti)
(lisa-loendisse 'pakett-arhiivid
'("melpa" . "http: // melpa.org / paketid / ") t)
(paketi lähtestamine)
(pakett-värskenda-sisu)

See kood lisab Melpa arhiivi paketihoidlate loendisse, annab Emacsile loa neid pakette kasutada, lähtestab need paketid ja värskendab sisu muudatuste toimumiseks. Kui avate oma pakettide loendi löömisega Alt + x ja sisestage pakett-nimekiri-paketid, installitud pakette näete Melpa arhiivis.


-

2) Emacsi muutuv teema

Esialgu saate Emacsi laadimisel ekraani, mis tervitab teid Emacsis ja pakub erinevaid võimalusi, näiteks Emacsi õpetus.

See leht ei tundu siiski nii tore. Lisp võimaldab teil muuta Emacsi teemat ja käivitamislehte vastavalt oma eelistustele. Kasutajad saavad laadida erinevat tüüpi teemasid, muuta fondi suurust ja isegi lisada rea ​​täppe.

Oletame näiteks, et soovite käivitamislehe asendada kraapimispuhvriga, laadige teema Materjal ja lisage rea täppe. Seda saab teha, lisades init-faili järgmised read:

(setq pärsib-käivitamise teadet t)
(laadimisteema materjal t)
(globaalne-linum-režiim t)

Nagu ülalpool määratletud, muudab setqi süntaks tõestuseks inhibit-startup-teate, mis eemaldab esialgse avalehe. Load-theme laadib materjali teema. Globaalse linum-režiimi süntaks on lihtsalt funktsioon, mis on seatud tõeks ja täidetakse rea numbrite tootmiseks. Selline peaks Emacs välja nägema pärast ülaltoodud käskude sisestamist:

3) Kiirklahvide sidumine

Lispi saab kasutada ka käskude või otseteede sidumiseks võtmetega. See võimaldab kasutajatel kohandada Emacsi vastavalt nende eelistustele, samuti käivitada kasutaja tehtud kohandatud funktsioonid vaid ühe klõpsuga.

Oletame, et olete määranud funktsiooni, mis lihtsalt loob tagasilöögi ja soovite selle klahvidele omistada Ctrl + x järgneb Ctrl + o. Seda saab teha, lisades lähtestusfaili järgmised read:

(Defineerige insert_backslash ()
(interaktiivne)
(sisestage "\"))
(globaalne seadeklahv (kbd ""C-x C-o"")
'insert_backslash)

Siin määratletakse funktsioon insert_backslash, muudetakse interaktiivseks (see võimaldab funktsiooni nimetada interaktiivselt tähenduseks koos klahvide sidumisega) ja väljundiks on tagaselg. Seejärel saate funktsiooni siduda ülaltoodud võtmetega, kasutades globaalset võtit märksõna.

Miks kasutada Lispi?

Lisp on Emacsi lahutamatu osa, kuna see võimaldab Emacsil rohkem võimsust ja funktsionaalsust. Lisp annab kasutajatele võimaluse kohandada Emacsi ja muuta see millekski, mis vastab nende huvidele ja vajadustele. Lisp muudab Emacsi teiste tekstiredaktoritega võrreldes tõeliselt võimsaks ja ainulaadseks.

"
Parimad Linuxi mängupuldi kaardistamise rakendused
Kui teile meeldib mängida Linuxis mänge tavalise klaviatuuri ja hiire sisestussüsteemi asemel mängupuldiga, on teie jaoks mõned kasulikud rakendused. ...
Kasulikud tööriistad Linuxi mängijatele
Kui teile meeldib Linuxis mänge mängida, on tõenäoline, et olete mängukogemuse parandamiseks kasutanud selliseid rakendusi ja utiliite nagu Wine, Lutr...
HD Remastered Games Linuxile, millel pole kunagi varem Linuxi väljalaset olnud
Paljud mängude arendajad ja kirjastajad pakuvad frantsiisi eluea pikendamiseks välja vanade mängude HD-remasteri. Palun fännid, kes soovivad ühilduvus...