Det er ikke en ideell ting, skjønt. Tekstredaktører er ment å redigere filer som om de er en tekstfil. Derfor da jeg ba “Nano” om å åpne JPG -filen, åpnet den den “som om” det er en tekstfil. En lignende ting vil skje hvis du prøver å åpne andre filer, for eksempel lyd, video, til og med binære filer.
Nå er det to typer tekstredaktører tilgjengelig på Linux -plattformen: GUI og konsoll.
GUI -tekstredaktører er de mest populære blant generelle brukere. Noen av de populære inkluderer Gedit, GNU Emacs, Atom, Brackets, Sublime Text, Visual Studio Code og andre.
Når vi snakker om konsolltekstredaktørene, dukker den virkelige utfordringen frem. Å bruke konsolltekstredaktører er ikke bare grovt, men utfordrende. Selvfølgelig, hvis du har klikket på denne guiden, er du allerede kjent med dem. Populære konsolltekstredaktører inkluderer Nano og Vim.
Som tittelen på artikkelen antyder, er denne guiden på VIM - en av de tøffeste konsolltekstredaktørene. VIM er faktisk "VI" -tekstredigereren med tilleggsfunksjoner og finjusteringer. Målet mitt er å tilby en grunnleggende og detaljert introduksjons- og brukseksempler på VIM.
VIM Guide
For denne guiden vil jeg bruke C ++ -kodeeksempler. Sjekk ut C ++ -kodene av Sinairv på GitHub.
Installere Vim
I de fleste av Linux-distrosene kommer Vim forhåndsinstallert med Nano og/eller Emacs. Det spiller ingen rolle hva Linux -distro du bruker, Vim vil alltid være tilgjengelig på den offisielle repoen som vi kreves av POSIX.
Debian/Ubuntu: sudo apt-get update && sudo apt install vimLansering av Vim
Når installasjonen er fullført, sjekk eksistensen av VIM.
Vim Vim -VersjonHvis du er interessert i å bruke VIM for å redigere en tekstfil, bruk følgende struktur.
vimSlutt vim
Dette er det aller første jeg måtte lære mens jeg brukte VIM. Det er mange ganger når jeg skrudd opp. Å lære å slutte vim reddet meg utallige ganger.
Type “: Q” og Hit Enter (uten sitater).
Merk: Vim vil ikke slippe deg ut uten denne metoden. “Ctrl + C” fungerer ikke.
Navigere i filen
Vim tilbyr et virkelig komplisert sett med måter du kan bruke til å navigere i tekstfilen.
La oss komme tilbake til tekstfilen. Denne gangen er vi på Readme.MD -fil.
Den enkleste måten å navigere gjennom filen er ved å bruke piltastene.
VIM tillater å bruke andre nøkler for å navigere i filen som piltastene.
H - Én karakter til venstre
L - Én karakter til høyre
K - Gå opp
J - Gå ned
W - ett ord til høyre
B - Ett ord til venstre
0 (null) - begynnelsen av gjeldende linje
$ - Slutt på gjeldende linje
Merk: Vær forsiktig med saken om nøklene.
Redigere filen
Dette er den viktige delen. Vi åpner tekstfilene i redigeringsprogrammet for å utføre noen redigeringer, riktig?
Naviger til ønsket sted på teksten og treff "jeg". Dette vil fortelle Vim om å angi “Sett inn modus”.
Når du har gjort dine nødvendige redigeringer, kan du avslutte "Sett inn" -modus ved å trykke på "Ctrl + C" eller ESC. Min personlige preferanse er å bruke ESC -tasten.
Lagre filen
Før du lagrer filen, er det nødvendig å forstå hvordan Vim håndterer arbeidet.
Når du har åpnet en tekstfil med Vim, får du faktisk tilgang til en midlertidig kopi av den originale filen. Hvis du er fornøyd med endringene dine og bestemmer deg for å lagre, vil vi først skrive den redigerte filen over den opprinnelige filen.
Det er fordeler med denne tilnærmingen. Det forhindrer den opprinnelige filen fra uønsket korrupsjon. VIM lar flere brukere redigere den samme filen samtidig, så bruk av en midlertidig fil hjelper til med å unngå konflikter. VIM lagrer temp -filen slik at du kan gjenopprette arbeidet ditt hvis det tilfeldigvis er noen avbrudd.
For å skrive bufferen til filen, skriv inn “: w”.
Det er også mulig å kombinere skrivekommandoen med slutt.
: WQDette vil skrive bufferen til filen og avslutte redigeringsprogrammet.
En annen interessant funksjon Vim tilbyr er å skrive den nåværende bufferen på slutten av en annen fil. Kort sagt, du kan legge til gjeldende redigering til en annen fil.
: w >>Denne kommandoen kan også kobles sammen med Quit -kommandoen.
: wq >>Noen ganger vil du kanskje bare kaste den nåværende bufferen og starte fra bunnen av. Jeg skrudd opp sudoers flere ganger, spesielt med vim. Denne metoden sparte meg bare mye hodepine. Be Vim om å avslutte uten å skrive bufferen til filen.
: q!Søker
Som et legendarisk programvare ville det være synd hvis det ikke ville være noen søkefunksjoner! Ved hjelp av Vim er det lett å finne ut hvor målfrasen din er. Dette er strukturen som Vim krever for å utføre søkefunksjonen.
?Legg merke til at det ikke er noe gap mellom spørsmålstegnet og søkestrengen. Etter å ha skrevet søkeordet, treff Enter.
Nå, når du kjører dette, sitter du fast med det eneste søkeresultatet. Er det akseptabelt? Nei! Be Vim navigere til forrige/neste søkekamper!
N - Finn neste kampSette inn data fra en ytre kilde
Det er en annen interessant teknikk som kan komme nyttig i mange scenarier. Du kan direkte ta utgangen fra en bestemt kommando og sette inn rett sted for en fil.
: r!La oss for eksempel sette inn utgangen fra en Pacman -kommando. Lær hvordan du bruker Pacman på Arch Linux og andre erkebaserte distros.
: r! Echo $ (Pacman -qqe Python | grep python)Denne kommandostrukturen gir en hel haug med mulig bruk. Hva med å sette inn innholdet i en annen fil?
: r! kattHvis du trenger spesifikt å få innholdet i en viss tekst, trenger du ikke å ringe “Cat” -kommandoen. Vim tilbyr allerede en enklere måte å gjøre det på.
: rVIM -tilpasninger
Vim er ekstremt tilpassbar. Det er mange måter å improvisere funksjonaliteten til denne tekstredigereren. VIM tillater rikelig med tilpasning gjennom VIMRC -filen.
Det er et par forskjellige steder for VIMRC - Global og Local. Den globale ligger på “/etc/vim/vimrc” eller “/etc/vimrc”.
For den lokale VIMRC -filen vil den være lokalisert på “~/.vimrc ”-fil.
Før du redigerer VIMRC, er det nødvendig å forstå omfanget av begge. Den globale VIMRC (som ligger ved “/etc/vimrc” eller “/etc/vim/vimrc”) påvirker alle VIM -øktene på tvers av alle brukerkontoer. I tilfelle av lokal VIMRC (lokalisert ved “~/.vimrc), det trer bare i kraft i den respektive brukerens økt.
Her er en kort liste over nyttige VIMRC -innstillinger.
“Linjenummer til venstreHvis du tilfeldigvis redigerer VIMRC -filen mens VIM kjører, vil endringene ikke trer i kraft umiddelbart. Be Vim om å laste inn konfigurasjonen på nytt fra vimrc.
: så %Erstatte innhold
VIM er ikke begrenset til grunnleggende søkefunksjoner. VIM tillater SED-lignende kommando for å utføre erstatningsoperasjonen.
Kommandoenes syntaks går noe slikt:
:%s ///Fra erstatningsatferden er disse to ganske vanlige.
G - Utfør erstatningen ved hver forekomst av søkestrengen.
GC - Samme som “G”, men vil be om bekreftelse før du gjør endringen.
La oss sjekke bruken med et eksempel. Jeg har listen over alle pakkene fra "base-devel" -gruppen i en tekstfil.
La oss nå erstatte all "kjernen" med "coremodified" -strengen.
:%s/core/coremodified/gForekomst
Akkurat som det forrige eksemplet, er det også mulig å bare fremheve og telle forekomsten av søkestrengen i stedet for å erstatte den. Dette er bedre enn den klassiske søkefunksjonen.
Syntaksen for operasjonen ville være
:%S/VIM -plugins
Til tross for at han er en konsoll -tekstredigerer, tilbyr Vim å utvide funksjonaliteten via plugins. Faktisk er antallet plugins som er tilgjengelige for VIM enormt! VIM -samfunnet er definitivt et sted med sinnssyke genier!
Du kan konfigurere hvilken som helst katalog for å være vert for plugins. Det anbefales imidlertid å bruke følgende.
~/.vimUlike VIM -plugins krever forskjellige prosedyrer. For enklere bruk er det også en håndfull Vim -plugin -ledere! For eksempel vundle, vimplug, patogen osv. Hvis du er interessert i å ta en ny vim -plugin, anbefaler jeg Vimawesome. Det er en stor samling av alle de populære og interessante Vim -plugins.
Mastering Vim krever litt arbeid. Dette er bare det grunnleggende. Jeg håper at dette innlegget var nyttig for å bli kjent med Vim og noen av det grunnleggende. Utforsk gjerne VIMs verden.
Øv deg på VIM -ferdighetene dine på en demo -fil. På denne måten, selv om du roter opp filen, er det ikke så stort. Hvis du tilfeldigvis ødelegger konfigurasjonen av VIM, er ingenting å få panikk heller. Standard VIM -konfigurasjonsfiler er tilgjengelige online.