vim | |
---|---|
Vim i "konsol"-läge | |
Sorts | Textredigerare |
Utvecklaren | Bram Molenar med flera |
Skrivet i | C- och Vim-skript [1] |
Operativ system | Amiga , Linux , Mac OS X , Windows , OpenVMS , OS/2 , Unix |
Gränssnittsspråk | engelska, spanska, italienska, kinesiska, tyska, persiska, polska, ryska, franska, japanska [2] |
Första upplagan | 2 november 1991 [3] |
senaste versionen | |
Licens | GPL -kompatibel Vim-licens , välgörenhetsprogram |
Hemsida | vim.org |
Mediafiler på Wikimedia Commons |
Vim (förkortning av Vi Im proved , uttalas "vim") är en fritextredigerare baserad på det äldre vi . Nu är det en kraftfull textredigerare med fullständig frihet för anpassning och automatisering möjlig genom tillägg och tillägg.
Vims användargränssnitt kan köras i ren text (konsol)-läge .
Det finns också en modifiering för användning i ett grafiskt fönstergränssnitt - GVim. Många användarkommandon i GVim kan anropas via sina respektive menyalternativ.
En av huvudfunktionerna i editorn är användningen av två huvudsakliga, manuellt växlande, inmatningslägen: kommando (efter start är redigeraren i den) och text ( engelsk infogningsläge , direkt textredigeringsläge, liknande de flesta "normala" redaktörer). Det finns andra lägen också.
Vim är inte intuitivt (annat än i "text"-läge), så att arbeta effektivt med editorn kräver förkunskaper.
Jämfört med klassiska vi har Vim följande förbättringar:
Vim har ett mycket bekvämt och detaljerat hjälpsystem, och ett system för att navigera och navigera mellan dess sektioner. För att öppna någon av dess sektioner, använd bara kommandot :help i kommandoläge.
Naturligtvis finns det många fler sådana lag. Poängen är att du måste lära dig dessa kommandon för att kunna använda. Du kanske hävdar att du förmodligen inte kan lära dig alla dessa kommandon, eftersom det finns hundratals olika rörelsekommandon, några enkla och några ganska smarta, och att det skulle ta veckors övning att lära dig alla dessa kommandon. Tja, du behöver inte lära dig alla. Istället måste du förstå din individuella redigeringsstil och bara lära dig de kommandon som hjälper till att göra den mer effektiv [5] .
Bram MoolenaarSom standard startar Vim i normalt läge, även kallat kommandoläge. Tangenttryckningar i detta läge uppfattas som kommandon (kopiera, ta bort, flytta text, etc.).
Bland de normala lägeskommandona finns kommandon "enkeltecken". Så om du till exempel trycker $på kommer markören att flyttas till slutet av raden; trycka på knappen 0(noll) - till början; D(med versaler) - för att ta bort ( radera ) en del av den aktuella raden från den aktuella markörpositionen till slutet; С(med versaler) - för att ersätta ( ändra) en del av den aktuella raden från den aktuella markörpositionen till slutet, etc.
Andra kommandon för deras arbete kommer att vänta på ytterligare fortsättning av input. Till exempel fär den ansvarig för att snabbt flytta på en rad till nästa tecken som skrivs efter sig själv. Efter att ha tryckt på fVim kommer därför att vänta på att detta tecken ska skrivas för att använda det som sök.
Efter att ha tryckt på y( y ank), d, coch andra liknande "kontroll"-tangenter, kommer Vim att vänta på ytterligare inmatning av kommandon som anger objektet som åtgärden ska utföras på (kopiera, ta bort eller ersätt, respektive). Så, det dawkommer att radera det aktuella ordet under markören ( radera ett mbient ord ), och alla tecken från den aktuella markörpositionen till slutet av raden. d$
Sådana mycket enkla kommandon används inte bara i "manuellt läge" (när de, om nödvändigt, skrivs varje gång från tangentbordet), utan också när du ställer in komplexa sekvenser av åtgärder .
Det normala läget är det centrala läget , från vilket övergången till alla andra utförs. Du kan växla från valfritt läge till kommandoläge genom att trycka två gånger på knappen Esc(i de flesta fall räcker det med ett tryck).
Infogningsläge ( engelska infogningsläge ), där text skrivs in.
För att växla från kommandoläge till infogningsläge kan du trycka ipå (för att börja klistra in text vid markören) eller a(för att börja klistra in text efter markören). Det finns också ett antal andra tangenter och deras kombinationer för att växla till direkt textredigeringsläge (till exempel genom ett av textobjektsersättningskommandona).
I det här läget fungerar Vim precis som de flesta "vanliga" textredigerare. Som standard behandlas tecken som skrivs inte som kommandon, utan infogas i befintlig text. Men även i detta läge kan du ställa in speciella redigeringsåtgärder som utförs när vissa tangenter eller deras kombinationer trycks ned. Som ett exempel kan du ange att när du skriver en öppningsparentes läggs (den matchande avslutande parentesen till omedelbart och markören placeras mellan dem.
CtrlKortkommandon ( + R, etc.) kan också användas för att infoga, ta bort, ändra och autokomplettera text .
När du skriver ett förkortningsord ersätts detta ord automatiskt med en fördefinierad text.
Detta läge tas fram genom att trycka :från normalläget. Kolonet följs av ett komplext kommando (till exempel sök eller ersätt), som efter inmatning skickas för exekvering genom att trycka på ↵ Enter. Efter att ha utfört kommandot återgår editorn till normalt läge. Det här läget innehåller även kommandon för att söka vidare i texten /, söka bakåt i texten ( ?) och ett filterkommando !för att skicka data till ett externt filter.
Det visuella läget var frånvarande från Vi och dök upp först i Vim. Det är lite likt kommandot. Med hjälp av speciella kontrollkommandon, i kombination med pilar och navigeringskommandon, kan du välja textfragment tecken för tecken, rad för rad eller som ett block och sedan tillämpa normallägeskommandon på dem (till exempel radera den markerade texten eller ersätta den). Redigering i detta läge är lättare än i normalt läge eftersom du tydligt kan se vilket textblock det anropade redigeringskommandot kommer att gälla för.
Vims förmåga att skilja mellan textobjekt (ord, meningar, stycken, rader, enskilda tecken, etc.) låter dig ställa in en sekvens av åtgärder för att automatisera vissa operationer.
Ja, efter kommandot
nmap < F7 > byei << ESC > ea >< / < C - R > 0 >< ESC >Om du trycker på F7konverterar du (i kommandoläge) vilket ord som helst under markören (oavsett dess längd och tecken den består av) till en xml-tagg . Till exempel, om det nuvarande ordet under markören är div , så kommer det att konverteras till <div></div> , om transform är sedan till <transform></transform> osv.
Vim är kapabel till mycket mer komplexa transformationer, du kan också ställa in dina egna funktioner för att transformera data och automatisera rutinoperationer.
Alla åtgärder som är genomförbara i Vim "manuellt" (det vill säga direkt av en person vid tangentbordet) kan automatiseras (inklusive växling mellan olika lägen).
Versionshistorik | ||
---|---|---|
datumet | Version | Ändringar |
1988 | 1.0 | Baserad på Stevie för Amiga , med titeln Vi Imitation , aldrig officiellt släppt. |
2 november 1991 | 1,14 [6] | Första offentliga release för Amiga |
1992 | 1,22 [6] | Porteras till Unix . Nu tävlar Vim med vi . Från det ögonblicket blev Vim Vi Improved |
12 augusti 1994 | 3,0 [6] | Stöd för delade fönster |
29 maj 1996 | 4,0 [6] | Grafiskt användargränssnitt |
19 februari 1998 | 5,0 [6] | Syntaxmarkering , ett enkelt skriptspråk (användardefinierade funktioner, kommandon, etc.) |
6 april 1998 | 5.1 | Bugfixar och andra ändringar. |
27 april 1998 | 5.2 | Stöd för långa rader, inbyggd filläsare, dialogrutor, popup-menyer, valläge, sessionsfiler, användardefinierade funktioner, kommandon, tcl- gränssnitt och andra ändringar. |
31 augusti 1998 | 5.3 | Bugfixar och andra ändringar. |
25 juli 1999 | 5.4 | Enkel filkryptering, olika förbättringar |
19 september 1999 | 5.5 | Bugfixar, olika förbättringar |
16 januari 2000 | 5.6 | Nya syntaxfiler, buggfixar och andra ändringar |
24 juni 2000 | 5.7 | Samma |
31 maj 2001 | 5.8 | Samma |
26 september 2001 | 6,0 [6] | Vikning , plugins, flerspråkighet och andra förändringar |
24 mars 2002 | 6.1 | Felkorrigering |
1 juni 2003 | 6.2 | GTK2 , arabiskt stöd , kommando: försök, mindre funktioner, buggfixar |
7 juni 2004 | 6.3 | Buggfixar, översättningsuppdateringar, taggförbättringar |
15 oktober 2005 | 6.4 | Buggfixar, Perl , Python och Ruby stödjer uppdateringar |
7 maj 2006 | 7,0 | Stavningskontroll , automatisk komplettering , flikar ("flikar"), markering av aktuell rad och kolumn, ångra grenar och andra ändringar |
12 maj 2007 | 7.1 | Bugfixar, nya körbara filer och syntaxfiler och andra ändringar |
9 augusti 2008 | 7.2 | Bugfixar, nya körbara filer och syntaxfiler, säkerhetsförbättringar och andra ändringar |
15 augusti 2010 | 7.3 | Bugfixar, nya körbara filer och syntaxfiler, säkerhetsförbättringar, "perpetual" ångra, upphört stöd för Mac OS 9 och GTK1 , Lua - stöd och andra ändringar |
10 augusti 2013 | 7.4 | Ny, snabbare motor för reguljära uttryck och andra ändringar |
12 september 2016 | 8,0 | Asynkron I/O, lambda-uttryck , stängningar , stöd för GTK+ 3 och Microsoft DirectX och andra ändringar. |
18 maj 2018 | 8.1 | Stöd för att öppna en terminal inuti ett Vim-fönster [7] . |
14 december 2019 | 8.2 | Popup-fönster |
28 juni 2022 | 9,0 [8] | Vim9 skript |
En av fördelarna med Vim-redigeraren är dess tillgänglighet för många operativsystem . Detta gäller särskilt för systemadministratörer som måste redigera filer över plattformar.
Vim körs på följande operativsystem:
För operativsystemet Android , som använder pekskärmen som sin primära inmatningsenhet, skrev David Tao en anpassad version av vim, vim touch, som för närvarande distribueras under Apache-licensen [9] [10] [11] [12] . Det finns även en variant av DroidVim.
Från 2001 till 2004 Vim var vinnaren av LinuxJournals Readers' Choice Awards för favorittextredigerare. Han fick också Linuxworld Editors' Choice Award 1999 och Slashdot Beanie Award 2000.
Vim distribueras under en GPL - kompatibel licens som kallas Charityware . En del av medlen som doneras till utvecklingen av Vim används för att stödja föräldralösa barn i Uganda genom ICCF Holland .
Det totala antalet förlängningar tillgängliga på den officiella webbplatsen är mer än 3000 [13] .
Populära Vim-tillägg inkluderar:
Lista över populära Vim-tillägg efter deras popularitet på GitHub: http://vimawesome.com
På grund av flexibiliteten hos alternativen som tillhandahålls genom tillägg, kan Vim också användas som en personlig wiki .
Textredigerare ( lista ) | |
---|---|
Unix / Linux | |
DOS | |
Windows | |
Cross-plattform | |
SDK | |
Funktioner |