Dimensione: 7369
Commento: Inserita modifica alla pagina
|
Dimensione: 7313
Commento: Revisionata.
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 28: | Linea 28: |
È possibile attivare l'evidenziazione della sintassi modificando il file ''/etc/vim/vimrc'' aggiungendo la linea: | È possibile attivare l'evidenziazione della sintassi aggiungendo al file `/etc/vim/vimrc` la seguente linea: |
Linea 57: | Linea 57: |
In alternativa è possibile salvare e uscire semplicemente digitare il seguente comando: | In alternativa è possibile salvare e uscire semplicemente digitando il seguente comando: |
Linea 64: | Linea 64: |
'''Vim''' è un programma modale. Cioè è in grado di associare diverse funzioni ai tasti premuti in base alla modalità corrente di utilizzo del programma. Alcune modalità di utilizzo sono ad esempio ''Insert'' (inserimento testo), ''visual'' (selezione testo), ''replace'' (sostituzione di testo) e ''command'' (la modalità in cui si passano alcuni comandi al programma). | '''Vim''' è un programma modale. Cioè è in grado di associare diverse funzioni ai tasti premuti in base alla modalità corrente di utilizzo del programma. Alcune modalità di utilizzo sono ad esempio ''Insert'' (inserimento testo), ''visual'' (selezione testo), ''replace'' (sostituzione di testo) e ''command'' (la modalità nella quale si passano alcuni comandi al programma).[[BR]] |
Linea 77: | Linea 77: |
Normalmente il programma viene avviato in modalità "Command", oppure si può richiamare questa modalità in qualsiasi momento semplicemente premendo il tasto «'''ESC'''». | Normalmente il programma viene avviato in modalità "Command". In qualsiasi momento è possibile richiamare questa modalità premendo semplicemente il tasto «'''ESC'''».[[BR]] |
Linea 81: | Linea 81: |
||<tablestyle="width:60%; margin: 0 0 0 0;" rowbgcolor="#EEE9C1" 25% :>'''Comando'''||<tablestyle="width:60%; margin: 0 0 0 0;" :>'''Descrizione''' || ||«''':q'''» || uscire dal programma avvisando se il file sul quale si sta lavorando non è stato salvato || ||«''':q!'''» || uscire forzatamente (senza salvare le modifiche) || ||«''':w'''» || salvare || ||«''':wq'''» || salvare ed esce || ||«''':x'''» || salvare ed esce || ||«''':o''' nomefile» || aprire nomefile in modalità visuale || ||«''':e'''» || ricaricare il file sul quale si sta lavorando || ||«''':u'''» || annullare l'ultima azione|| ||«''':n'''» || andare alla riga «n» || ||«''':copy''' num_riga» || copiare la linea sulla quale si trova il cursore nella riga num_riga del file || ||«''':move''' num_riga» || spostare la linea sulla quale si trova il cursore nella riga num_riga del file || ||«''':del'''» || eliminare la riga corrente || ||«''':del''' num_righe» || eliminare num_righe linee dalla posizione attuale del cursore || ||«''':!'''comando_bash» || eseguire il comando_bash ritornando l'output direttamente nella finestra dove stiamo editando il file || ||«'''/'''string» || cercare la stringa "string" nel testo (ci si può muovere tra i risultati premendo il tasto '''p''' (previous) e '''n''' (next)) || ||«'''/%s/'''daSostituire/conQuesta» || sostituire ogni occorrenza della stringa ''daSostituire'' con ''conQuesta'' || ||«'''dd'''» || cancellare la riga dove è il cursore || ||«'''7dd'''» || cancellare le successive sette righe; il numero 7 può essere sostituito da un numero di righe qualsiasi || ||«'''x'''» || cancellare il carattere dove è il cursore || ||«''':help'''» || help in linea || |
||<tablestyle="width:70%; margin: 0 0 0 0;" rowbgcolor="#FB8B00" 25% :>'''Comando'''||<tablestyle="width:60%; margin: 0 0 0 0;" :>'''Descrizione''' || ||''':q''' || esce dal programma avvisando se il file sul quale si sta lavorando non è stato salvato || ||''':q!''' || esce forzatamente (senza salvare le modifiche) || ||''':w''' || salva il file || ||''':wq''' || salva ed esce || ||''':x''' || equivalente a ''':wq''' || ||''':o''' nomefile || aprire nomefile in modalità visuale || ||''':e''' || ricarica il file || ||''':u''' || annulla l'ultima azione|| ||''':n''' || sposta il cursore alla riga n || ||''':copy''' num_riga || copia la linea sulla quale si trova il cursore nella riga `num_riga` del file || ||''':move''' num_riga || sposta la linea sulla quale si trova il cursore alla riga `num_riga` del file || ||''':del''' || elimina la riga corrente || ||''':del''' num_righe || elimina `num_righe` linee dalla posizione attuale del cursore || ||''':!'''comando_bash || eseguire il `comando_bash`, reindirizzando l'``''output'' direttamente sulla finestra in uso || ||'''/'''string || cerca la stringa `string` nel testo (ci si può muovere tra i risultati premendo il tasto '''p''' (''previous'') e '''n''' (''next'')) || ||'''/%s/'''daSostituire/conQuesta || sostituisce ogni occorrenza della stringa `daSostituire` con `conQuesta` || ||'''dd''' || cancella la riga dove attualmente si trova il cursore || ||'''7dd''' || cancella le successive sette righe; il numero `7` può essere sostituito da un numero di righe qualsiasi || ||'''x''' || cancella il carattere dove attualmente si trova il cursore || ||''':help''' || help in linea || |
Linea 107: | Linea 107: |
Premendo il tasto «'''v'''» si entra nella modalità ''Visual'' nella quale è possibile eseguire ad esempio delle operazioni di copia ed incolla di interi blocchi di testo. Nella modalità ci si può muovere con i normali comandi di movimento fino a raggiungere la selezione desiderata; a questo punto i comandi sono: |
Premendo il tasto «'''v'''» si entra nella modalità ''Visual'' nella quale è possibile eseguire ad esempio delle operazioni di copia ed incolla di interi blocchi di testo.[[BR]] Nella modalità ci si può muovere con i normali comandi di movimento fino a raggiungere la selezione desiderata; seguono i comandi per questa modalità: |
Linea 110: | Linea 110: |
||<tablestyle="width:60%; margin: 0 0 0 0;" rowbgcolor="#EEE9C1" 25% :>'''Comando'''||<tablestyle="width:60%; margin: 0 0 0 0;" :>'''Descrizione''' || ||«'''y'''» || copiare il testo selezionato || ||«'''c'''» || tagliare il testo selezionato || ||«'''p'''» || incollare il testo copiato o tagliato in precedenza || |
||<tablestyle="width:70%; margin: 0 0 0 0;" rowbgcolor="#FB8B00" 25% :>'''Comando'''||<tablestyle="width:60%; margin: 0 0 0 0;" :>'''Descrizione''' || ||<:>'''y''' || copia il testo selezionato || ||<:>'''c''' || taglia il testo selezionato || ||<:>'''p''' || incolla il testo copiato o tagliato in precedenza || |
IndiceBRTableOfContents |
Introduzione
Vim (Vi IMproved) è un [:EditorDiTesto:editor di testo] modale utilizzabile da terminale. Si tratta di una versione migliorata di [http://it.wikipedia.org/wiki/Vi_%28software%29 Vi] creata da [http://www.moolenaar.net/ Bram Moolenaar] nel 1991. È un'ottima alternativa ad altri editor di testi per terminale quali [:EditorDiTesto/Nano:nano] ed [:EditorDiTesto/Emacs:emacs]. È da notare il fatto che una versione di vi (sia esso "l'originale" vi, vim, elvis o qualche altro suo clone) viene normalmente preinstallata in ogni ditribuzione linux. Il che significa che conoscendo vim si ha a disposizione un potente editor valido su praticamente ogni sistema linux.
Installazione ed avvio
In ogni sistema è installata come minimo la versione base Vi. Tuttavia per sfruttare a pieno le funzionalità aggiuntive di Vim occorre installarlo.
Installazione su qualsiasi versione di Ubuntu
[:AmministrazioneSistema/InstallareProgrammi:Installare] il pacchetto vim presente nel [:Repository/Componenti:componente] main dei [:Repository:repository] ufficiali.
Primi Passi
Per iniziare una sessione di vim digitare da terminale:
vim
spesso la versione Vi IMproved è anche avviabile semplicemente digitando:
vi
È possibile attivare l'evidenziazione della sintassi aggiungendo al file /etc/vim/vimrc la seguente linea:
syntax on
Modificare un file di testo
Per aprire un file di testo è sufficiente digitare il seguente comando:
vim nomefile
Una volta aperto il documento, per modificarlo è necessario premere il tasto «i» per entrare nella modalità Insert. Una volta terminate le modifiche per salvare il file ed uscire dal programma premere il tasto «Esc» e digitare il comando «:wq» seguito da invio. Con questo comando verranno salvate le modifiche (w) e verrà effettuata la chiusura dell'applicazione (q).
Se si desidera aprire un file e spostarsi direttamente alla righa 67 si può usare il comando:
vim file_di_esempio +67
Creare un file di testo
Per creare un file di testo è sufficiente digitare il seguente comando:
vim
Premere il tasto «i» ed inserire il testo desiderato, infine premere «Esc» per tornare alla modalità Command e digitare ciò che segue per salvare il file:
:w nomefile
In alternativa è possibile salvare e uscire semplicemente digitando il seguente comando:
:x nomefile
Modalità
Vim è un programma modale. Cioè è in grado di associare diverse funzioni ai tasti premuti in base alla modalità corrente di utilizzo del programma. Alcune modalità di utilizzo sono ad esempio Insert (inserimento testo), visual (selezione testo), replace (sostituzione di testo) e command (la modalità nella quale si passano alcuni comandi al programma).BR Quando Vim si trova impostato su una modalità è pronto ad eseguire un certo tipo di operazioni altrimenti non accessibili.
Insert
Premendo il tasto «i», Vim commuta nella modalità Insert: si può quindi modificare direttamente il file come su un qualsiasi altro editor.
Replace
Dalla modalità Insert premere il tasto «INS» per passare direttamente alla modalità "Replace", si tratta della sovrascrittura. Per tornare alla modalità Insert è sufficiente premere nuovamente il tasto «INS». Per tornare alla modalità Command premere il tasto «ESC».
Command
Normalmente il programma viene avviato in modalità "Command". In qualsiasi momento è possibile richiamare questa modalità premendo semplicemente il tasto «ESC».BR Il programma a questo punto è pronto a ricevere delle istruzioni: spostarsi nel file, attuare alcune modifiche, aprire, salvare o chiudere il programma. Quello che segue è un elenco dei comandi più comuni:
Comando |
Descrizione |
:q |
esce dal programma avvisando se il file sul quale si sta lavorando non è stato salvato |
:q! |
esce forzatamente (senza salvare le modifiche) |
:w |
salva il file |
:wq |
salva ed esce |
:x |
equivalente a :wq |
:o nomefile |
aprire nomefile in modalità visuale |
:e |
ricarica il file |
:u |
annulla l'ultima azione |
:n |
sposta il cursore alla riga n |
:copy num_riga |
copia la linea sulla quale si trova il cursore nella riga num_riga del file |
:move num_riga |
sposta la linea sulla quale si trova il cursore alla riga num_riga del file |
:del |
elimina la riga corrente |
:del num_righe |
elimina num_righe linee dalla posizione attuale del cursore |
:!comando_bash |
eseguire il comando_bash, reindirizzando l'output direttamente sulla finestra in uso |
/string |
cerca la stringa string nel testo (ci si può muovere tra i risultati premendo il tasto p (previous) e n (next)) |
/%s/daSostituire/conQuesta |
sostituisce ogni occorrenza della stringa daSostituire con conQuesta |
dd |
cancella la riga dove attualmente si trova il cursore |
7dd |
cancella le successive sette righe; il numero 7 può essere sostituito da un numero di righe qualsiasi |
x |
cancella il carattere dove attualmente si trova il cursore |
:help |
help in linea |
Si possono unire più comandi insieme, come ad esempio «:wq» che unisce «:w» e «:q». Posticipare il carattere speciale «!» forza il programma ad eseguire comunque il comando che lo precede.
Visual
Premendo il tasto «v» si entra nella modalità Visual nella quale è possibile eseguire ad esempio delle operazioni di copia ed incolla di interi blocchi di testo.BR Nella modalità ci si può muovere con i normali comandi di movimento fino a raggiungere la selezione desiderata; seguono i comandi per questa modalità:
Comando |
Descrizione |
y |
copia il testo selezionato |
c |
taglia il testo selezionato |
p |
incolla il testo copiato o tagliato in precedenza |
Ulteriori risorse
[http://www.vim.org/ Sito ufficiale del progetto]
[http://www.vim.org/docs.php Documentazione ufficiale]
[http://book.slackware.it/vi.html Seziona dedicata a vi nella documentazione di Slackware]
[http://vim.wikia.com/wiki/Main_Page Vim Wiki]
CategoryProgrammazione CategoryDaRevisionare CategoryProduttivita