Introduktion
Vim er en teksteditor og forbedret version af Vi-editor. Den er designet til at blive brugt som CLI (Command Line Interface) og GUI (Graphical User Interface) applikation.
Den er designet og udviklet af Bram Moolenaar og udgivet første gang i november 1991. VIM er en open source og gratis skærmbaseret teksteditor. Udvidelsen på tværs af platforme har gjort den til stede for adskillige andre systemer siden den blev udgivet for Amiga. Det blev kåret som den mest berømte redaktør af læsere af Linux Journal i 2018; udviklerundersøgelsen, dvs. Stack Overflow, viste, at det var den 3. mest berømte teksteditor i 2015 og det 5. mest berømte udviklingsmiljø i 2019.
I denne vejledning installerer vi VIM-editor på Ubuntu-operativsystemet. For at installere skal du sørge for, at vi har opdateret version af Ubuntu og fungerende terminal.
Forudsætninger
- Ubuntu
- Terminal
Kort historie om VIM
Forløberen for VIM, Stevie, blev lavet af Tim Thompson i 1987 til Atari ST og yderligere forbedret af G.R. Walter og Tony Andrews. Bram Moolenaar begyndte at operere på VIM og baserede sin implementering på Stevie til Amiga-systemet i 1988 sammen med den første offentlige udgivelse i 1991.
Titlen 'HVORFOR' var en forkortelse for 'Vi Imitation' under den første udgivelse, men den blev ændret til 'Vi IMproved' i 1993.
Licens af VIM
VIM udgives på Vim-licensen. Den indeholder et par velgørenhedsklausuler, der inspirerer brugere, der kan lide applikationen, til at overveje at bidrage til børn. Vim-licensen passer sammen med GNU General Public License med en unik klausul, der tillader distribution af ændrede kopier på GNU GPL 2.0 eller nyere versioner.
Grænseflade af VIM
VIM's grænseflade er ikke baseret på ikonerne eller menuerne, men på de kommandoer, der findes i tekstbrugergrænsefladen som VI; gVim, dets GUI-tilstand, inkluderer værktøjslinjer og menuer til almindeligt brugte kommandoer; den komplette funktionalitet er dog stadig repræsenteret af dens kommandolinjetilstand. Vi plejer at tillade en maskinskriver at placere fingrene på hjemmerækken, hvilket kunne være en fordel for en maskinskriver.
VIM-editoren indeholder en indbygget tutorial for nybegyndere kendt som vimtutor, som grundlæggende er installeret med Vim. Det er dog en anden eksekverbar og kunne udføres ved hjælp af en shell-kommando. Brugermanualen til Vim beskriver funktionerne i Vim og kan findes online eller udføres inde fra Vim.
hukommelsesudskiftning
Vim indeholder også en indbygget hjælpefunktion, som giver brugerne mulighed for at spørge og navigere med funktioner og kommandoer.
Registre
Vim giver flere unikke hukommelsesindgange kendt som registre (du må ikke forveksle dem med processor- eller hardwareregistre). Når du kopierer, indsætter, sletter eller klipper tekst, kan brugeren vælge at gemme den manipulerede tekst i et register. Seksogtredive registre til generelle formål er tilgængelige, der er relateret til tal og bogstaver og en række unikke, der enten indeholder unikke værdier (sidste kommando, nuværende filnavn osv.) eller tjener et unikt formål.
Tilstande
Vim understøtter to eller flere redigeringstilstande som vi. Typetegn angives enten som kommandosekvenser eller indtastes som tekst, afhængigt af tilstanden. 12 redigeringstilstande, seks varianter og seks almindelige tilstande er tilgængelige i Vim:
Tilpasning af VIM
Vim er meget udvidelsesmuligheder og kan tilpasses, hvilket gør det til et interessant værktøj for kunder, der kræver en større mængde fleksibilitet og kontrol over tekstredigeringsplatformen. Tekstinput leveres af en række funktioner, der er udviklet til at forbedre tastatureffektiviteten. Kunder kan køre hårde kommandoer vha 'nøglekortlægning' , som kunne udvides og tilpasses. Det 'indspilning' aspekt tillader etablering af makroer for at aktivere tastetryksekvenser og kalde brugerdefinerede eller interne tilknytninger og funktioner.
Forkortelser, det samme som nøgletilknytninger eller makroer, giver udvidelsen af korte tekststrenge til længere og kan også bruges til at rette fejl. Vim letter også en 'nem' tilstand for kunder, der leder efter en lettere løsning til tekstredigering.
npm cache ryddes
Adskillige plugins er tilgængelige, der forbedrer og inkluderer ny funktionalitet i Vim. Normalt er disse plugins skrevet i det interne scriptsprog Vim, vimscript (også kaldet VimL), men kan også specificeres på andre sprog.
Mange projekter grupperede komplekse tilpasninger og scripts og fokuserede på at gøre Vim til en ressource til en bestemt opgave eller inkludere en større smag til dens natur. Nogle eksempler er VimOutliner, som letter en komfortabel outliner for Unix-lignende systembrugere, og Cream, som gør det muligt for Vim at fungere som en klik-og-skriv-editor.
Forbedringer og funktioner i Vim
Vim inkluderer en kompatibilitetstilstand med vi, men når denne tilstand ikke bruges, indeholder Vim flere forbedringer i forhold til vi. Men Vim er ikke helt egnet med vi som specificeret i POSIX og Single Unix-specifikationen ens i kompatibilitetstilstand. Udviklerne af Vim sagde, at det er meget velegnet med Vi.
- Nogle få forbedringer af Vim indeholder færdiggørelsesfunktioner, fletning og sammenligning af filen (kaldet vimdiff), forbedrede regulære udtryk, et omfattende udviklet hjælpesystem, scriptsprog inklusive plugin-understøttelse, en grafisk brugergrænseflade (kendt som gvim), museinteraktion (uden og med GUI), begrænsede udviklingsmiljølignende aspekter, foldning, stavekontrol, redigering af arkiverede og komprimerede filer i tar-, zip-, bzip2- og gzip-filer og -formater over netværksprotokoller som HTTP, FTP og SSH, tabbed og split vinduer, bevaring af sessionstilstand, understøttelse af Unicode og multi-sprog, markør- og søgepositionshistorik, syntaksfremhævning, transsessionskommando, visuel tilstand, forgrening og historik for fortryd/fortryd på flere niveauer, som kan fortsætte med redigeringssessioner.
- Vim gemmer ændringerne af brugeren i en swap-fil ved hjælp af '.swp'-udvidelsen, mens den kører.
- Denne fil kunne bruges til at gendanne efter en fejl. Vim vil advare brugerne, hvis de forsøger at åbne en fil og bytte den med allerede eksisterende, og Vim vil bruge en swap-fil ved hjælp af '.swo'-udvidelsen, hvis brugeren fortsætter.
- Funktionaliteten kan deaktiveres.
Vim script
Det er også kendt som VimL eller Vimscript. Vim script er et scriptsprog integreret i Vim. Tidlige Vim-versioner tilføjede kommandoer til funktionsdefinitioner og kontrolflow, som er det tidligere-baserede editorsprog i den faktiske vi-editor. Siden 7-versionen understøtter Vim script mere udviklede datatyper, herunder ordbøger og lister, og en lettere måde at objektorienteret programmering på. Mange indbyggede funktioner, inklusive filter() og map(), tillader en fælles funktionel programmeringsform, og Vim-scriptet har indeholdt lambda siden 8.0-versionen. For det meste er Vim-scriptet specificeret i form af tvingende programmering.
Vim-makroer kan inkludere en kommandosekvens i normal tilstand, men kan også anmode om ex-funktioner eller kommandoer, der er angivet i Vim-scriptet til sværere opgaver. De fleste udvidelser (kendt som plugins eller scripts) af Vim-funktionaliteten er specificeret i Vim-scriptet, selvom plugins også kan bruge andre sprog, såsom Racket, Tcl, Ruby, Lua, Python eller Perl. Disse plugins kan installeres manuelt, eller de kan installeres af en plugin-manager, såsom Vim-Plug, Pathogen eller Vundle.
Filerne i Vim-scriptet gemmes som almindelig tekst, det samme som anden kode, og .vim er normalt filnavnets filtypenavn. En vigtig undtagelse fra den er konfigurationsfilen til Vim, dvs. .vimrc.
Tilgængeligheden af Vim
Mens vi-editoren oprindeligt var tilgængelig på Unix OS'er, er Vim blevet sendt til adskillige operativsystemer, såsom Atari MiNT, AmigaOS, DOS, BeOS, Windows initieret fra Windows NT 3.1, MorphOS, OS/390, OS/2, OpenVMS, RISC OS, QNX, BSD, Classic Mac OS og Linux. Vim er også porteret med Apple macOS. Vim-uafhængige porte er tilgængelige til iOS og Android.
Vim gaffel
Neovim er en Vim-gaffel, der har til formål at udvikle Vim's vedligeholdelses- og udvidelsesmuligheder. Adskillige funktioner i denne gaffel er tilgængelige, inklusive understøttelse af indbygget sprogserverprotokol, asynkron I/O-understøttelse og Lua-scripting-understøttelse med luaJIT-sprogfortolkeren. Det er et open source softwareprojekt, og dets kildekode er til stede på GitHub.
Efter at en Vim-patch, der hjalp med multi-threading, blev afvist, begyndte Neovim-projektet i 2014. I marts 2014 havde det godt fundraising og støttede i det mindste en enkelt fuldtidsudvikler. Mange frontends understøtter udvikling, der bruger Neovims muligheder.
Neovim opnåede indbygget sprogserverprotokolunderstøttelse og komplet understøttelse af Lua, såsom muligheden for at skrive den primære konfigurationsfil på Lua-sproget i stedet for VimL med 0.5-versionen af Neovim den 2. juli 2021.
boolesk til streng java
VIM installation
Installation af VIM-editor er ret nemt, det kræver blot en enkelt kommando at installere. Følgende kommando bruges til at installere VIM-editor.
$ sudo apt-get install vim
Type 'OG' og tryk gå ind , starter installationen af de nødvendige pakker og applikationer.
Derefter kan vi køre vim enten fra terminalen eller applikationsadministratoren.
Vi kan finde det i systemet ved at skrive VIM, som vi gjorde nedenfor.
Klik på ikonet, og det åbner en terminal til VIM-editor. Det ligner noget som nedenstående.
Nå, vi har med succes installeret VIM-editor på vores system. Nu kan vi bruge det til at kode i et hvilket som helst programmeringssprog.