Introduksjon
Vim er en tekstredigerer og forbedret versjon av Vi-editor. Den er designet for bruk som CLI (Command Line Interface) og GUI (Graphical User Interface)-applikasjon.
Den er designet og utviklet av Bram Moolenaar og først utgitt i november 1991. VIM er en åpen kildekode og gratis, skjermbasert tekstredigerer. Utvidelsen på tvers av plattformer har gjort den til stede for flere andre systemer siden den ble publisert for Amiga. Den ble kåret til den mest kjente redaktøren av leserne av Linux Journal i 2018; utviklerundersøkelsen, dvs. Stack Overflow, fant at det var den tredje mest kjente tekstredigereren i 2015 og det femte mest kjente utviklingsmiljøet i 2019.
I denne opplæringen vil vi installere VIM-editor på Ubuntu-operativsystemet. For å installere, sørg for at vi har oppdatert versjon av Ubuntu og fungerende terminal.
Forutsetninger
- Ubuntu
- Terminal
Kort historie om VIM
Forløperen til VIM, Stevie, ble laget av Tim Thompson i 1987 for Atari ST og ytterligere forbedret av G.R. Walter og Tony Andrews. Bram Moolenaar begynte å operere på VIM, og baserte sin implementering på Stevie for Amiga-systemet i 1988, sammen med den første offentlige utgivelsen i 1991.
Tittelen 'HVORFOR' var en forkortelse for 'Vi Imitation' under den første utgivelsen, men den ble endret til 'Vi forbedret' i 1993.
Lisens for VIM
VIM er publisert på Vim-lisensen. Den inneholder noen få veldedighetsklausuler som inspirerer brukere som liker applikasjonen til å vurdere å bidra til barn. Vim-lisensen passer med GNU General Public License med en unik klausul som tillater distribusjon av endrede kopier på GNU GPL 2.0 eller senere versjoner.
Grensesnitt for VIM
Grensesnittet til VIM er ikke basert på ikonene eller menyene, men på kommandoene i tekstbrukergrensesnittet som VI; gVim, dens GUI-modus, inkluderer verktøylinjer og menyer for vanlig brukte kommandoer; Den fullstendige funksjonaliteten er imidlertid fortsatt representert av kommandolinjemodusen. Vi har en tendens til å tillate en maskinskriver å plassere fingrene på hjemmeraden, noe som kan være en fordel for en maskinskriver.
VIM-editoren inneholder en innebygd opplæring for nykommere kjent som vimtutor, som i utgangspunktet er installert med Vim. Det er imidlertid en annen kjørbar fil og kan kjøres ved hjelp av en shell-kommando. Brukerhåndboken til Vim beskriver funksjonene til Vim og kan finnes online eller utføres fra innsiden av Vim.
hvordan konvertere streng til heltall
Vim inkluderer også en innebygd hjelpefunksjon, som lar brukere spørre og navigere med funksjoner og kommandoer.
Registrerer
Vim gir flere unike minneoppføringer kjent som registre (ikke forveksle dem med prosessor- eller maskinvareregistre). Når du kopierer, limer inn, sletter eller klipper ut tekst, kan brukeren velge å lagre den manipulerte teksten i et register. Trettiseks generelle registre er tilgjengelige som er relatert til tall og bokstaver og en rekke unike som enten inkluderer unike verdier (siste kommando, nåværende filnavn, etc.) eller tjener et unikt mål.
Modi
Vim støtter to eller flere redigeringsmoduser som vi. Typetegn spesifiseres enten som kommandosekvenser eller legges inn som tekst, avhengig av modusen. 12 redigeringsmoduser, seks varianter og seks vanlige moduser er tilgjengelige i Vim:
Tilpasning av VIM
Vim er svært utvidbar og tilpassbar, noe som gjør det til et interessant verktøy for kunder som krever større grad av fleksibilitet og kontroll over tekstredigeringsplattformen. Tekstinndata leveres av en rekke funksjoner utviklet for å forbedre tastatureffektiviteten. Kunder kan kjøre harde kommandoer ved hjelp av 'nøkkelmapping' , som kan utvides og tilpasses. De 'innspilling' aspekt tillater etablering av makroer for å aktivere tastetrykksekvenser og kalle brukerdefinerte eller interne tilordninger og funksjoner.
Forkortelser, det samme som nøkkeltilordninger eller makroer, gir utvidelse av korte tekststrenger til lengre og kan også brukes til å rette feil. Vim legger også til rette for en 'enkel' modus for kunder som leter etter en enklere løsning for tekstredigering.
markering gjennomstreking
Flere plugins er tilgjengelige som forbedrer og inkluderer ny funksjonalitet i Vim. Vanligvis er disse pluginene skrevet i det interne skriptspråket Vim, vimscript (også kalt VimL), men kan også spesifiseres på andre språk.
Mange prosjekter grupperte sammen komplekse tilpasninger og skript og fokuserte på å gjøre Vim til en ressurs for en bestemt oppgave eller inkludere en større smak til dens natur. Noen eksempler er VimOutliner, som legger til rette for en komfortabel disposisjon for Unix-lignende systembrukere, og Cream, som gjør at Vim kan fungere som en klikk-og-skriv-editor.
Forbedringer og funksjoner i Vim
Vim inkluderer en kompatibilitetsmodus med vi, men når denne modusen ikke brukes, inneholder Vim flere forbedringer i forhold til vi. Men Vim er ikke helt egnet med vi som spesifisert i POSIX og Single Unix-spesifikasjonen like i kompatibilitetsmodus. Utviklerne av Vim sa at det er veldig egnet med Vi.
- Noen få forbedringer av Vim inneholder fullføringsfunksjoner, sammenslåing og sammenligning av filen (kalt vimdiff), forbedrede regulære uttrykk, et omfattende utviklet hjelpesystem, skriptspråk inkludert plugin-støtte, et grafisk brukergrensesnitt (kjent som gvim), museinteraksjon (uten og med GUI), begrensede utviklingsmiljølignende aspekter, folding, stavekontroll, redigering av arkiverte og komprimerte filer i tar-, zip-, bzip2- og gzip-filer og -formater over nettverksprotokoller, som HTTP, FTP og SSH, tabbed og split vinduer, bevaring av økttilstand, støtte for Unicode og flerspråklig, markør- og søkeposisjonshistorikk, syntaksutheving, trans-sesjonskommando, visuell modus, forgrening og gjenta/angre på flere nivåer som kan fortsette rundt redigeringsøkter.
- Vim lagrer endringene til brukeren i en byttefil ved å bruke utvidelsen '.swp' mens den kjører.
- Denne filen kan brukes til å gjenopprette etter en feil. Vim vil varsle brukerne hvis de prøver å åpne en fil og bytte den med allerede eksisterende, og Vim vil bruke en byttefil ved å bruke '.swo'-utvidelsen hvis brukeren fortsetter.
- Funksjonen kan deaktiveres.
Vim-skript
Det er også kjent som VimL eller Vimscript. Vim script er et skriptspråk integrert i Vim. Tidlige Vim-versjoner la til kommandoer for funksjonsdefinisjoner og kontrollflyt, som er det tidligere redaktørspråket til den faktiske vi-editoren. Siden 7-versjonen støtter Vim-skriptet mer utviklede datatyper, inkludert ordbøker og lister, og en enklere modus for objektorientert programmering. Mange innebygde funksjoner, inkludert filter() og map(), tillater en vanlig funksjonell programmeringsform, og Vim-skriptet har inneholdt lambda siden 8.0-versjonen. For det meste er Vim-skriptet spesifisert i form av imperativ programmering.
Vim-makroer kan inkludere en kommandosekvens i normal modus, men kan også be om eks-funksjoner eller kommandoer spesifisert i Vim-skriptet for vanskeligere oppgaver. De fleste utvidelser (kjent som plugins eller skript) av Vim-funksjonaliteten er spesifisert i Vim-skriptet, selv om plugins også kan bruke andre språk, som Racket, Tcl, Ruby, Lua, Python eller Perl. Disse pluginene kan installeres manuelt, eller de kan installeres av en plugin-behandler, som Vim-Plug, Pathogen eller Vundle.
Filene til Vim-skriptet lagres som ren tekst, på samme måte som annen kode, og .vim er vanligvis utvidelsen av filnavnet. Et viktig unntak fra det er konfigurasjonsfilen til Vim, dvs. .vimrc.
Tilgjengelighet av Vim
Mens vi-editoren opprinnelig var tilgjengelig på Unix-operativsystemer, har Vim blitt sendt til flere operativsystemer, som Atari MiNT, AmigaOS, DOS, BeOS, Windows som starter fra Windows NT 3.1, MorphOS, OS/390, OS/2, OpenVMS, RISC OS, QNX, BSD, Classic Mac OS og Linux. Vim er også portert med Apple macOS. Vim-uavhengige porter er tilgjengelige for iOS og Android.
Vim gaffel
Neovim er en Vim-gaffel som har som mål å utvikle vedlikeholds- og utvidbarheten til Vim. Flere funksjoner i denne gaffelen er tilgjengelige, inkludert støtte for innebygd Language Server Protocol, asynkron I/O-støtte og Lua-skriptstøtte med luaJIT-språktolken. Det er et programvareprosjekt med åpen kildekode, og kildekoden er til stede på GitHub.
Etter at en Vim-patch som hjalp multi-threading ble avvist, startet Neovim-prosjektet i 2014. I mars 2014 hadde det godt med pengeinnsamling, og støttet i det minste en enkelt heltidsutvikler. Mange frontends støtter utvikling som bruker egenskapene til Neovim.
Neovim oppnådde innebygd Language Server Protocol-støtte og fullstendig støtte for Lua, for eksempel muligheten til å skrive den primære konfigurasjonsfilen på Lua-språket i stedet for VimL med 0.5-versjonen av Neovim 2. juli 2021.
tiger løve forskjell
VIM installasjon
Å installere VIM-editor er ganske enkelt, det krever bare en enkelt kommando for å installere. Følgende kommando brukes til å installere VIM-editor.
$ sudo apt-get install vim
Type 'OG' og trykk Tast inn , vil den starte installasjonen av nødvendige pakker og applikasjoner.
Etter det kan vi kjøre vim enten fra terminalen eller applikasjonsbehandleren.
Vi kan finne det i systemet ved å skrive VIM, som vi gjorde nedenfor.
Klikk på ikonet og det vil åpne en terminal for VIM-redigering. Det ser omtrent slik ut nedenfor.
Vel, vi har installert VIM-editor på systemet vårt. Nå kan vi bruke den til å kode i et hvilket som helst programmeringsspråk.