Emacs

Emacs vs Vim

Emacs vs Vim
Det har funnits många ämnen där fans har delat sina åsikter och argumenterat med varandra mot dem som motsätter sig deras åsikter. Dessa heliga krig har funnits överallt: iPhone vs. Android, Marvel vs. DC, flikar vs. mellanslag osv. En liknande diskussion om vilka användare, särskilt de i Linux-communityn, tenderar att bli uppvärmda har varit Emacs vs. Vim-debatt, som har pågått i årtionden.

Den här artikeln dyker in i detta långa, pågående redaktörskrig och fattar ett beslut över vilket program - Emacs eller Vim - som tar kanten över det andra.

Vad är Emacs och Vim?

Vim är en av de äldsta UNIX-baserade textredigerarna där ute. Denna textredigerare är en utveckling av vi, en textredigerare från UNIXs tidiga dagar. Vim blev snabbt populär efter introduktionen, eftersom det inte bara hade nästan alla funktioner i vi inbyggda i det, utan också lagt till några ytterligare funktioner som gjorde det mycket kraftfullare än sin föregångare.

Vims charm uppstår genom att den är extremt lätt och har ett gränssnitt med flera lägen, var och en med olika, användbara syften. Med funktioner som ett ångaträd på flera nivåer, en enorm samling plugins, kraftfulla textmanipuleringsverktyg och stöd för dussintals programmeringsspråk, är Vim helt solid och utmärker sig som en textredigerare.

Emacs är å andra sidan en plattformsredigerare med ett icke-modalt gränssnitt. Emacs är som Vim, en gammal textredigerare som har varit populär i flera år. I stället för att kalla det en textredigerare är Emacs dock så mycket mer, något som det du skulle kalla ett operativsystem. Emacs är känt för att vara mycket utdragbart och är enkelt att anpassa och anpassa, och möjliggör implementering av olika funktioner och metoder, vilket ger en tydlig indikation på hur kraftfullt detta verktyg kan vara. Emacs har stöd för ett överflöd av paket och tillägg, och användare kan använda dessa för att ytterligare konfigurera detta program, vilket gör det ännu mer kraftfullt än tidigare.

Med en kort introduktion om vad varje redaktör erbjuder slutfört, låt oss nu titta på några av de funktioner som både Emacs och Vim erbjuder.

1) Mer än en textredigerare

Som textredigerare utmärker både Emacs och Vim det jobb de är avsedda att göra. Båda redaktörerna innehåller stöd för flera språk, förutom att de tillhandahåller funktioner som ger det bästa av en utvecklare. Båda dessa redaktörer kan nästan göra allt du kan tänka dig.

Skillnaden mellan dessa två beror på det faktum att Emacs till skillnad från Vim inte bara är en textredigerare utan snarare har en IDE-liknande miljö. Med andra ord är Emacs en fullfjädrad lisp-maskin, ett gränssnitt som erbjuder flera verktyg för sina användare och skapar en helt öppen värld där användare kan vara online 24/7 och leva inuti programmet.

Till exempel, till skillnad från Vim-användare, som måste öppna terminalen separat för att använda programmet, kommer Emacs tillsammans med ett eget inbyggt skal.

Emacs-användare har också tillgång till funktioner som en webbläsare, anteckningar och organisering av filer, samt flera spel, som Tetris.

Webbläsare:

Org-mode - Arrangör:

Tetris:

Som framgår av exemplen ovan är textredigering bara en aspekt bland de dussintals funktioner som finns i Emacs.

2) Anpassningsbarhet

Både Emacs och Vim är kända för att vara extremt anpassningsbara och mångsidiga, med ett överflöd av plugins och tillägg för att konfigurera programmen genom att lägga till fler funktioner.

Emacs tar detta ett steg längre genom att använda programmeringsspråket lisp. Du kan implementera och omdefiniera nästan vad som helst i Emacs genom att använda lisp.

Låt oss till exempel säga att du vill definiera en funktion, som efter körning kör Bing i webbläsaren. Detta kan enkelt implementeras i Emacs med lisp. För att lägga till den här funktionen i Emacs måste följande kodrader läggas till i Emcas-initialiseringsfilen (~ /.emacs-fil):

(avstänga sökaren ()
(interaktiv)
(browse-url
"https: // www.bing.com / "))

För dem som är vana vid att använda Vim, ger Emacs också användare med paket som gör det möjligt för dem att uppnå Vim-liknande beteende i Emacs. Det mest kända paketet är Evil mode, vilket är ett extremt kraftfullt Emacs-läge som emulerar vi helt och försöker också expandera på det genom att lägga till mer kompatibla och kraftfulla funktioner.

3) Användarvänligt gränssnitt

Som nämnts ovan är Vim en modalredigerare, vilket innebär att den har flera lägen för att utföra olika funktioner. För nybörjare kan detta verka svårt, eftersom det kan vara ganska komplicerat att byta från ett läge till ett annat och lära sig att hantera text i varje läge.

Emacs, å andra sidan, verkar vara mer tillgänglig för nya användare, eftersom det har ett icke-modalt gränssnitt och tangentbindningarna inte verkar vara så utländska.

 4) Elisp vs Vim Script

Elisp och vim script är de programmeringsspråk som definierats för Emacs respektive Vim. Dessa skript används för att skriva funktioner och plugins för att ytterligare utöka redaktörens funktioner. När man jämför dessa två språk sida vid sida sträcker sig Elisp ut vim med stor marginal. Jämfört med Elisp är vim-skript mycket svårare att konfigurera och har väldigt få bibliotek att arbeta med. Elisp står emellertid i hjärtat av Emacs och anses vara kraftfull nog för att genomföra vad som helst.

Varför Emacs är bättre än Vim?

Både Emacs och Vim är utmärkta verktyg för redigering av filer av alla typer av programmeringsspråk. Båda är extremt kraftfulla och ger stora uppsättningar verktyg för sina användare att arbeta med. Emacs har emellertid inte bara de redigeringsverktyg som Vim har, utan utökar dem också genom att tillhandahålla ytterligare funktioner, såsom e-postklient, felsökare, etc.

Även med alla dessa funktioner, låter Emacs dig ytterligare anpassa den och lägga till funktioner till den, vilket är en bra indikation på den kraft och komplexitet som finns i kärnan i Emacs. Att vara oändligt utdragbar, Emacs står huvud och axlar ovanför Vim.

Gratis och öppen källkodsmotorer för utveckling av Linux-spel
Den här artikeln kommer att täcka en lista över gratis motorer med öppen källkod som kan användas för att utveckla 2D- och 3D-spel på Linux. Det finns...
Shadow of the Tomb Raider for Linux Tutorial
Shadow of the Tomb Raider är det tolfte tillskottet till Tomb Raider-serien - en action-äventyrsspelfranchise skapad av Eidos Montreal. Spelet mottogs...
Hur man förbättrar FPS i Linux?
FPS står för Bildrutor per sekund. FPS: s uppgift är att mäta bildfrekvensen i videouppspelningar eller spelprestanda. Med enkla ord betecknas antalet...