vim
Tekst manipuleren
Zoeken…
Opmerkingen
Gebruik de plug-in vim-speeddating om dingen zoals 11:59AM
, 3rd
en XVIII
te verhogen en te verlagen
Tekst omzetten
In normale modus:
-
~
keert het hoofdlettergebruik van het teken onder de cursor om, -
gu{motion}
zet in kleine letters de tekst op{motion}
, -
gU{motion}
hoofdletters van de tekst die valt onder{motion}
Voorbeeld ( ^
markeert de cursorpositie):
Lorem ipsum dolor sit amet.
^
Lorem ipSum dolor sit amet. ~
Lorem IPSUM DOLOR sit amet. gU2w
Lorem IPsum DOLOR sit amet. gue
In visuele modus:
-
~
keert het hoofdlettergebruik van de geselecteerde tekst om, -
u
verkleint de geselecteerde tekst, -
U
zet de geselecteerde tekst in hoofdletters
Voorbeeld ( ^^^
markeert de visuele selectie):
Lorem ipsum dolor sit amet.
^^^^^^^^^^^^^
Lorem ipSUM DOLOR SIT amet. ~
Lorem ipSUM DOLOR SIT amet. U
Lorem ipsum dolor sit amet. u
Toenemende en afnemende cijfers en alfabetische tekens
In de normale modus kunnen we het dichtstbijzijnde getal op de regel op of na de cursor verhogen met <Ca>
en verlagen met <Cx>
. In de volgende voorbeelden wordt de cursorpositie aangegeven met ^
.
Stijgende en dalende getallen
for i in range(11):
^
<Cx>
verlaagt het aantal:
for i in range(10):
^
10<Ca>
verhoogt het met 10
:
for i in range(20):
^
Toenemende en afnemende alfabetische tekens
Om increment en decrement ook met letters te laten werken, gebruik je het ex commando :set nrformats+=alpha
of voeg set nrformats+=alpha
aan je .vimrc
.
Increment voorbeeld:
AAD
^
<Ca>
verhoogt het naar B
:
ABD
^
Voorbeeld van afname:
ABD
^
<Cx>
verlaagt D
tot C
:
ABC
^
Nummers verhogen en verlagen wanneer alfabetisch verhogen / verlagen is ingeschakeld
Merk op dat het verhogen / verlagen van werken met alfabetische tekens betekent dat je moet oppassen dat je ze niet wijzigt wanneer je echt alleen cijfers wilt wijzigen. U kunt de alfabetische toename / afname uitschakelen met behulp van de opdracht ex :set nrformats-=alpha
of u kunt zich er gewoon bewust van zijn en ervoor zorgen dat u naar het nummer gaat voor de toename of afname. Hier is het " for i in range(11):
" voorbeeld van hierboven overgedaan om te werken terwijl alfabetische toename / afname is ingesteld:
Laten we zeggen dat u 11
tot 10
wilt verlagen en dat alfabetische toename / afname actief is.
for i in range(11):
^
Omdat alfabetische toename / afname actief is, om te voorkomen dat het teken onder de cursor wordt gewijzigd, gaat u eerst vooruit naar de eerste 1
met behulp van de normale modusbewegingsopdracht f1
(dat is kleine letters f
gevolgd door het cijfer 1
, niet te verwarren met een functietoets ):
for i in range(11):
^
Nu, omdat de cursor op het nummer staat, kunt u het verlagen met <Cx>
. Bij afname wordt de cursor verplaatst naar het laatste cijfer van het cijfer:
for i in range(10):
^
Code opmaken
In normale modus:
gg
ga naar boven
=
dan G
Gebruik van "werkwoorden" en "zelfstandige naamwoorden" voor tekstbewerking
Een van de manieren om na te denken over de opdrachten die moeten worden uitgevoerd, om een tekst op een bepaalde manier te bewerken, is als hele zinnen.
Een opdracht is een actie die op een object wordt uitgevoerd. Daarom heeft het een werkwoord:
:normal i " insert
:normal a " append
:normal c " overwrite
:normal y " yank (copy)
:normal d " delete
Sommige van deze woorden werken met een object zoals d
, c
, y
. Dergelijke objecten kunnen woord, lijn, zin, paragraaf, tag zijn . Men kan deze in combinatie gebruiken:
:normal dw " deletes the text from the position of the cursor to the end of the next word
:normal cw " deletes the text from the cursor to the end of the next word and
" enters insert mode
Je kunt ook een modifier gebruiken om precies aan te geven waar de actie moet worden uitgevoerd:
:normal diw " delete inside word. I.e. delete the word in which is the cursor.
:normal ciw " removes the word, the cursor points at and enters insert mode
:normal ci" " removes everything between the opening and closing quotes and
" enters insert mode
:normal cap " change the current paragraph
:normal ct8 " remove everything until the next number 8 and enter insert mode
:normal cf8 " like above but remove also the number
:normal c/goal " remove everything until the word 'goal' and enter insert mode
:normal ci{ " change everything inside the curly braces
Meer middelen:
Leer vim spreken - werkwoorden, zelfstandige naamwoorden en modificatoren!
Learning Vim in 2014: Vim als taal
VimSpeak-bewerking met Speech Grammar