Slik setter du Vim i en tekstbehandler
Denne artikkelen er en del av VIM brukerhåndbok-serien:
- Begynnerveiledningen for å begynne å bruke Vim
- Vim Tastatur Genveier Cheatsheet
- 5 Vim tips og triks for erfarne brukere
- 3 Nyttige VIM Editor Tips og triks for avanserte brukere
- Slik setter du Vim i en tekstbehandler
Tro det eller ei, jeg bruker Vim som min daglige tekstbehandler. Jeg liker sitt enkle layout og dets modale design som favoriserer tastaturkommandoer over museklikk.
Selv om du sikkert kjenner Vim som en tekstredigeringsprogram som er mer egnet for koding enn for prosa, med noen få tweaks, kan du også skrive dokumenter som du er i Word eller LibreOffice mens du bor innenfor de behagelige begrensningene til en terminal.
Starter
Hvis du ikke allerede har kjent deg med grunnleggende om Vim, sjekk ut denne artikkelen, som er den første i en serie på fire. Sørg for at du lærer å åpne en tekstfil, skriv inn og avslutt programmet, og flytt rundt skjermen med tastaturet før du hopper videre inn i dette stykket.
Installasjon
Din Linux-distro kommer sannsynligvis med Vim i pakkelageret, slik at du enkelt kan installere den med programvareansvarlig eller pakkebehandling. Når du redigerer Vims konfigurasjonsfil senere, kan du gjøre det som en vanlig bruker.
Arch Linux:
sudo pacman -S vim
Fedora:
sudo dnf installere vim
Ubuntu:
sudo apt installer vim
Alle andre kan ta Vim fra Github-depotet sitt:
git klone https://github.com/vim/vim.git cd ./vim/src/ gjør sudo gjør installasjon
Vim-konfigurasjonsfilen
En installasjon av Vim kan opprette en .vimrc-fil i din hjemmekatalog. Hvis det ikke gjør det, opprett en:
trykk ~ / .vimrc
Du kan åpne den med Vim selv:
cd vim. vimrc
Vår ordbehandler
Nå ser du sannsynligvis på en tom fil. La oss endre det.
Vi kan lage en funksjon kalt "WordProcessor" som du kan ringe til når som helst. Det vil se slik ut:
func! Ordbehandler () "fullfør + = s gjør autofullføring søk ordbokssettet komplett + = s endfu com! WP ringe WordProcessor ()
Nå som du ser funksjonen som helhet, kan vi bryte ned delene. Følg med ved å se på delene av vår funksjon kommentert med et enkelt anførselstegn, de enkelte linjene i grått.
1. Bevegelsesendringer med map j gj
og map k gk
Det du ser her er en endring i hvordan markørbevegelsen fungerer inne i Vim. Hvis du leser de tidligere Vim-artiklene som er nevnt i begynnelsen av denne artikkelen, vil du vite at j beveger markøren din ned og k beveger markøren opp. Tilsvarende flyttes gj og gk deg ned og opp, men de flytter markøren etter linje på skjermen i stedet for etter linje i filen.
Vår kartlegging av j / k til gj / gk gir markøren muligheten til å bevege seg opp og ned gjennom innpakket linjer på skjermen. Dette hjelper når du skriver lange avsnitt og må flytte markøren din lett til midten av de avsnittene.
2. Formater tekst med "setlocal" kommandoer
Se først setlocal formatoptions=1
. "Formatopties" lar deg velge fra en rekke tekstformateringsmoduser. I tilfelle alternativet "1" vil Vim avstå fra å bryte linjer etter et ord med ett bokstav. Det vil prøve, når det er mulig, å bryte linjer før ordene med ett bokstav i stedet.
Deretter kan du bruke setlocal noexpandtab
holde Vim fra å endre faner til mellomrom. Eksempelvis vil "expandtab" -innstillingen fortelle Vim å endre pressen din på Tab-tasten i en rekke mellomrom som passer til samme lengde. "Noexpandtab" gjør det motsatte; Den beholder tabulatortrykket som et enkelt tegn.
setlocal wrap
forteller Vim å pakke inn teksten når den når slutten av skjermen. Dette er oppførselen du forventer fra en tekstbehandler.
Til slutt, setlocal linebreak
får Vim til å bryte linjene dine på fornuftige steder. Det holder linjene fra å bli pakket inn ved siste tegn som passer på skjermen. Dette er grunnen til at du delvis ser at tekstlinjer når ulike punkter på skjermen før de vikles til begynnelsen. Sjekk ut hvordan det ser ut med en uferdig kopi av denne artikkelen i skjermbildet nedenfor
3. Stavekontroll og en offline tesaurus
Vim kommer med en innebygd stavekontrollfunksjon. Du kan gjøre "WordProcessor" -funksjonen din bruke denne egenskapen ved å bruke kommandoen setlocal spell spelllang=en_us
. Du kan definere flere språk her i en kommaseparert liste.
Finn flere språkfiler på denne Vim FTP-siden. Plasser dine valgte filer (både .spl og .sug filer for hvert språk) i "$ HOME / .vim / spell /." Endre funksjonens linje for å set spelllang=en_us, nl, medical
for eksempel for å sjekke engelsk, Nederlandsk og medisinske ord.
Feilstavede ord vil dukke opp som understreket og fet i teksten.
Du kan søke etter utskiftninger ved å skrive inn :z=
i normal modus. (Bruk Escape-tasten for å komme til normal modus.) Denne kommandoen vil produsere en skjerm som følgende bilde.
Du kan bruke Vims tesaurus-funksjon ved å fortelle den din valgte tesaurus-katalogen med set thesaurus+=/home//.vim/thesaurus/mthesaur.txt
eller lignende. Du kan finne filen "mthesaur.txt" på Project Gutenberg. Plasser den nedlastede tekstfilen i katalogen du definerer med den kommandoen.
Søk etter ord som ligner det fremhevede ordet ved å skrive inn Sett innstilling (trykk på i når i Normal modus), og skriv Ctrl + x og deretter Ctrl + t. Det vil vise deg en liste som følgende bilde som du kan bla gjennom for å finne et nytt ord.
Noen ganger er forslagene ikke det beste.
4. Autofullfør ord med "komplett" alternativet
Se på set complete+=s
for vår endelige vurdering. Dette alternativet forteller Vim å søke i synonymordboken for et ord du vil autofullfør.
Vanligvis kan du autofullfør ord ved å ha Vim se på tidligere ord du har skrevet, for eksempel "feilspill" og "feil" i følgende skjermbilde. Du skriver bare inn Sett innstilling og skriver Ctrl + n eller Ctrl + p for å lete etter et ord som for eksempel samsvarer med halvstavet "mis".
Se hvordan de to første valgene ikke er fra samspillet? Disse to linjene er de eneste alternativene du vil se her hvis funksjonen vår ikke hadde brukt "komplett + = s." Du kan utelate eller kommentere den linjen for raskere autofullføringer.
Starte tekstbehandleren
Den endelige linjen i .vimrc som gjør WordProcessor-funksjonen arbeid er com! WP call WordProcessor()
com! WP call WordProcessor()
. Det lar deg skrive :WP
i Normal modus for å sette Vims ordbehandlingsevner.
Du kan redigere "WP" i denne linjen for å lese alt du liker - bare sørg for at teksten er tilstøtende. Uansett hvilken tekst du velger, endrer du kommandoen til :
Konklusjon
Funksjonen jeg har diskutert her varer bare for en enkelt Vim-økt. Derfor, når du lukker og gjenoppretter Vim, vil standardinnstillingene ta tak i igjen. Dette skjer selv om du åpner den samme filen en gang til.
Du kan sette disse alternativene utenfor funksjonen for å få dem til å fungere hele tiden, men de kan ikke gjøre rettferdighet til mange programmeringsoppgaver Vim ble laget for å håndtere. Det er ikke vanskelig å skrive et par tegn uansett. Bare nyt de nye innstillingene dine og det faktum at du har slått terminalen din inn i en kraftig avsnittredigerer.