Emacsas

„Lisp“ naudojimas „Emacs“

„Lisp“ naudojimas „Emacs“
Spartus technologijų progresas leido įvairiems programavimo įrankiams tapti žinomiems ir atsidurti dėmesio centre. Į tokius įrankius įtraukiami teksto redaktoriai, nes technologijų versle vyksta didžiuliai pokyčiai. Jų lengvas pobūdis, lankstumas redaguoti ir kurti failus bei didelis „of-the-box“ našumas leido teksto redaktoriams būti labai populiariems bendruomenėje. Teksto redaktorių teikiami pranašumai dažnai skatina kūrėjus pirmenybę šiems įrankiams, palyginti su kitais panašiais įrankiais, tokiais kaip IDE. Teksto redaktoriai yra kūrėjų atlikto darbo priešakyje, todėl svarbu naudoti redaktorių, teikiantį įvairias funkcijas pagal jūsų poreikius.

„Emacs“ yra vienas iš tokių teksto rengyklių pavyzdžių, kurie dėl savo universalumo ir pritaikomo pobūdžio įgijo gana gerą vardą tarp kūrėjų bendruomenės. „Emacs“ yra vienas iš seniausių teksto redaktorių, pasižymintis stabilumu ir nuoseklumu.

„Emacs“ ypatingas tuo, kad tai ne tik teksto redaktorius, bet ir visavertė mašina. „Emacs“ galima nustatyti kaip apvalkalą, el. Pašto klientą, organizatorių ir dar daugiau. „Emacs“ sudėtingumas kyla dėl „Lisp“ vertėjo žodžio, kuris savo ruožtu leidžia vartotojams pritaikyti jį dar daugiau funkcijų naudojant „Lisp“ kalbą.

Šiame straipsnyje aprašoma, kaip naudoti „Lisp“ įvairiais metodais konfigūruojant ir pritaikant „Emacs“.

Lisp pagrindai

Prieš sužinodami, kaip „Lisp“ galima naudoti „Emacs“ konfigūravimui, pirmiausia reikia atkreipti dėmesį į kai kuriuos „Lisp“ kalbos pagrindus, kad geriau suprastumėte šią funkciją.

„Lisp“ programos yra sudarytos iš simbolinių posakių, sutrumpintų iki s-exp. Šios išraiškos gali būti sudarytos tik iš kintamųjų arba gali apimti ir kitas funkcijas.

Funkcija žymima įvyniojant tekstą į skliaustą. Pvz., Norint iškviesti papildymo funkciją, naudojama ši sintaksė:

(+ 2 2)

Minėtame teiginyje sakoma „pridėti 2 prie 2.„Lizdiniai„ s-exp “atrodys maždaug taip:

(+ 2 (+ 1 1))

Taip pat galite išsaugoti reikšmes kintamajame naudodami komandą setq:

(setq mano vardas "Jonas")

Funkcijas galima apibrėžti naudojant nugalėti raktinis žodis. Pavyzdžiui, funkcija, apskaičiuojanti skaičiaus kvadratą, rašoma taip:

(išvalyti kvadratą (x)
(* x x))
(2 kvadratas)

Galite įvertinti funkcijas, apibrėžtas naudojant klavišus „Ctrl“ + x paskui „Ctrl“ + e. Tai sukurs išvestį mini buferio viduje. Pvz., Kvadrato funkcija turės tokį išvestį:

Pastaba: turite įvertinti ir nustatytą, ir kvadratinį segmentą.

Tai apima pagrindus. Tolesniuose skyriuose bus parodyta, kaip sukonfigūruoti „Emacs“ naudojant „Lisp“.

Inicijavimo byla

Paleidus „Emacs“, pirmasis apdorotas failas yra inicializavimo failas arba init failas, kuriame yra „Lisp“ parašytos komandos, leidžiančios vartotojams konfigūruoti „Emacs“. Norėdami atidaryti inicializavimo failą, paspauskite „Ctrl“ + x, paskui „Ctrl“ + f, ir tada įeik ~ /.emacs. Šios išraiškos viduje galite įterpti papildomą kodą, kad pritaikytumėte „Emacs“.

1) Paketų palaikymo pridėjimas

„Lisp“ galima naudoti palaikant „Emacs“ skirtingų šaltinių paketus. „Melpa“ yra vienas iš šaltinių, iš kurio vartotojai gali įdiegti šiuos plėtinius. Norėdami pridėti „Melpa“ prie „Emacs“, pridėkite šias eilutes prie init failo:

(reikalauti „paketo“)
(pridėti prie sąrašo 'paketai-archyvai
'(„melpa“ . "http: // melpa.org / paketai / ") t)
(inicializuoti paketą)
(paketo atnaujinimo turinys)

Šis kodas įtraukia „Melpa“ archyvą į paketų saugyklų sąrašą, suteikia „Emacs“ leidimą naudoti šiuos paketus, inicializuoja šiuos paketus ir atnaujina turinį, kad įvyktų pakeitimai. Jei atidarote savo paketų sąrašą spustelėdami Alt + x ir įeik paketų sąrašas-paketai, įdiegtus paketus galite pamatyti „Melpa“ archyve.


-

2) „Emacs“ temos keitimas

Iš pradžių, kai įkelsite „Emacs“, gausite ekraną, kuriame bus laukiama „Emacs“ ir bus pateikiamos įvairios parinktys, pvz., „Emacs“ pamoka.

Tačiau šis puslapis neatrodo toks puikus. „Lisp“ leidžia pakeisti „Emacs“ temą ir paleidimo puslapį pagal savo pageidavimus. Vartotojai gali įkelti įvairių tipų temas, keisti šriftų dydžius ir netgi pridėti eilučių ženklelius.

Pvz., Tarkime, kad norite pakeisti paleidimo puslapį į įbrėžimų buferį, įkelti „Material“ temą ir pridėti eilučių ženklelių. Tai galima padaryti pridėjus šias eilutes prie init failo:

(„setq inhibit-startup-message“ t)
(„load-theme“ medžiaga t)
(globalus-lininis režimas t)

Kaip apibrėžta aukščiau, „setq“ sintaksė daro „inhibit-startup“ pranešimą teisingą, kuris pašalina pradinį pradinį puslapį. „Load-theme“ įkelia medžiagos temą. „Global-linum“ režimo sintaksė yra tiesiog funkcija, kuri nustatyta kaip teisinga ir vykdoma linijų skaičiams gaminti. Štai kaip „Emacs“ turėtų atrodyti įvedus pirmiau nurodytas komandas:

3) Susieti klavišus su pagrindiniais įrišimais

„Lisp“ taip pat gali būti naudojamas komandoms ar nuorodoms susieti su klavišais. Tai leidžia vartotojams pritaikyti „Emacs“ pagal savo pageidavimus, taip pat paleisti vartotojo sukurtas pasirinktines funkcijas vos vienu paspaudimu.

Tarkime, kad jūs apibrėžėte funkciją, kuri tiesiog sukuria atgalinį brūkšnį, ir norite tai priskirti klavišams „Ctrl“ + x paskui „Ctrl“ + o. Tai galima padaryti prie inicializavimo failo pridėjus šias eilutes:

(panaikinti insert_backslash ()
(interaktyvus)
(Įdėti "\"))
(globalus rinkinys-raktas (kbd ""C-x C-o"")
'insert_backslash)

Čia apibrėžta funkcija „atgalinis pasvirasis brūkšnys“, padaryta interaktyvia (tai leidžia funkciją vadinti interaktyviai, reiškiančia raktą įrišant), o išvestis yra atbulinis brūkšnys. Tada galite susieti funkciją aukščiau nurodytais klavišais, naudodami raktinį žodį „global set-key“.

Kodėl verta naudoti Lisp?

„Lisp“ yra neatsiejama „Emacs“ dalis, nes ji leidžia „Emacs“ turėti daugiau galios ir funkcionalumo. „Lisp“ suteikia galimybę vartotojams pritaikyti „Emacs“ ir paversti jį kažkuo, kas atitinka jų interesus ir poreikius. „Lisp“ yra tai, kas daro „Emacs“ tikrai galingą ir unikalų, palyginti su kitais teksto redaktoriais.

"
„HD Remastered“ žaidimai, skirti „Linux“, kurie niekada anksčiau nebuvo išleisti „Linux“
Daugelis žaidimų kūrėjų ir leidėjų siūlo senų žaidimų HD remasterį, kad prailgintų franšizės laiką. Prašome gerbėjų, prašančių suderinamumo su šiuolai...
Kaip naudoti „AutoKey“, norint automatizuoti „Linux“ žaidimus
„AutoKey“ yra darbalaukio automatizavimo įrankis, skirtas „Linux“ ir „X11“, užprogramuotas „Python 3“, „GTK“ ir „Qt“. Naudodami scenarijų ir „MACRO“ f...
Kaip parodyti FPS skaitiklį „Linux“ žaidimuose
„Linux“ žaidimai gavo didelį postūmį, kai „Valve“ paskelbė „Linux“ palaikymą „Steam“ klientui ir jų žaidimams 2012 m. Nuo tada daugelis AAA ir indie ž...