Denne artikkelen dykker ned i denne lange, pågående redaktørkrigen og tar en beslutning om hvilket program - Emacs eller Vim - tar kanten over den andre.
Hva er emacs og vim?
Vim er en av de eldste UNIX-baserte tekstredaktørene der ute. Denne tekstredigereren er en utvikling av VI, en tekstredigerer fra de første dagene av UNIX. Vim fikk raskt popularitet etter introduksjonen, da den ikke bare hadde nesten alle funksjonene i VI innebygd i den, men la også til noen tilleggsfunksjoner som gjorde det mye kraftigere enn forgjengeren.
Sjarmen til Vim oppstår fra at det er ekstremt lett og å ha et grensesnitt med flere modus, hver med et annet, nyttig formål. Med funksjoner som et flernivå angre tre, en enorm samling av plugins, kraftige tekstmanipulasjonsverktøy og støtte for dusinvis av programmeringsspråk, er Vim Rock Solid og utmerker seg som tekstredigerer.
EMACS er derimot en redaktør på tvers av plattformer med et ikke-modalt grensesnitt. Emacs er ganske som Vim, å være en gammel tekstredaktør som har vært populær i årevis. I stedet for å kalle det en tekstredigerer, er Emacs imidlertid så mye mer, noe som det du vil kalle et operativsystem. Emacs er kjent for å være svært utvidbar, og er enkelt å finpusse og tilpasse, og tillater implementering av forskjellige funksjoner og metoder, noe som gir en klar indikasjon på hvor kraftig dette verktøyet kan være. EMACS har støtte for en overflod av pakker og utvidelser, og brukere kan bruke disse til å konfigurere dette programmet ytterligere, noe som gjør det enda kraftigere enn før.
Med en kort intro på hva hver redaktør tilbyr fullført, la oss nå se på noen av funksjonene som både Emacs og Vim gir.
1) Mer enn en tekstredigerer
Som tekstredaktører utmerker både Emacs og Vim seg på jobben som de er ment å gjøre. Begge redaktørene inneholder støtte for flere språk, i tillegg til å tilby funksjoner som får frem det beste av en utvikler. Begge disse redaktørene kan omtrent gjøre alt du kan forestille deg.
Forskjellen mellom disse to oppstår fra det faktum at Emacs, i motsetning til VIM, ikke bare er en tekstredigerer, men heller har et IDE-lignende miljø. Med andre ord, Emacs er en fullverdig LISP-maskin, et grensesnitt som tilbyr flere verktøy til brukerne sine og oppretter en helt åpen verden, der brukere kan være online 24/7 og bo i programmet.
For eksempel, i motsetning til VIM-brukere, som må åpne terminalen separat for å bruke programmet, kommer Emacs sammen med et innebygd skall.
EMACS-brukere har også tilgang til funksjoner som en nettleser, notat og organisering av filer, samt flere spill, for eksempel Tetris.
Nettleser:
Org -Mode - Arrangør:
Tetris:
Som det fremgår av eksemplene ovenfor, er tekstredigering bare ett aspekt blant dusin funksjoner som er til stede i Emacs.
2) Tilpassbarhet
Både Emacs og VIM er kjent for å være ekstremt tilpassbare og allsidige, og har en overflod av plugins og utvidelser for å hjelpe til med å konfigurere programmene ved å legge til flere funksjonaliteter.
Emacs tar dette et skritt videre ved å bruke LISP -programmeringsspråket. Du kan implementere og omdefinere nesten hva som helst i Emacs ved å bruke LISP.
Si for eksempel at du vil definere en funksjon, som etter å ha kjørt, kjører Bing i nettleseren. Dette kan enkelt implementeres i Emacs ved hjelp av LISP. For å legge til denne funksjonen til Emacs, må følgende kodelinjer legges til EMCAS -initialiseringsfilen (~//.EMACS -fil):
(Defun Searcher ()For de som er vant til å bruke VIM, gir Emacs også brukere pakker som lar dem oppnå VIM-lignende oppførsel inne i Emacs. Den mest kjente pakken er Evil Mode, som er en ekstremt kraftig EMACS-modus som emulerer VI fullstendig og prøver også å utvide den ved å legge til mer kompatible og kraftige funksjoner.
3) Brukervennlig grensesnitt
Som nevnt ovenfor er Vim en modal redaktør, noe som betyr at den har flere modus for å utføre forskjellige funksjoner. For nybegynnere kan dette virke vanskelig, da det å bytte fra en modus til en annen og lære å håndtere tekst i hver modus kan vise seg å være ganske komplisert i begynnelsen.
Emacs ser derimot ut til å være mer tilgjengelig for nye brukere, ettersom det har et ikke-modalt grensesnitt og nøkkelbindingene ser ikke ut til å være at utenlandske.
4) Elisp vs Vim -skript
ELISP og VIM -skript er henholdsvis programmeringsspråkene som er definert for EMAC og VIM. Disse skriptene brukes til skrivefunksjoner og plugins for å utvide redaksjonens muligheter ytterligere. Når du sammenligner disse to språkene side om side, er Elisp utstrekkinger VIM med bred margin. Sammenlignet med ELISP er Vim -skript mye vanskeligere å konfigurere og har veldig få biblioteker å jobbe med. Elisp står imidlertid i hjertet av Emacs og anses å være kraftig nok til å implementere noe.
Hvorfor Emacs er bedre enn vim?
Både Emacs og VIM er utmerkede verktøy for å redigere filer av alle typer programmeringsspråk. Begge er ekstremt kraftige og gir store sett med verktøy for brukerne sine å jobbe med. Emacs har imidlertid ikke bare redigeringsverktøyene som Vim har, men utvider også dem ved å tilby tilleggsfunksjoner, for eksempel e -postklient, debugger osv.
Selv med alle disse funksjonene til stede, lar Emacs deg tilpasse den ytterligere og legge til funksjonaliteter til det, noe som er en fin indikasjon på kraften og kompleksiteten som eksisterer i kjernen av Emacs. Å være uendelig utvidbar, emacs står hode og skuldre over Vim.