vim | |
---|---|
| |
Type | Tekst editor |
Udvikler | Bram Molenar m.fl |
Skrevet i | C og Vim script [1] |
Operativ system | Amiga , Linux , Mac OS X , Windows , OpenVMS , OS/2 , Unix |
Interface sprog | engelsk, spansk, italiensk, kinesisk, tysk, persisk, polsk, russisk, fransk, japansk [2] |
Første udgave | 2. november 1991 [3] |
nyeste version | |
Licens | GPL - kompatibel Vim-licens , velgørende formål |
Internet side | vim.org |
Mediefiler på Wikimedia Commons |
Vim (forkortelse for Vi Im proved , udtales "vim") er en fri teksteditor baseret på det ældre vi . Nu er det en kraftfuld teksteditor med fuldstændig frihed til tilpasning og automatisering muliggjort af udvidelser og tilføjelser.
Vims brugergrænseflade kan køre i ren tekst (konsol)-tilstand .
Der er også en modifikation til brug i en grafisk vinduesgrænseflade - GVim. Mange brugerkommandoer i GVim kan fremkaldes gennem deres respektive menupunkter.
En af hovedfunktionerne ved editoren er brugen af to hovedindtastningstilstande, der kan skiftes manuelt: kommando (efter lancering er editoren i den) og tekst ( engelsk indsættelsestilstand , direkte tekstredigeringstilstand, svarende til de fleste "normale" redaktører). Der er også andre tilstande.
Vim er ikke intuitiv (bortset fra i "tekst"-tilstand), så at arbejde effektivt med editoren kræver forudgående læring.
Sammenlignet med klassisk vi har Vim følgende forbedringer:
Vim har et meget praktisk og detaljeret hjælpesystem, og et system til at navigere og navigere mellem dets sektioner. For at åbne nogen af dens sektioner skal du blot bruge kommandoen :help i kommandotilstand.
Selvfølgelig er der mange flere sådanne hold. Pointen er, at du skal lære disse kommandoer for at kunne bruge. Du vil måske argumentere for, at du sandsynligvis ikke kan lære alle disse kommandoer, fordi der er hundredvis af forskellige bevægelseskommandoer, nogle enkle og nogle ret smarte, og at det ville tage ugers øvelse at lære alle disse kommandoer. Nå, du behøver ikke at lære dem alle. I stedet skal du forstå din individuelle redigeringsstil og kun lære de kommandoer, der hjælper med at gøre den mere effektiv [5] .
Bram MoolenaarSom standard starter Vim i normal tilstand, også kaldet kommandotilstand. Tastanslag i denne tilstand opfattes som kommandoer (kopiering, sletning, flytning af tekst osv.).
Blandt de normale kommandoer er der kommandoer med "enkelttegn". Så, for eksempel, $vil et tryk flytte markøren til slutningen af linjen; tryk på tasten 0(nul) - til begyndelsen; D(med store bogstaver) - for at slette (slette ) en del af den aktuelle linje fra den aktuelle markørposition til slutningen; С(med store bogstaver) - for at erstatte ( ændre ) en del af den aktuelle linje fra den aktuelle markørposition til slutningen osv.
Andre kommandoer til deres arbejde vil vente på yderligere fortsættelse af input. For eksempel fer det ansvarligt for hurtigt at bevæge sig i en linje til det næste tegn, der er skrevet efter sig selv. Derfor, efter at du har trykket på fVim, vil du vente på, at dette tegn bliver indtastet for at bruge det som søgetegn.
Efter at have trykket på y( y ank), d, cog andre lignende "kontrol"-taster, vil Vim vente på yderligere input af kommandoer, der specificerer det objekt, som handlingen skal udføres på (henholdsvis kopiere, slette eller erstatte). Så det vil slette det aktuelledaw ord under markøren ( slet et mellemord ) , og alle tegn fra den aktuelle markørposition til slutningen af linjen. d$
Sådanne meget enkle kommandoer bruges ikke kun i "manuel tilstand" (når de om nødvendigt skrives hver gang fra tastaturet), men også når du indstiller komplekse sekvenser af handlinger .
Den normale tilstand er den centrale tilstand , hvorfra overgangen til alle de andre udføres. Du kan skifte fra enhver tilstand til kommandotilstand ved at trykke to gange på tasten Esc(i de fleste tilfælde er et tryk tilstrækkeligt).
Insert mode ( engelsk insert mode ), hvor tekst indtastes.
For at skifte fra kommandotilstand til indsættelsestilstand kan du trykke på i(for at begynde at indsætte tekst ved markøren) eller a(for at begynde at indsætte tekst efter markøren). Der er også en række andre taster og deres kombinationer til at skifte til den direkte tekstredigeringstilstand (for eksempel gennem en af tekstobjekterstatningskommandoerne).
I denne tilstand fungerer Vim ligesom de fleste "almindelige" teksteditorer. Som standard behandles indtastede tegn ikke som kommandoer, men indsættes i eksisterende tekst. Men selv i denne tilstand kan du indstille specielle redigeringshandlinger, der udføres, når der trykkes på bestemte taster eller deres kombinationer. Som et eksempel kan du angive, at når du indtaster en åbningsparentes (, tilføjes den matchende afsluttende parentes straks, og markøren placeres mellem dem.
CtrlTastaturgenveje ( + Rosv.) kan også bruges til at indsætte, slette, ændre og automatisk udfylde tekst .
Når du skriver et forkortelsesord, erstattes dette ord automatisk med en foruddefineret tekst.
Denne tilstand kaldes frem ved at trykke :fra normal tilstand. Kolon efterfølges af en kompleks kommando (for eksempel søg eller erstat), som efter indtastning videregives til udførelse ved at trykke på ↵ Enter. Efter at have udført kommandoen, vender editoren tilbage til normal tilstand. Denne tilstand indeholder også kommandoer til at søge videre i teksten /, søge baglæns i teksten ( ?), og en filterkommando !til at sende data til et eksternt filter.
Den visuelle tilstand var fraværende fra Vi og dukkede først op i Vim. Det minder lidt om kommandoen. Ved at bruge specielle kontrolkommandoer, i kombination med pile og navigationskommandoer, kan du vælge tekstfragmenter tegn for tegn, linje for linje eller som en blok og derefter anvende normaltilstandskommandoer på dem (f.eks. slette den valgte tekst eller erstatte den). Redigering i denne tilstand er nemmere end i normal tilstand, fordi du tydeligt kan se, hvilken tekstblok den påkaldte redigeringskommando vil gælde for.
Vims evne til at skelne mellem tekstobjekter (ord, sætninger, afsnit, linjer, individuelle tegn osv.) giver dig mulighed for at indstille en sekvens af handlinger for at automatisere bestemte operationer.
Ja, efter kommandoen
nmap < F7 > byei << ESC > ea >< / < C - R > 0 >< ESC >at trykke F7på konverterer (i kommandotilstand) ethvert ord under markøren (uanset dets længde og de tegn, det består af) til et xml-tag . For eksempel, hvis det aktuelle ord under markøren er div , så vil det blive konverteret til <div></div> , hvis transform er så til <transform></transform> osv.
Vim er i stand til meget mere komplekse transformationer, du kan også indstille dine egne funktioner til at transformere data og automatisere rutineoperationer.
Alle handlinger, der er mulige i Vim "manuelt" (det vil sige direkte af en person ved tastaturet) kan automatiseres (inklusive skift mellem forskellige tilstande).
Versionshistorik | ||
---|---|---|
datoen | Version | Ændringer |
1988 | 1.0 | Baseret på Stevie for Amiga , med titlen Vi Imitation , aldrig officielt udgivet. |
2. november 1991 | 1,14 [6] | Første offentlige udgivelse for Amigaen |
1992 | 1,22 [6] | Overført til Unix . Nu konkurrerer Vim med vi . Fra det øjeblik blev Vim Vi Improved |
12. august 1994 | 3,0 [6] | Understøttelse af opdelte vinduer |
29. maj 1996 | 4,0 [6] | Grafisk brugerflade |
19. februar 1998 | 5,0 [6] | Syntaksfremhævning , et simpelt scriptsprog (brugerdefinerede funktioner, kommandoer osv.) |
6. april 1998 | 5.1 | Fejlrettelser og andre ændringer. |
27. april 1998 | 5.2 | Understøttelse af lange linjer, indbygget filbrowser, dialoger, pop-up-menuer, valgtilstand, sessionsfiler, brugerdefinerede funktioner, kommandoer, tcl -grænseflade og andre ændringer. |
31. august 1998 | 5.3 | Fejlrettelser og andre ændringer. |
25. juli 1999 | 5.4 | Enkel filkryptering, forskellige forbedringer |
19. september 1999 | 5.5 | Fejlrettelser, forskellige forbedringer |
16. januar 2000 | 5.6 | Nye syntaksfiler, fejlrettelser og andre ændringer |
24. juni 2000 | 5.7 | Samme |
31. maj 2001 | 5.8 | Samme |
26. september 2001 | 6,0 [6] | Folding , plugins, flersprogethed og andre ændringer |
24. marts 2002 | 6.1 | Fejlretning |
1. juni 2003 | 6.2 | GTK2 , arabisk support , kommando: prøv, mindre funktioner, fejlrettelser |
7. juni 2004 | 6.3 | Fejlrettelser, oversættelsesopdateringer, tag-forbedringer |
15. oktober 2005 | 6.4 | Fejlrettelser, Perl , Python og Ruby understøtter opdateringer |
7. maj 2006 | 7,0 | Stavekontrol , automatisk udfyldelse , faner ("faner"), fremhævelse af den aktuelle linje og kolonne, fortryd forgreninger og andre ændringer |
12. maj 2007 | 7.1 | Fejlrettelser, nye eksekverbare filer og syntaksfiler og andre ændringer |
9. august 2008 | 7.2 | Fejlrettelser, nye eksekverbare filer og syntaksfiler, sikkerhedsforbedringer og andre ændringer |
15. august 2010 | 7.3 | Fejlrettelser, nye eksekverbare filer og syntaksfiler, sikkerhedsforbedringer, "evig" fortrydelse, ophør af understøttelse af Mac OS 9 og GTK1 , Lua - understøttelse og andre ændringer |
10. august 2013 | 7.4 | Ny, hurtigere regulært udtryksmotor og andre ændringer |
12. september 2016 | 8,0 | Asynkron I/O, lambda-udtryk , lukninger , understøttelse af GTK+ 3 og Microsoft DirectX og andre ændringer. |
18. maj 2018 | 8.1 | Understøttelse af åbning af en terminal inde i et Vim-vindue [7] . |
14. december 2019 | 8.2 | Popup vinduer |
28. juni 2022 | 9,0 [8] | Vim9 script |
En af fordelene ved Vim-editoren er dens tilgængelighed for mange operativsystemer . Dette gælder især for systemadministratorer, der skal redigere filer på tværs af platforme.
Vim kører på følgende operativsystemer:
Til Android -operativsystemet , som bruger berøringsskærmen som sin primære input-enhed, skrev David Tao en tilpasset version af vim, vim touch, som i øjeblikket distribueres under Apache-licensen [9] [10] [11] [12] . Der er også en variant af DroidVim.
Fra 2001 til 2004 Vim var vinderen af LinuxJournals Readers' Choice Awards for Favorite Text Editor. Han modtog også Linuxworld Editors' Choice Award i 1999 og Slashdot Beanie Award i 2000.
Vim distribueres under en GPL - kompatibel licens kendt som Charityware . En del af midlerne doneret til udviklingen af Vim bruges til at støtte forældreløse børn i Uganda gennem ICCF Holland .
Det samlede antal tilgængelige udvidelser på det officielle websted er mere end 3000 [13] .
Populære Vim-udvidelser inkluderer:
Liste over populære Vim-udvidelser efter deres popularitet på GitHub: http://vimawesome.com
På grund af fleksibiliteten i de muligheder, der gives gennem udvidelser, kan Vim også bruges som en personlig wiki .
Teksteditorer ( liste ) | |
---|---|
Unix / Linux | |
DOS | |
Windows | |
Cross-platform | |
SDK | |
Funktioner |