Emacs

Emacs vs Vim

Emacs vs Vim
Der har været adskillige emner, hvor fans har delt deres synspunkter og argumenteret med hinanden mod dem, der er imod deres synspunkter. Disse hellige krige har været overalt: iPhone vs. Android, Marvel vs. DC, tabs vs. mellemrum osv. En lignende diskussion om hvilke brugere, især dem fra Linux-samfundet, der har tendens til at blive opvarmede har været Emacs vs. Vim-debat, som har været i gang i årtier.

Denne artikel dykker ned i denne lange, igangværende redaktørskrig og træffer en beslutning om, hvilket program - Emacs eller Vim - tager kanten over det andet.

Hvad er Emacs og Vim?

Vim er en af ​​de ældste UNIX-baserede tekstredaktører derude. Denne teksteditor er en udvikling af vi, en teksteditor fra de tidlige dage af UNIX. Vim blev hurtigt populær efter introduktionen, da den ikke kun havde næsten alle funktionerne i vi indbygget i den, men også tilføjede nogle ekstra funktioner, der gjorde den meget mere kraftfuld end sin forgænger.

Vims charme stammer fra, at den er ekstremt let og har en grænseflade med flere tilstande, hver med et andet, nyttigt formål. Med funktioner som et fortrykt træ på flere niveauer, en enorm samling af plugins, kraftfulde tekstmanipulationsværktøjer og understøttelse af snesevis af programmeringssprog er Vim bunnsolid og udmærker sig som en teksteditor.

Emacs er derimod en platform-editor med en ikke-modal grænseflade. Emacs er ligesom Vim, der er en gammel teksteditor, der har været populær i årevis. I stedet for at kalde det en teksteditor er Emacs dog så meget mere, noget som det, du vil kalde et operativsystem. Emacs er kendt for at være meget udvidelig og er let at finjustere og tilpasse og tillader implementering af forskellige funktioner og metoder, hvilket giver en klar indikation af, hvor kraftigt dette værktøj kan være. Emacs har support til en overflod af pakker og udvidelser, og brugere kan bruge disse til yderligere at konfigurere dette program, hvilket gør det endnu mere kraftfuldt end før.

Med en kort introduktion til, hvad hver redaktør tilbyder afsluttet, lad os nu se på nogle af de funktioner, som både Emacs og Vim giver.

1) Mere end en teksteditor

Som tekstredaktører udmærker både Emacs og Vim sig på det job, de er beregnet til. Begge redaktører indeholder understøttelse af flere sprog ud over at tilbyde funktioner, der får det bedste ud af en udvikler. Begge disse redaktører kan næsten gøre alt, hvad du kan forestille dig.

Forskellen mellem disse to skyldes, at Emacs i modsætning til Vim ikke kun er en teksteditor, men snarere har et IDE-lignende miljø. Med andre ord er Emacs en fuldt udviklet lisp-maskine, en grænseflade, der tilbyder flere værktøjer til sine brugere og skaber en helt åben verden, hvor brugerne kan være online 24/7 og leve inde i programmet.

For eksempel, i modsætning til Vim-brugere, der skal åbne terminalen separat for at bruge programmet, kommer Emacs sammen med en egen indbygget skal.

Emacs-brugere har også adgang til funktioner som en webbrowser, notering og organisering af filer såvel som flere spil, såsom Tetris.

Webbrowser:

Org-mode - Organizer:

Tetris:

Som det ses af ovenstående eksempler, er tekstredigering kun et aspekt blandt de dusin funktioner der findes i Emacs.

2) Tilpasningsevne

Både Emacs og Vim er kendt for at være ekstremt tilpasselige og alsidige, med en overflod af plugins og udvidelser, der hjælper med at konfigurere programmerne ved at tilføje flere funktioner.

Emacs tager dette et skridt videre ved hjælp af lisp programmeringssprog. Du kan implementere og omdefinere næsten alt i Emacs ved hjælp af lisp.

Sig for eksempel, at du vil definere en funktion, der efter kørsel kører Bing i webbrowseren. Dette kan let implementeres i Emacs ved hjælp af lisp. For at tilføje denne funktion til Emacs skal følgende kodelinjer føjes til Emcas-initialiseringsfilen (~ /.emacs-fil):

(defun searcher ()
(interaktiv)
(browse-url
"https: // www.bing.com / "))

For dem, der er vant til at bruge Vim, giver Emacs også brugere med pakker, der giver dem mulighed for at opnå Vim-lignende adfærd inde i Emacs. Den mest kendte pakke er Evil-tilstand, som er en ekstremt kraftfuld Emacs-tilstand, der efterligner vi fuldstændigt og også forsøger at udvide den ved at tilføje mere kompatible og kraftfulde funktioner.

3) Brugervenligt interface

Som nævnt ovenfor er Vim en modal editor, hvilket betyder, at den har flere tilstande til at udføre forskellige funktioner. For begyndere kan dette virke vanskeligt, da det at skifte fra en tilstand til en anden og lære at håndtere tekst i hver tilstand kan vise sig at være ret kompliceret i starten.

Emacs ser derimod ud til at være mere tilgængelig for nye brugere, da det har en ikke-modal grænseflade, og tastebindingerne ser ikke ud til at være så udenlandske.

 4) Elisp vs Vim Script

Elisp og vim script er de programmeringssprog, der er defineret for henholdsvis Emacs og Vim. Disse scripts bruges til at skrive funktioner og plugins til yderligere at udvide redaktørernes muligheder. Når man sammenligner disse to sprog side om side, strækker Elisp sig vim ud med en bred margin. Sammenlignet med Elisp er vim-script meget sværere at konfigurere og har meget få biblioteker at arbejde med. Elisp står dog i hjertet af Emacs og anses for at være stærk nok til at gennemføre noget.

Hvorfor Emacs er bedre end Vim?

Både Emacs og Vim er fremragende værktøjer til redigering af filer af alle typer programmeringssprog. Begge er ekstremt kraftfulde og giver store sæt værktøjer, som deres brugere kan arbejde med. Emacs har dog ikke kun de redigeringsværktøjer, som Vim har, men udvider dem også ved at tilbyde yderligere funktioner, såsom e-mail-klient, debugger osv.

Selv med alle disse funktioner til stede, giver Emacs dig mulighed for yderligere at tilpasse det og tilføje funktioner til det, hvilket er en fin indikation af den kraft og kompleksitet, der findes i kernen af ​​Emacs. Emacs er uendelig udvidelig og står hoved og skuldre over Vim.

Bedste apps til Gamepad Mapping til Linux
Hvis du kan lide at spille spil på Linux med en gamepad i stedet for et typisk tastatur- og musesystem, er der nogle nyttige apps til dig. Mange pc-sp...
Nyttige værktøjer til Linux-spillere
Hvis du kan lide at spille spil på Linux, er chancerne for, at du måske har brugt apps og hjælpeprogrammer som Wine, Lutris og OBS Studio for at forbe...
HD Remastered-spil til Linux, der aldrig tidligere havde haft en Linux-udgivelse
Mange spiludviklere og udgivere kommer med HD-remaster af gamle spil for at forlænge franchisens levetid. Venligst fans, der anmoder om kompatibilitet...