Emacs

Configurarea Emacs pentru C ++

Configurarea Emacs pentru C ++
C ++ este un limbaj de programare cunoscut pentru performanțele sale imaculate și caracteristicile puternice care oferă utilizatorilor un control mai mare asupra hardware-ului real, fără a scădea la nivelul limbajului de asamblare. Având un imens ecosistem de biblioteci, cadre și instrumente, împreună cu o comunitate dezvoltată pe scară largă și un număr mare de tutoriale și ghiduri, alături de documentația excelentă pentru a-l susține, C ++ a devenit unul dintre cele mai populare limbaje de programare, fiind utilizat aproape peste tot.

Versatilitatea și compactitatea sa au dus la dezvoltarea unui nume imens în rândul dezvoltatorilor de jocuri și, prin urmare, este adesea folosit pentru a dezvolta jocuri, motoare de jocuri și aplicații desktop. Având un nucleu atât de puternic așezat în spatele său, este extrem de important să ai un editor care să ofere cele mai bune caracteristici și să faciliteze nevoile utilizatorilor săi.

Emacs este un astfel de editor la îndemână care, datorită naturii sale flexibile și adaptabile, a devenit rapid un instrument extrem de eficient și puternic de utilizat. Funcții precum integrarea git, mai multe moduri de editare și căutare și înlocuire regex arată prezența comandantă pe care o are printre setul larg de editori de text.

Fiind extrem de personalizabil, acesta poate fi astfel configurat cu ușurință pentru a fi utilizat ca IDE C ++. Prin urmare, astăzi, vom analiza modul în care se poate configura Emacs pentru dezvoltarea C ++ și transforma-l într-un ID C ++.

Integrarea C ++ cu Emacs

Pentru a integra C ++ cu Emacs, vom folosi mai multe pachete, cum ar fi completarea automată, flycheck, magit etc. Să trecem acum la proces.

1) Adăugarea comenzilor inițiale la fișierul de inițializare

La pornirea Emacs, primul lucru care este procesat este fișierul de inițializare (fișier init), care conține comenzi care permit utilizatorilor să personalizeze și să configureze Emacs în funcție de preferințele lor.

Deci, pentru a face ca Emacs să acționeze ca un IDE C ++, trebuie să adăugăm câteva comenzi la acest fișier.

Pentru aceasta, deschideți terminalul și introduceți următoarea comandă pentru a deschide fișierul de inițializare:

$ emacs ~ /.emacs

Acum trebuie să adăugăm următoarele linii de cod:

(solicitați pachet)
(add-to-list 'pachet-arhive
'("melpa" . „http: // melpa.org / pachete / ") t)
(pachet-inițializare)
(cu excepția cazului în care (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
(folosiți pachetul încercați: asigurați-vă că
(utilizați-pachetul care-cheie: asigurați-vă t: config (care-cheie-mod))

Codul dat mai sus adaugă practic arhiva Melpa la lista de depozite de pachete găsite în Emacs și îi permite să folosească aceste pachete.

În plus, instalează pachetul de utilizare, care poate fi folosit pentru a instala alte pachete, pentru a configura legăturile de taste și pentru a configura diferite moduri Emacs.

2) Adăugarea pachetului Yasnippet

Odată ce am terminat de configurat Emacs-ul nostru cu conținutul inițial, vom adăuga acum pachetul yasnippet, care este o extensie de fragment pentru Emacs și, prin urmare, oferă șabloane de funcții pentru mai multe limbi, inclusiv C++.

Pentru a adăuga acest lucru în fișierul nostru de inițializare, trebuie mai întâi să îl instalăm. Pentru a face acest lucru, deschideți Emacs și apăsați Alt + x si intra pachete-lista-pachete. Acum lovește Ctrl + s și căutați yasnippet. Continuați să faceți clic pe Ctrl + s până găsiți pachetul: yasnippet-snippets.

Puteți face clic pe el și selecta instalare sau apăsare eu urmată de X pentru a instala pachetul yasnippet.

După instalarea yasnippet, apăsați Ctrl + x, urmată de Ctrl + f, și deschideți ~ /.fișier emacs. În interiorul acestuia adăugați următoarele linii de cod:

(cere 'yasnippet)
(yas-global-mode 1)

Pur și simplu lovește Ctrl + X, urmată de Ctrl + S pentru a salva fișierul și a reporni Emacs. Acum deschideți câteva fișiere C ++ și puteți vedea opțiuni derulante ca acestea, care vă oferă un fragment când faceți clic.

Opțiuni drop-down:

Fragmentul este dat după ce faceți clic pe una dintre opțiuni:

3) Adăugarea unor pachete suplimentare

Acum vom adăuga câteva pachete suplimentare care ne-ar oferi mai multe funcționalități în Emacs pentru dezvoltarea C ++.

În primul rând, vom adăuga modul de completare automată, care, după cum sugerează și numele, este o extensie de completare automată. Adăugați următoarele linii de cod în fișierul de inițializare:

(utilizați pachetul de completare automată
: asigura t
: init
(progn
(ac-config-default)
(global-auto-complet-mod t)
)))

Apoi, vom adăuga un flycheck, care ajută la verificarea sintaxei raportând erori și avertismente. Pentru a face acest lucru, următoarele trebuie adăugate în fișierul nostru inițial:

(utilizați pachetul de completare automată
(folosește pachetul flycheck
: asigura t
: init
(global-flycheck-mode t))

În cele din urmă, vom adăuga font modern c ++ package, care oferă evidențierea sintaxei celui mai recent limbaj C ++.

(utilizați-pachetul modern-cpp-font-lock
: asigurați-vă t)

4) Integrarea Git folosind Magit

Emacs permite, de asemenea, integrarea cu Git folosind Magit, un instrument git care acționează ca o interfață pentru Git. Putem include acest lucru în Emacs adăugând următoarele linii de cod în fișierul nostru de inițializare:

(utilizați pachetul magit
: asigura t
: init
(progn
(tasta de legare „C-x g” 'starea magit)))

Aici, configurăm o legare a tastelor folosind tastele Ctrl + x urmată de g, care ne permite să vedem starea fișierelor noastre (nedetectate, organizate, confirmări).

Pentru a vedea comenzile lui Magit, apăsați semnul întrebării (?) tasta. Unele comenzi care vor fi afișate sunt:

Folosind acestea, ne putem integra fișierele cu controlul versiunii Git.

5) Compilarea și rularea codului C ++

Pentru compilarea și rularea codului C ++ pe Emacs, vom folosi o funcție personalizată și debuggerul GDB. Acest lucru face procesul mult mai ușor în comparație cu realizarea de fișiere make și apoi compilarea și construirea acestora.  Pentru a face acest lucru, mai întâi de toate, adăugați următorul cod în fișierul de inițializare:

(defun code-compile ()
(interactiv)
(cu excepția cazului în care (fișierul există-p "Makefile")
(set (make-local-variable 'compile-command)
(let ((file (file-name-nondirectory buffer-file-name)))
(formatul "% s -o% s% s"
(dacă (egal (fișier nume-fișier-extensie) "cpp") "g ++" "gcc")
(fișier nume-fișier-sans-extensie)
fişier)))
(compile compile-command)))
(global-set-key [f9] 'cod-compile)

Codul de mai sus ne permite să compilăm un fișier C ++ folosind f9 cheie.

După compilare, pentru a rula fișierul C ++, apăsați Alt + x și introduceți gdb. Veți obține așa ceva:

Pur și simplu faceți clic pe Enter și gdb va începe. Acum faceți clic pe Alerga buton găsit deasupra Emacs pentru a rula programul C ++.

Următoarea imagine arată codul C ++ rulat:

De ce să folosiți Emacs pentru C++?

Emacs este un editor de text extrem de puternic, care oferă atât de multe funcții uimitoare utilizatorilor săi. Fiind ușor de personalizat, Emacs poate fi configurat cu ușurință de către utilizatori în funcție de nevoile și preferințele lor. Pot schimba teme, stiluri de fonturi și multe altele. Este un editor obligatoriu pentru utilizatorii care doresc mai multă libertate în munca lor.

Jocuri HD remasterizate pentru Linux care nu au avut niciodată lansare Linux mai devreme
Mulți dezvoltatori și editori de jocuri vin cu remasterizarea HD a jocurilor vechi pentru a prelungi durata de viață a francizei, vă rog fanilor să so...
Cum se utilizează AutoKey pentru automatizarea jocurilor Linux
AutoKey este un utilitar de automatizare desktop pentru Linux și X11, programat în Python 3, GTK și Qt. Folosind funcțiile sale de scriptare și MACRO,...
Cum se arată FPS Counter în jocurile Linux
Jocurile cu Linux au primit un impuls major când Valve a anunțat suportul Linux pentru clientul Steam și jocurile acestora în 2012. De atunci, multe j...