5 Vim-tips en -trucs voor ervaren gebruikers
Dit artikel maakt deel uit van de VIM User Guide-serie:
- De beginnershandleiding om Vim te gebruiken
- Vim Keyboard Shortcuts Cheatsheet
- 5 Vim-tips en -trucs voor ervaren gebruikers
- 3 Nuttige VIM Editor Tips en Trucs voor gevorderde gebruikers
- Hoe Vim in een tekstverwerker te veranderen
De Vim-editor biedt zoveel functies dat het heel moeilijk is om ze allemaal te leren. Hoewel het steeds beter is om steeds meer tijd aan de opdrachtregeleditor te spenderen, is het niet te ontkennen dat je sneller nieuwe en productieve dingen leert terwijl je samenwerkt met andere Vim-gebruikers. Hier zijn enkele Vim-tips en -tricks voor jou.
Opmerking - Om de voorbeelden hier te maken, heb ik Vim-versie 7.4.52 gebruikt.
1. Werken met meerdere bestanden
Als u een softwareontwikkelaar bent of iemand die Vim als primaire editor gebruikt, is de kans groot dat u tegelijkertijd met meerdere bestanden moet werken. Hierna volgen enkele nuttige tips die u kunt gebruiken tijdens het werken met meerdere bestanden.
In plaats van verschillende bestanden in verschillende shell-tabbladen te openen, kunt u meerdere bestanden op één tabblad openen door hun bestandsnamen als argumenten door te geven aan de opdracht vim. Bijvoorbeeld:
vim bestand1 bestand2 bestand3
Het eerste bestand (bestand1 in het voorbeeld) is het huidige bestand en wordt in de buffer gelezen.
Eenmaal in de editor gebruikt u de opdracht :next
of :n
om naar het volgende bestand te gaan en de opdracht :prev
of :N
om naar het vorige terug te keren. Als u rechtstreeks naar het eerste of het laatste bestand wilt overschakelen, gebruikt u respectievelijk :bf
en :bl
opdrachten. Om een ander bestand te openen en te bewerken, gebruikt u de opdracht :e
met de bestandsnaam als argument (gebruik het volledige pad voor het geval het bestand niet aanwezig is in de huidige map).
Gebruik altijd de opdracht :ls
u momenteel geopende bestanden wilt weergeven. Zie de screenshot hieronder.
Merk op dat "% a" staat voor het bestand in het actieve actieve venster, terwijl "#" staat voor het bestand in het vorige actieve venster.
2. Bespaar tijd met automatisch aanvullen
Wilt u tijd besparen en de nauwkeurigheid verbeteren? Gebruik afkortingen. Ze zijn handig tijdens het schrijven van lange, complexe woorden die regelmatig in het hele bestand voorkomen. Het Vim-commando voor afkortingen is ab
. Bijvoorbeeld nadat u de opdracht hebt uitgevoerd
: ab asap zo snel mogelijk
elke keer dat het woord "asap" voorkomt, wordt automatisch vervangen door "zo snel mogelijk" terwijl u typt.
Op dezelfde manier kunt u ook afkortingen gebruiken om veelvoorkomende typefouten te corrigeren. Bijvoorbeeld het commando
: ab ontvang ontvang
corrigeert automatisch de spelfout terwijl u typt. Als u wilt voorkomen dat de uitbreiding / correctie plaatsvindt in een bepaald geval, typt u "Ctrl + V" achter het laatste teken van het woord en drukt u vervolgens op de spatiebalktoets.
Als u de afkorting die u hebt gemaakt wilt opslaan zodat deze de volgende keer dat u de Vim-editor gebruikt beschikbaar is, voegt u de volledige ab
opdracht (zonder de eerste dubbele punt) toe aan het bestand "/ etc / vim / vimrc". Om een bepaalde afkorting te verwijderen, kunt u de opdracht una
gebruiken. Bijvoorbeeld :una asap
.
3. Splitsen van vensters om eenvoudig te kopiëren en plakken
Er zijn tijden dat u een stuk code of een deel van de tekst van het ene naar het andere bestand wilt kopiëren. Hoewel het proces eenvoudig is tijdens het werken met GUI-editors, wordt het een beetje vervelend en tijdrovend tijdens het werken met een opdrachtregeleditor. Gelukkig biedt Vim een manier om de tijd en moeite die nodig is om dit te doen te minimaliseren.
Open een van de twee bestanden en split het Vim-venster om het andere bestand te openen. Dit kan gedaan worden door de split
opdracht met de bestandsnaam als argument te gebruiken. Bijvoorbeeld,
: split test.c
splitst het venster en opent "test.c".
Merk op dat de opdracht het Vim-venster horizontaal splitst. Als u het venster verticaal wilt splitsen, kunt u dit doen met de opdracht vsplit
. Zodra beide bestanden zijn geopend, kopieer je de spullen uit het ene bestand, druk je op "Ctrl + w" om het besturingselement naar een ander bestand te schakelen en plak je het.
4. Sla een bestand op dat u hebt bewerkt zonder de vereiste rechten
Soms realiseert u zich dat een bestand alleen-lezen is nadat u er een aantal wijzigingen in hebt aangebracht.
Hoewel het sluiten van het bestand en het opnieuw openen van de bestanden met de vereiste machtigingen een uitweg is, is het een verspilling van tijd als u al veel wijzigingen hebt aangebracht, omdat ze allemaal verloren zullen gaan tijdens het proces. Vim biedt u een manier om met deze situatie om te gaan door u toe te staan de bestandsrechten in de editor te wijzigen voordat u deze opslaat. Het commando hiervoor is:
: w! sudo tee%
De opdracht zal u om het wachtwoord vragen, net zoals sudo
doet op de opdrachtregel, en zal dan de wijzigingen opslaan.
Een verwante tip : Om snel toegang te krijgen tot de opdrachtprompt tijdens het bewerken van een bestand in Vim, voert u de opdracht :sh
uit vanuit de editor. Dit plaatst je in een interactieve shell. Als u klaar bent, voert u de opdracht exit
uit om snel terug te keren naar uw Vim-sessie.
5. Bewaar inspringing tijdens kopiëren en plakken
De meeste ervaren programmeurs werken op Vim met auto-inspringen ingeschakeld. Hoewel het een tijdbesparende oefening is, creëert het een probleem bij het plakken van een reeds ingesprongen code. Dit gebeurde bijvoorbeeld toen ik een reeds ingesprongen code plakte in een bestand geopend in Vim-editor met automatisch inspringen.
De oplossing voor dit probleem is de optie pastetoggle
. Voeg de regel toe
stel pastetoggle = in
naar uw vimrc-bestand en druk op F2 in invoegmodus vlak voordat de code wordt geplakt. Dit zou de oorspronkelijke inspringing moeten behouden. Merk op dat u F2 kunt vervangen door een andere sleutel als deze al is toegewezen aan een andere functionaliteit.
Conclusie
De enige manier waarop je je Vim-redactievaardigheden nog verder kunt verbeteren, is door de opdrachtregeleditor te gebruiken voor je dagelijkse werk. Noteer gewoon de acties die tijd vergen en probeer vervolgens uit te vinden of er een editoropdracht is die de acties sneller zal uitvoeren.