VimCS: Basi

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
La versione stampabile non è più supportata e potrebbe contenere errori di resa. Aggiorna i preferiti del tuo browser e usa semmai la funzione ordinaria di stampa del tuo browser.
Vim Cheat Sheet

Sommario

  1. Introduzione
  2. Le basi
  3. Gestione dei file
  4. Editing
  5. Varie
  6. Configurazione
  7. Extra

Iniziare a scrivere

Ci sono vari modi di attivare la modalità inserimento, a seconda delle esigenze e della posizione del cursore.

a sinistra del cursore - i
a destra del cursore - a
a inizio riga - I
a fine riga - A
sulla riga sotto il cursore - o
sulla riga sopra il cursore - O


Come muoversi

sposta cursore a sinistra - h
sposta cursore a destra - l
sposta cursore su - j
sposta cursore giù - k

sposta cursore avanti all'inizio della parola successiva - w
sposta cursore indietro all'inizio della parola successiva - b

sposta cursore avanti all'inizio della parola successiva ignorando la punteggiatura - W
sposta cursore indietro all'inizio della parola successiva ignorando la punteggiatura - B

sposta cursore tre parole avanti all'inizio della parola - 3w
sposta cursore tre parole indietro all'inizio della parola - 3b

sposta cursore avanti alla fine della parola - e
sposta cursore indietro alla fine della parola - ge

sposta cursore avanti alla fine della parola successiva ignorando la punteggiatura - E
sposta cursore indietro alla fine della parola successiva ignorando la punteggiatura - gE

sposta cursore tre parole avanti alla fine - 3e
sposta cursore al primo carattere della riga - |
sposta cursore al terzo carattere della riga - 3|
sposta cursore al primo carattere non bianco - ^

sposta cursore ad inizio riga - 0
sposta cursore a fine riga - $

sposta cursore una pagina avanti - Ctrl-f (oppure Ctrl-d)
sposta cursore una pagina indietro - Ctrl-b (oppure Ctrl-u)

sposta cursore avanti ad inizio frase - )
sposta cursore indietro ad inizio frase - (

sposta cursore su ad inizio paragrafo - {
sposta cursore giù a fine paragrafo - }

sposta cursore a inizio documento - gg (oppure [[)
sposta cursore a fine documento - G (oppure ]])
sposta cursore alla riga 33 - 33 G (oppure :33)

sposta cursore alla prima riga dello schermo - H
sposta cursore all'ultima riga dello schermo - L
sposta cursore alla riga al centro dello schermo - M
sposta cursore alla terza riga dello schermo - 3H
sposta cursore alla terzultima riga dello schermo - 3L

sposta il cursore sulla parentesi corrispondente ad una chiusa o aperta - %

sposta il cursore alla successiva parola uguale a quella attuale - Ctrl-*

mostra il nome del file, la quantità di righe e la posizione in cui è il cursore - Ctrl-g


Spostandosi da un punto all'altro del documento, Vim ricorda gli ultimi due; paragonando questo comportamento a bash, si pensi ai comandi cd e cd - :

torna alla posizione precedente - Ctrl-o
vai alla posizione successiva - Ctrl-i

Se invece volessimo una specie di segnalibro per tornare ad un punto preciso:

m (seguito dal carattere)

e quindi tornarvi in qualsiasi momento:

' (seguito dal carattere)


I comandi disponibili sono moltissimi, ecco cosa dice il saggio vimgor, il bot del canale IRC, in proposito:
<skizzhg> vimgor: movement
<vimgor> In normal mode, all of these keys can move the cursor: ` # $ % ^ * ( ) 0 _ - + w W e E t T I o O { } [[ [] ][ ]] [m [M ]m ]M [( ]) [{ ]} | A f F ge gE gg G g0 g^ g$ g, g; gj gk gI h H j k l L ; ' z. z<CR> z- zz zt zb b B n N M , / ? <C-b> <C-d> <C-e> <C-f> <C-h> <C-i> <C-o> <C-t> <C-u> <C-y> - learn to use all of them


Salvare il documento

salva file già esistente - :w
salva file non esistente - :w nome_file

salva più file aperti, che siano buffer o tab - :wa
salva con altro nome, fa una copia mantendendo l'originale - :sav nome_file


Uscire da Vim

esce - :q
esce da tutti, che siano buffer o tab - :qa
salva ed esce - :wq
salva solo se sono state fatte modifiche ed esce - :x (oppure ZZ)
salva tutti, che siano buffer o tab - :wa
esce senza salvare - :q! (oppure ZQ)

mappa la sequenza di tasti ZW per salvare senza chiudere:

:map ZW :w<cr>