Tutorial GNU Emacs: Cum să editați un fișier (cheat Sheet inclusă)

Publicat: 2016-01-26

tutorial emac Biți scurti: doriți să aflați elementele de bază ale editorului de text Emacs? Ei bine, iată un tutorial de bază pentru a începe. Pentru cei care nu știu, GNU Emacs este un editor de text foarte popular, care vine cu o gamă largă de funcționalități.

Am început recent să învăț Emacs și, în această postare, voi descrie cum să editați un fișier text în Emacs și câteva comenzi rapide utilizate cel mai mult. Această postare este destinată celor care fie nu au folosit niciodată Emacs, fie au fost suficient de leneși să citească chiar și tutorialul introductiv - la fel ca mine.

Deci, ce este Emacs?

GNU Emacs, sau în general doar Emacs, este un editor de afișare în timp real extensibil, personalizabil și auto-documentat, conform paginii sale de manual. Este mai mult decât un simplu editor de text. Poate fi folosit pentru vizualizarea e-mailurilor, navigarea pe web, compilarea și rularea programelor, testarea software-ului (folosind gdb) și gestionarea fișierelor. De dragul acestei postări, o vom folosi ca editor de text.

Editarea este atât de dificilă în Emacs?

Nu deloc. Puteți edita fișierele folosind doar mouse-ul și tastatura, fără comenzi rapide. La fel ca Notepad. Aparent, nu este foarte eficient. Aveți nevoie de comenzi rapide pentru unele sarcini frecvente, iar Emacs are milioane de ele.

Hai să facem câteva editări...

Deschideți un fișier în Emacs

Bine. Apăsați Ctrl-x Ctrl-f . Apoi tastați numele fișierului. Puteți vedea numele fișierului pe măsură ce introduceți în linia de jos a ecranului (cunoscut sub numele de minibuffer). Completarea Tab funcționează și acolo.

Alternativ, se poate deschide și un fișier utilizând un meniu derulant de fișiere sau deschideți pictograma fișierului (colțul din stânga sus al cadrului Emacs) sau pur și simplu făcând dublu clic pe fișier.

Mișcarea de bază a cursorului

Emacs acceptă mișcarea cursorului prin tastele săgeți, dar este întotdeauna mai bine să ai degetele pe poziția standard a tastaturii. Iată o listă de legături de taste pentru mișcarea de bază în jurul textului.

Ctrl-p: Treceți la linia anterioară

Ctrl-n: Treceți la linia următoare

Ctrl-f: Deplasați înainte cu un caracter

Ctrl-b: Deplasați înapoi cu un caracter

Ctrl-e: Mutați la sfârșitul liniei

Ctrl-a: Mutați la începutul liniei

Există Meta veri ai majorității acestor comenzi rapide. Așa cum Ctrl-f mută cursorul înainte cu un caracter, Meta-f mută cursorul înainte cu un cuvânt. Meta este afișat ca Alt pe majoritatea tastaturilor.

Câteva terminologii înainte de secțiunea următoare

În Emacs, noțiunea de buffer -uri este foarte comună. În general, odată ce ați deschis un fișier, se spune că acesta se află într-un buffer. Orice modificări pe care le faci în acel fișier există în buffer. Dacă nu ați salvat acele modificări, ele nu apar pe disc. Emacs acceptă editarea mai multor buffer simultan. Adică, puteți încărca mai multe fișiere în bufferele Emacs și puteți comuta între ele fără a pierde modificările pe care le-ați făcut.

Noțiunea de ferestre este diferită în Emacs față de alte software utilizate în mod obișnuit. În Emacs, se poate împărți ecranul în mai multe ferestre, fiecare având propriul buffer. Rețineți că, ambele ferestre au același ecran, aceleași meniuri de fișiere și aceleași butoane de închidere și de minimizare. În sens general, ambele există pe aceeași fereastră.

Ceea ce alt software se referă ca fereastră, Emacs se referă la ele ca cadre. Adică, fiecare cadru are meniuri diferite de fișiere și butoane de închidere.

Editarea mai multor ferestre în Emacs

Editarea în mai multe ferestre este una dintre caracteristicile care îmi plac cel mai mult în Emacs. Există mai multe comenzi rapide de editare în mai multe ferestre în Emacs. Voi încerca să reduc asta la minimum. Doar editarea a două fișiere simultan.

Mai întâi, deschideți un fișier folosind Ctrl-x Ctrl-f, apoi numele fișierului. Apoi apăsați Ctrl-x 2 . Acest lucru ar împărți fereastra în două, una sub alta. Inițial, ambele ferestre afișează același buffer. Pentru a comuta între ferestre, apăsați Ctrl-x o . Deschideți un alt fișier în a doua fereastră și editați-le pe ambele simultan. Alternativ, Emacs poate afișa mai multe ferestre în paralel. Pentru a face acest lucru, apăsați Ctrl-x 3.

Pentru a ucide a doua fereastră, adică pentru a afișa o singură fereastră pe cadru, apăsați Ctrl-X 1. Când ucideți o fereastră, tamponul asociat cu aceasta nu este distrus. Cu alte cuvinte, orice modificări pe care le-ați făcut în a doua fereastră nu se pierde. Acel tampon este doar ascuns. Pentru a comuta între buffere, citiți secțiunea următoare.

Comutarea între buffere

Un începător s-ar putea să nu găsească ideea de buffer-uri multiple destul de intuitivă. Ei bine, nu am făcut-o. Obișnuiam să deschid un fișier, să-l modific, să-l salvez, să îl închidem, să deschid altul. Chiar și pentru referință, trebuie să salvați și să închideți mai întâi sau să deschideți o altă fereastră de editor de text (adică un cadru în contextul Emacs), pentru a vizualiza un alt fișier. Crede-mă, mai multe buffere pot face sarcinile mult mai ușoare și eficiente.

Comutarea între bufferele deschise este destul de simplă în Emacs. Apăsați Ctrl-x b, apoi introduceți numele tamponului. Se poate folosi completarea tab pentru astfel de sarcini. Alternativ, apăsați Ctrl-x Ctrl-b. Aceasta ar deschide o altă fereastră care afișează lista de buffere. Pentru a închide această fereastră, știi ce să faci. Este posibil să vedeți câteva buffer-uri existente anterior, cum ar fi TUTORIAL, *Messages*, etc. Utilizarea lor va fi evidentă când le deschideți.

Salvarea fișierului în Emacs

Aceasta este poate cea mai importantă sarcină. Emacs este suficient de inteligent pentru a nu pierde modificările atunci când închideți fără salvare sau după o pană de curent. Când nu ați salvat modificările și Emacs este închis, din orice motiv, un fișier nou numit #filename.txt# este creat în mod implicit. Acest fișier conține toate modificările dvs. nesalvate. Cu toate acestea, este mai bine să evitați să vă asumați riscuri atunci când nu este necesar și să salvați fișierele înainte de a renunța.

Pentru a salva modificările făcute în buffer, apăsați Ctrl-x Ctrl-s. Alternativ, apăsați Ctrl-x Ctrl-w, pentru a salva fișierul cu alt nume.

Diverse:

Mai multe comenzi rapide și funcții Emacs pe care le puteți găsi utile.

Anularea unei comenzi

Dacă ați rămas blocat în zona minibuffer, din cauza unei comenzi introduse parțial sau din orice alt motiv, apăsați Ctrl-g pentru a ieși din acea operație. Alternativ, apăsarea tastei Esc de trei ori ( Esc Esc Esc) are ca rezultat anularea unei operații parțiale.

In cautarea

Pentru a căuta un cuvânt cheie sau o expresie, apăsați Ctrl-s și introduceți cuvântul cheie. Cuvântul cheie pe măsură ce introduceți va fi afișat în minibuffer (linia cea mai de jos). Emacs face o căutare incrementală pentru cuvântul cheie, adică începe căutarea imediat ce introduceți primul caracter. Pentru a găsi următoarea apariție a cuvântului cheie, apăsați din nou Ctrl-s .

Renunțând imediat

Se poate părăsi Emacs apăsând butonul de închidere (X) afișat în partea de sus (oriunde afișează DE-ul dvs.). Deoarece vorbim doar de linia de comandă în această postare, apăsarea Ctrl-x Ctrl-c face același lucru. Deși afișează un avertisment în minibuffer dacă ai buffer-uri nesalvate. Apăsând y sau n acolo ar fi suficient.

Defilare

Defilarea în linie este descrisă mai sus, adică apăsând Ctrl-n sau Ctrl-p. Pentru derularea paginii, apăsați Ctrl-v sau Meta-v .

Notă de încheiere

Am încercat să descriu câteva comenzi rapide utilizate cel mai frecvent și editarea de bază a fișierelor în Emacs. Ceea ce am descris este doar o fracțiune din ceea ce puteți face cu Emacs. Totuși, acest lucru ar fi suficient pentru a începe cu Emacs. Voi posta mai multe despre Emacs pe măsură ce voi afla mai departe și voi găsi caracteristici care merită postate.

Dacă ați început să învățați Emacs și ați găsit un plac, vă recomand să citiți tutorialul introductiv livrat cu Emacs.

Emacs Cheat Sheet

Scoateți o imprimare din această foaie de cheat (Emacs Cheat Sheet) și încercați să efectuați operațiuni folosind doar combinații de taste. Evitați să folosiți mouse-ul cât mai mult posibil și veți vedea cât de eficientă devine editarea textului.

Ți s-a părut util acest tutorial de bază Emacs? Spune-ne părerile tale în comentariile de mai jos.