Tā daudzpusība un kompaktums ir novedis pie tā, ka spēļu izstrādātāju vidū ir izveidojies milzīgs nosaukums, un tāpēc to bieži izmanto, lai attīstītu spēles, spēļu dzinējus un darbvirsmas lietojumprogrammas. Tā kā aizmugurē ir tik spēcīgs kodols, ir ārkārtīgi svarīgi, lai būtu redaktors, kas nodrošina vislabākās funkcijas un atvieglo lietotāju vajadzības.
Emacs ir viens no šādiem ērtiem redaktoriem, kas elastīgā un pielāgojamā rakstura dēļ ir ātri kļuvis par ārkārtīgi efektīvu un spēcīgu izmantojamu rīku. Funkcijas, piemēram, git integrācija, vairāki rediģēšanas režīmi, kā arī regex meklēšana un nomaiņa, parāda komandējošo klātbūtni starp plašo teksta redaktoru komplektu.
Tā ir ārkārtīgi pielāgojama, tāpēc to var viegli konfigurēt lietošanai kā C ++ IDE. Tāpēc šodien mēs izskatīsim, kā var konfigurēt Emacs C ++ izstrādei un pārvērst to par C ++ IDE.
C ++ integrēšana ar Emacs
Lai integrētu C ++ ar Emacs, mēs izmantosim vairākas paketes, piemēram, automātisko pabeigšanu, flycheck, magit utt. Ļaujiet mums tagad pāriet uz procesu.
1) Sākotnējo komandu pievienošana inicializācijas failam
Sākot Emacs, pirmā lieta, kas tiek apstrādāta, ir inicializācijas fails (init fails), kas satur komandas, kas ļauj lietotājiem pielāgot un iestatīt Emacs atbilstoši viņu vēlmēm.
Tātad, lai Emacs darbotos kā C ++ IDE, mums šim failam ir jāpievieno dažas komandas.
Lai to izdarītu, atveriet termināli un ievadiet šādu komandu, lai atvērtu inicializācijas failu:
$ emacs ~ /.emacsTagad mums jāpievieno šādas koda rindas:
(pieprasīt “paketi”)(pievienot sarakstam 'paketes arhīvi
'("melpa" . "http: // melpa.org / paketes / ") t)
(inicializēt paketi)
(ja vien (package-install-p 'use-package)
(pakete-atsvaidzināt-saturs)
(pakotne-instalēt 'lietojums-pakete)]
(mēģiniet izmantot paketi: nodrošiniet t)
(use-package which-key: nodrošiniet t: config (kurš-key-mode))
Iepriekš sniegtais kods būtībā pievieno Melpa arhīvu Emacs atrodamo pakotņu krātuvju sarakstam un ļauj tai izmantot šīs paketes.
Turklāt tā instalē lietojuma pakotni, kuru var izmantot citu paku instalēšanai, atslēgu saistījumu iestatīšanai un dažādu Emacs režīmu konfigurēšanai.
2) Yasnippet pakotnes pievienošana
Kad būsim iestatījuši Emacs ar sākotnējo saturu, mēs tagad pievienosim paketi yasnippet, kas ir fragmentu paplašinājums Emacs un tādējādi nodrošina funkciju veidnes vairākām valodām, ieskaitot C++.
Lai to pievienotu mūsu inicializācijas failā, mums tas vispirms ir jāinstalē. Lai to izdarītu, atveriet Emacs un nospiediet Alt + x un ievadiet paketes-saraksts-paketes. Tagad sit Ctrl + s un meklējiet yasnippet. Turpiniet noklikšķināt uz Ctrl + s, līdz atrodat paketi: yasnippet-snippets.
Jūs varat noklikšķināt uz tā un atlasīt instalēt vai nospiediet i sekoja x lai instalētu paketi yasnippet.
Pēc yasnippet instalēšanas nospiediet Ctrl + x, sekoja Ctrl + f, un atveriet ~ /.emacs fails. Šajā iekšpusē pievienojiet šādas koda rindas:
(pieprasīt 'yasnippet)(yas-globālais režīms 1)
Vienkārši trāpiet Ctrl + X, sekoja Ctrl + S lai saglabātu failu un restartētu Emacs. Tagad atveriet dažus C ++ failus, un jūs varat redzēt šādas nolaižamās opcijas, kuras, noklikšķinot, nodrošina fragmentu.
Nolaižamās izvēlnes opcijas:
Fragments tiek piešķirts pēc noklikšķināšanas uz vienas no opcijām:
3) Dažu papildu paku pievienošana
Tagad mēs pievienosim dažas papildu paketes, kas mums Emacs C ++ attīstībai sniegtu vairāk funkciju.
Pirmkārt, mēs pievienosim automātiskās pabeigšanas režīms, kas, kā norāda nosaukums, ir automātiskās pabeigšanas paplašinājums. Inicializācijas failam pievienojiet šādas koda rindas:
(use-package auto-complete: nodrošināt t
:tajā
(progn
(ac-config-noklusējums)
(globālais automātiskās pabeigšanas režīms t)
))
Tālāk mēs pievienosim a flycheck, kas palīdz sintakses pārbaudē, ziņojot par kļūdām un brīdinājumiem. Lai to izdarītu, mūsu init failam jāpievieno:
(use-package auto-complete(Use-package flycheck
: nodrošināt t
:tajā
(global-flycheck-mode t))
Visbeidzot, mēs pievienosim mūsdienu c ++ fonts pakete, kas nodrošina jaunākās C ++ valodas sintakses izcelšanu.
(izmantojiet paketi modern-cpp-font-lock: nodrošināt t)
4) Git integrācija, izmantojot Magit
Emacs arī ļauj integrēt Git, izmantojot Magit, git rīku, kas darbojas kā Git saskarne. Mēs to varam iekļaut Emacs, pievienojot mūsu inicializācijas failam šādas koda rindas:
(use-package magit: nodrošināt t
:tajā
(progn
(iesiešanas atslēga "C-x g" 'magit-status)])
Šeit mēs izveidojām atslēgu saistīšanu, izmantojot taustiņus Ctrl + x sekoja g, kas ļauj mums redzēt mūsu failu statusu (nesekot, iestudēt, apņemas).
Lai redzētu Magit komandas, nospiediet jautājuma zīmi (?) taustiņu. Dažas komandas, kas tiks parādītas, ir:
Izmantojot tos, mēs varam integrēt savus failus ar versijas kontroli Git.
5) C ++ koda sastādīšana un palaišana
Lai apkopotu un palaistu C ++ kodu Emacs, mēs izmantosim pielāgotu funkciju un GDB atkļūdotāju. Tas padara procesu daudz vieglāku salīdzinājumā ar make-failu izveidošanu un pēc tam to apkopošanu un izveidošanu. Lai to izdarītu, vispirms pievienojiet šo kodu inicializācijas failam:
(defun kods-kompilēt ()(interaktīvs)
(ja vien (file-pastāv-p "Makefile")
(set (make-local-variable 'compile-command)
(let ((fails (faila nosaukums-direktorija bufera faila nosaukums)))
(formāts "% s -o% s% s"
(ja (vienāds (faila nosaukuma paplašinājuma fails) "cpp") "g ++" "gcc")
(faila nosaukums-sans-paplašinājuma fails)
fails)))
(sastādīt kompile-komandu)))
(global-set-key [f9] 'koda sastādīšana)
Iepriekš minētais kods ļauj mums apkopot C ++ failu, izmantojot f9 taustiņu.
Pēc kompilēšanas, lai palaistu failu C ++, nospiediet Alt + x un ievadiet gdb. Jūs saņemsiet kaut ko līdzīgu šim:
Vienkārši noklikšķiniet uz Enter, un tiks sākts gdb. Tagad noklikšķiniet uz Palaist poga atrasta Emacs augšpusē, lai palaistu programmu C ++.
Šajā attēlā redzams palaistais C ++ kods:
Kāpēc izmantot Emacs C versijai++?
Emacs ir ļoti spēcīgs teksta redaktors, kas saviem lietotājiem piedāvā tik daudz pārsteidzošu funkciju. Tā kā Emacs ir viegli pielāgojama, lietotāji to var viegli iestatīt atbilstoši savām vajadzībām un vēlmēm. Viņi var mainīt motīvus, fontu stilus un daudz ko citu. Tas ir obligāts redaktors lietotājiem, kuri vēlas lielāku brīvību savā darbā.