Emacs

Emacs vs Vim

Emacs vs Vim
On olnud arvukalt teemasid, mille kohta fännid on jaganud oma seisukohti ja vaielnud omavahel nende seisukohtade vastu. Need pühad sõjad on olnud kõikjal: iPhone vs. Android, Marvel vs. DC, vahelehed vs. tühikud jne. Sarnane arutelu selle üle, millised kasutajad, eriti Linuxi kogukonna kasutajad, kipuvad kuumaks minema, on olnud Emacs vs. Vim-debatt, mis on kestnud aastakümneid.

See artikkel sukeldub sellesse pika käimasolevasse redaktorisõja ja teeb otsuse, milline programm - Emacs või Vim - võtab teise ees.

Mis on Emacs ja Vim?

Vim on seal üks vanimaid UNIX-põhiseid tekstiredaktoreid. See tekstiredaktor on vi versioon, tekstiredaktor UNIXi algusaegadest. Vim saavutas pärast kasutuselevõttu kiiresti populaarsust, kuna sellel ei olnud mitte ainult peaaegu kõiki vi funktsioone, vaid ka mõned lisafunktsioonid, mis muutsid selle eelkäijast palju võimsamaks.

Vimi võlu tuleneb sellest, et see on äärmiselt kerge ja sellel on liides mitme režiimiga, millest igaühel on erinev, kasulik otstarve. Selliste funktsioonidega nagu mitmetasandiline tagasivõtmise puu, tohutu kogum pistikprogramme, võimsad tekstikäsitlusriistad ja kümnete programmeerimiskeelte tugi, on Vim kõvasti kindel ja paistab silma tekstiredaktorina.

Emacs on seevastu platvormidevaheline redaktor, millel on mittemodaalne liides. Emacs on üsna sarnane Vimiga, olles vana tekstiredaktor, mis on olnud populaarne juba aastaid. Selle asemel, et seda tekstiredaktoriks nimetada, on Emacs veel palju muud, umbes selline, mida nimetaksite operatsioonisüsteemiks. Tuntud ülilaiendatavuse tõttu on Emacsi lihtne kohandada ja kohandada ning see võimaldab rakendada erinevaid funktsioone ja meetodeid, mis annab selge ülevaate selle tööriista võimsusest. Emacs toetab arvukalt pakette ja laiendusi ning kasutajad saavad neid kasutada selle programmi edasiseks konfigureerimiseks, muutes selle senisest veelgi võimsamaks.

Lühikese tutvustuse abil, mida iga toimetaja pakub, vaadake nüüd mõnda funktsiooni, mida pakuvad nii Emacs kui ka Vim.

1) Rohkem kui tekstiredaktor

Tekstiredaktoritena paistavad nii Emacs kui ka Vim silma peal tööl, mida nad tegema peaksid. Mõlemad toimetajad toetavad mitut keelt, lisaks pakuvad funktsioone, mis toovad välja arendaja parimad küljed. Mõlemad toimetajad saavad peaaegu teha kõike, mida võite ette kujutada.

Nende kahe erinevus tuleneb asjaolust, et erinevalt Vimist ei ole Emacs lihtsalt tekstiredaktor, vaid sellel on pigem IDE-sarnane keskkond. Teisisõnu, Emacs on täieõiguslik lisp-masin, liides, mis pakub oma kasutajatele mitmeid tööriistu ja loob täiesti avatud maailma, kus kasutajad saavad olla 24/7 võrgus ja elada programmi sees.

Näiteks erinevalt Vimi kasutajatest, kes peavad programmi kasutamiseks terminali eraldi avama, on Emacs kaasas oma sisseehitatud kest.

Emacsi kasutajatel on juurdepääs ka sellistele funktsioonidele nagu veebibrauser, märkmete tegemine ja failide korraldamine, samuti mitmele mängule, näiteks Tetris.

Veebibrauseris:

Org-mode - korraldaja:

Tetris:

Nagu ülaltoodud näidetest nähtub, on tekstitöötlus vaid üks aspekt Emacsis esineva kümmekonna funktsiooni seas.

2) Kohandatavus

Nii Emacs kui ka Vim on tuntud äärmiselt kohandatavate ja mitmekülgsete omaduste poolest, neil on palju pistikprogramme ja laiendusi, mis aitavad programme konfigureerida, lisades rohkem funktsioone.

Emacs teeb selle lisp-programmeerimiskeele abil veel ühe sammu edasi. Lispsi abil saate Emacsis peaaegu kõike rakendada ja uuesti määratleda.

Oletame näiteks, et soovite määratleda funktsiooni, mis pärast käivitamist käivitab veebibrauseris Bingi. Seda saab lisaci abil hõlpsasti rakendada Emacsis. Selle funktsiooni lisamiseks Emacsile tuleb Emcase initsialiseerimisfaili lisada järgmised koodiread (~ /.emacsi fail):

(otsija otsimine ()
(interaktiivne)
(sirvige-url
"https: // www.bing.com / "))

Neile, kes on harjunud Vimi kasutama, pakub Emacs kasutajatele ka pakette, mis võimaldavad neil saavutada Vim-i sarnast käitumist Emacsi sees. Tuntuim pakett on Evil mode, mis on ülivõimas Emacsi režiim, mis jäljendab vi täielikult ja püüab seda ka laiendada, lisades ühilduvamaid ja võimsamaid funktsioone.

3) kasutajasõbralik liides

Nagu eespool mainitud, on Vim modaalne redaktor, mis tähendab, et sellel on erinevate funktsioonide täitmiseks mitu režiimi. Algajatele võib see tunduda keeruline, kuna ühelt režiimilt teisele üleminek ja igas režiimis tekstiga toimetuleku õppimine võib alguses osutuda üsna keerukaks.

Emacs näib seevastu olevat uutele kasutajatele ligipääsetavam, kuna sellel on mittemodaalne liides ja võtmeköited ei tundu olevat nii võõrad.

 4) Elisp vs Vim skript

Elisp ja vim skript on vastavalt Emacsi ja Vimi jaoks määratletud programmeerimiskeeled. Neid skripte kasutatakse funktsioonide ja pistikprogrammide kirjutamiseks, et veelgi laiendada redaktorite võimalusi. Kui võrrelda neid kahte keelt kõrvuti, sirutab Elisp vimit laia marginaaliga. Elispiga võrreldes on vim-skripti palju keerulisem konfigureerida ja sellel on väga vähe teeke, millega töötada. Elisp aga seisab Emacsi keskmes ja seda peetakse piisavalt võimsaks, et midagi ellu viia.

Miks Emacs on parem kui Vim?

Nii Emacs kui ka Vim on suurepärased tööriistad igat tüüpi programmeerimiskeelte failide redigeerimiseks. Mõlemad on äärmiselt võimsad ja pakuvad suurt hulka tööriistu nende kasutajatele töötamiseks. Kuid Emacsil pole mitte ainult Vimil olevaid redigeerimisvahendeid, vaid ka laiendatakse neid, pakkudes täiendavaid funktsioone, nagu e-posti klient, silur jne.

Isegi kui kõik need funktsioonid on olemas, võimaldab Emacs teil seda veelgi kohandada ja funktsionaalsusi lisada, mis viitab hästi Emacsi keskmes olevale võimule ja keerukusele. Olles lõpmatult pikendatav, seisab Emacs pea ja õlgadega Vimist kõrgemal.

Kuidas kasutada GameConquerori petumootorit Linuxis
Artikkel sisaldab juhendit GameConquerori petumootori kasutamise kohta Linuxis. Paljud kasutajad, kes mängivad Windowsis mänge, kasutavad rakendust „C...
Parimad Linuxi mängukonsooli emulaatorid
Selles artiklis loetletakse Linuxi jaoks saadaval olev populaarne mängukonsooli emuleerimise tarkvara. Emuleerimine on tarkvara ühilduvuse kiht, mis j...
Parimad mängude jaoks mõeldud Linuxi distrod 2021. aastal
Linuxi operatsioonisüsteem on oma algsest, lihtsast, serveripõhisest välimusest kaugele jõudnud. See operatsioonisüsteem on viimastel aastatel tohutul...