Vim for Programmers - Prima Parte

Da MelugWiki.

Jump to: navigation, search

by emitrax_at_gmail_dot_com

Indice

Premessa

L'idea di questo tutorial non è quella di elencarvi le infinite potenzialità di VIM, anche perche non le conosco! Ci sono infiniti documenti su internet a riguardo. La mia idea è quella di fornirvi le informazione che, secondo me, sono le piu utili per un programmatore che vuole usare VIM.

Introduzione

Vim è un editor di testo potentissimo, ed essenzialmente è una versione migliorata del famosissimo VI. VIM infatti sta per VI IMproved. E' un editor che utilizza il concetto di modalita. In pratica VIM interpreta ciò che digitate in maniera diversa a seconda della modalita in cui vi troviate. Fondamentalmente esistono tre modalità: comandi, inserimento, e visuale. Nella modalita comandi, com'è facile intuire, qualsiasi cosa digitate sarà interpretata come un comando. Non potete quindi inserire testo ma soltanto eseguire comandi. Nella modalita inserimento invece, qualsiasi cosa digitate sulla tastiera verra inserito nel vostro file di testo. Infine la modalita visuale, serve essenzialmente a selezionare del testo ed è molto semplice da usare.

In che modalità mi trovo?!?

Quando aprite un file sarete sempre in modalità comandi, in ogni caso per sapere esattamente in che modalita vi troviate, basta premere due volte il tasto ESC e sarete in modalita comandi. La maggior parte dei comandi inizia per : (due punti). Adesso apriamo un file ed usciamo subito

freek syslinux-3.06 $ vi syslinux.h

Per uscire, in modalita comandi digitate:

:q<invio>

Ogni comando per essere eseguito deve essere seguito da un invio, quindi evitero di scriverlo da adesso in poi. Nel caso facciate delle modifiche al file e cercate di uscire dal file con il comando :q , VIM ve lo impedira, dicendovi che sono state apportate delle modifiche al file e che quindi dovreste prima salvare e poi uscire. Per salvare le modifiche ed uscire

:wq

Oppure per uscire senza salvare

:q!

Per uscire e salvare in un colpo solo

:x

Sulla modalita inserimento c'è poco da dire. Qualsiasi cosa digitate verra inserito nel file di testo. Per uscire da tale modalita premete il tasto ESC e sarete in modalita comandi.

Per poter passare in modalita inserimento, basta premere il tasto i

i

Per passare in modalita inserimento, ed iniziare ad inserire dal carattere successivo al cursore

a

Spesso è utile iniziare ad inserire da fine riga

A

Cancella un carattere, una parola, una riga

Il comando per cancellare fondamentalmente è d (delete). In ogni caso per cancellare

un carattere

x

una parola (w = word)

dw

le successive 3 parole dopo il cursore

d3w

Ovviamente basta sostituire 3 con il numero di parole che volete cancellare.

Per cancellare una riga

dd

3 righe

d3d

dalla posizione del cursore a FINE RIGA

d$

dalla posizione del cursore a INIZIO RIGA, quindi all'indietro

d0

Copia e incolla

Questa è senza dubbio la prima cosa che un programmatore si chiede appena inizia a prendere confidenza con VIM: "come faccio copia incolla!?" Ok... troppo semplice! Partiamo con il copiare una semplice riga...

Passate in modalita comandi

ESC ESC

Vi spostate con i tasti direzionali sulla linea che volete copiare e...

yy

SENZA i due punti iniziali!!! Adesso spostatevi sulla riga nella quale volete inserire quella appena copiata e premete

p

Et voilà! La riga è stata inserita dopo il cursore.

P

la inserite prima del cursore.

Per copiare piu di una riga, ad esempio 3 righe basta mettere il numero 3 tra le y. Vi spostate sulla prima riga delle 3 che volete copiare e...

y3y

Per incollare le righe usate il comando p come sopra. E' possibile ovviamente copiare anche una sola parola, n parole, oppure fino a fine riga o inizio riga, proprio come avete fatto per cancellare. Basta usare il comando y al posto di d.

Quindi per copiare una parola

yw

Tre parole

y3w

Fino a fine riga

y$

Fino a inizio riga

y0

Taglia e incolla

Praticamente è tutto uguale e tale al copia e incolla. Solo che invece di usare il comando y, dovete usare il comando d per cancellare. Infatti ogni qualvolta cancellate qualcosa, VIM lo manterra nel suo buffer!

Copia/Taglia e incolla (modalita visuale)

Se pensiate che sia un gran rottura di scatole doversi ricordare tutti i comandi sopra elencati per copiare 3 righe o 4 parole, non c'è problema!! Dimenticate tutto :-) E passiamo alla modalita visuale! Dalla modalita comandi (doppio ESC) premete v e sarete nella modalita visuale! Se adesso provate a spostarvi con il cursore, il testo verra selezionato! Quindi, selezionate il testo che vi interessa copiare o cancellare e usate i tasti y per copiare e d per cancellare! Poi tornate alla modalita comandi e copiate, se vostra intenzione, il testo che avete copiato/cancellato in modalita visuale! Semplice no?!

Ups ho sbagliato! ...Come torno indietro?!

Nel caso abbiate cancellato qualcosa per sbaglio, per annullare l'ultimo comando usate il comando u (undo)

u

Per annullare tutti i cambiamenti che avete fatto in una riga

U

ATTENZIONE: Se state lavorando su una riga, effettuate modifiche e poi vi spostate su un' altra riga, se dopo tornate su quella riga e provate ad annullare tutte le modifiche con il comando U, non funzionera! Infatti una volta che vi spostate da una riga, VIM scarta le informazioni necessarie a ripristinare quella riga con il comando U.

Personal tools