blob: 882a56deb18e5d8c13626cdcc33cfc795406c4fe [file] [log] [blame]
Bram Moolenaar217ad922005-03-20 22:37:15 +00001.TH VIM 1 "22 febbraio 2002"
2.SH NOME
3vim \- VI Migliorato, un editor di testi per programmatori
4.SH SINTASSI
5.br
6.B vim
7[opzioni] [file ..]
8.br
9.B vim
10[opzioni] -
11.br
12.B vim
13[opzioni] \-t tag
14.br
15.B vim
16[opzioni] \-q [file_errori]
17.PP
18.br
19.B ex
20.br
21.B view
22.br
23.B gvim
24.B gview
25.B evim
26.B eview
27.br
28.B rvim
29.B rview
30.B rgvim
31.B rgview
32.SH DESCRIZIONE
33.B Vim
34Un editore di testi, compatibile con, e migliore di, Vi.
35Può essere usato per editare qualsiasi file di testo.
36Particolarmente utile per editare programmi.
37.PP
38Ci sono parecchi miglioramenti rispetto a Vi: undo multipli,
39finestre e buffer multipli, evidenziazione sintattica, possibilità
40di modificare la linea di comando, completamento nomi file, help
41in linea, selezione testi in modalità visuale, etc..
42Vedere ":help vi_diff.txt" per un sommario delle differenze fra
43.B Vim
44e Vi.
45.PP
46Mentre usate
47.B Vim
48potete ricevere molto aiuto dal sistema di help online, col comando ":help".
49Vedere qui sotto la sezione AIUTO ONLINE.
50.PP
51Quasi sempre
52.B Vim
53viene invocato, per modificare un file, col comando
54.PP
55 vim file
56.PP
57Più in generale
58.B Vim
59viene invocato con:
60.PP
61 vim [opzioni] [lista_file]
62.PP
63Se lista_file non è presente, l'editor inizia aprendo un buffer vuoto.
64Altrimenti, una e una sola delle quattro maniere indicate qui sotto può
65essere usata per scegliere uno o più file da modificare.
66.TP 12
67file ..
68Una lista di nomi di file.
69Il primo di questi sarà il file corrente, e verrà letto nel buffer.
70Il cursore sarà posizionato sulla prima linea del buffer.
71Potete arrivare agli altri file col comando ":next".
72Per editare un file il cui nome inizia per "-" premettete "--" alla
73lista_file.
74.TP
75-
76Il file da editare è letto dallo "stdin" [di solito, ma non
77necessriamente, il terminale - NdT]. I comandi sono letti da "stderr",
78che dovrebbe essere un terminale [tty].
79.TP
80-t {tag}
81Il file da editare e la posizione iniziale del cursore dipendono da "tag",
82una specie di "etichetta" a cui saltare.
83{tag} viene cercata nel file tags, ed il file ad essa associato diventa
84quello corrente, ed il comando ad essa associato viene eseguito.
85Di solito si usa per programmi C, nel qual caso {tag} potrebbe essere un
86nome di funzione.
87L'effetto è che il file contenente quella funzione diventa il file corrente
88e il cursore è posizionato all'inizio della funzione.
89Vedere ":help tag-commands".
90.TP
91-q [file_errori]
92Inizia nella modalità quickFix [correzione veloce].
93Il file [file_errori] è letto e il primo errore è visualizzato.
94Se [file_errori] non è indicato, il suo nome è ottenuto dal valore
95dell'opzione 'errorfile' (che, se non specificata, vale "AztecC.Err"
96per l'Amiga, "errors.err" su altri sistemi).
97Si può saltare all'errore successivo col comando ":cn".
98Vedere ":help quickfix".
99.PP
100.B Vim
101si comporta in modo diverso se invocato con nomi differenti (il programma
102eseguibile "sottostante" può essere sempre lo stesso).
103.TP 10
104vim
105Modalità "Normal", comportamento normale.
106.TP
107ex
108Inizia in modalità "Ex".
109Si può passare in modalità "Normal" col comandi ":vi".
110Si può invocare la modalità "Ex" anche con l'argomento "-e".
111.TP
112view
113Inizia in modalità "Sola Lettura". Non potete modificare i file.
114Si può invocare la modalità "Sola Lettura" anche con l'argomento "-R".
115.TP
116gvim gview
117La versione GUI [Graphical User Interface].
118Apre una nuova finestra.
119Si può invocare la modalità "GUI" anche con l'argomento "-g".
120.TP
121evim eview
122La versione GUI in modalità "Facile" (semplificata).
123Apre una nuova finestra.
124Si può invocare la modalità "Facile" anche con l'argomento "-y".
125.TP
126rvim rview rgvim rgview
127Come sopra, ma con restrizioni ai comandi. Non si potrnno eseguire comandi
128dello shell o sospendere
129.B Vim.
130Si può invocare la modalità "Ristretta" anche con l'argomento "-Z".
131.SH OPZIONI
132Le opzioni possono essere in un ordine qualsiasi, prima o dopo i nomi di
133file. Opzioni che non necessitano un argomento possono essere raggruppate
134dietro a un solo "-".
135.TP 12
136+[numero]
137Per il primo file il cursore sarà posizionato sulla linea "numero".
138Se "numero" manca, il cursore sarà posizionato sull'ultima linea del file.
139.TP
140+/{espressione}
141Per il primo file il cursore sarà posizionato alla
142prima occorrenza di {espressione}.
143Vedere ":help search-pattern" per come specificare l'espressione.
144.TP
145+{comando}
146.TP
147-c {comando}
148{comando} sarà eseguito dopo che il
149primo file è stato letto.
150{comando} è interpretato come un comando Ex.
151Se il {comando} contiene spazi deve essere incluso fra doppi apici
152(o altro delimitatore, a seconda dello shell che si sta usando).
153Esempio: Vim "+set si" main.c
154.br
155Note: Si possono avere fino a 10 comandi "+" o "-c".
156.TP
157-S {file}
158I comandi contenuti in {file} sono eseguiti dopo la lettura del primo file.
159Equivalente a -c "source {file}".
160{file} non può avere un nome che inizia per '-'.
161Se {file} è omesso si usa "Session.vim" (funziona solo se -S è l'ultimo
162argomento specificato).
163.TP
164--cmd {comando}
165Come "-c", ma il comando è eseguito PRIMA
166di eseguire qualsiasi file vimrc.
167Si possono usare fino a 10 di questi comandi, indipendentemente dai comandi
168"-c".
169.TP
170-A
171Se
172.B Vim
173è stato compilato con supporto ARABIC per editare file con orientamento
174destra-sinistra e tastiera con mappatura Araba, questa opzione inizia
175.B Vim
176in modalità "Arabic", cioè impostando 'arabic'.
177Altrimenti viene dato un messaggio di errore e
178.B Vim
179termina in modo anormale.
180.TP
181-b
182Modalità "Binaria".
183Vengono impostate alcune opzioni che permettono di modificare un file
184binario o un programma eseguibile.
185.TP
186-C
187Compatibile. Imposta l'opzione 'compatible'.
188In questo modo
189.B Vim
190ha quasi lo stesso comportamento di Vi, anche in presenza di un file
191di configurazione .vimrc [proprio di Vim - NdT].
192.TP
193-d
194Inizia in modalità "Diff" [differenze].
195Dovrebbero esserci come argomenti due o tre nomi di file.
196.B Vim
197aprirà tutti i file evidenziando le differenze fra gli stessi.
198Funziona come vimdiff(1).
199.TP
200-d {dispositivo}
201Apre {dispositivo} per usarlo come terminale.
202Solo per l'Amiga.
203Esempio:
204"\-d con:20/30/600/150".
205.TP
206-D
207Debugging. Vim si mette in modalità "debugging" a partire
208dall'esecuzione del primo comando da uno script.
209.TP
210-e
211Eseguire
212.B Vim
213in modalità "Ex", come se il programma eseguito sia "ex".
214.TP
215-E
216Eseguire
217.B Vim
218in modalità "Ex" migliorata, come se il programma eseguito sia "exim".
219.TP
220-f
221Direttamente [Foreground]. Per la versione GUI,
222.B Vim
223non crea [fork] una nuova finestra, indipendente dallo shell di invocazione.
224Per l'Amiga,
225.B Vim
226non è fatto ripartire per aprire una nuova finestra.
227Opzione da usare quando
228.B Vim
229è eseguito da un programma che attende la fine della
230sessione di edit (ad es. mail).
231Sull'Amiga i comandi ":sh" e ":!" non sono disponibili.
232.TP
233--nofork
234Direttamente [Foreground]. Per la versione GUI,
235.B Vim
236non crea [fork] una nuova finestra, indipendente dallo shell di invocazione.
237.TP
238-F
239Se
240.B Vim
241è stato compilato con supporto FKMAP per editare file con orientamento
242destra-sinistra e tastiera con mappatura Farsi, questa opzione inizia
243.B Vim
244in modalità "Farsi", cioè impostando 'fkmap' e 'rightleft'.
245Altrimenti viene dato un messaggio di errore e
246.B Vim
247termina in modo anormale.
248.TP
249-g
250Se
251.B Vim
252è stato compilato con supporto GUI, questa opzione chiede di usarla.
253Se Vim è stato compilato senza supporto GUI viene dato un messaggio di errore e
254.B Vim
255termina in modo anormale.
256.TP
257-h
258Un po' di aiuto su opzioni e argomenti che si possono dare invocando Vim.
259Subito dopo
260.B Vim
261esce.
262.TP
263-H
264Se
265.B Vim
266è stato compilato col supporto RIGHTLEFT per editare file con orientamento
267destra-sinistra e tastiera con mappatura Ebraica, questa opzione inizia
268.B Vim
269in modalità "Ebraica", cioè impostando 'hkmap' e 'rightleft'.
270Altrimenti viene dato un messaggio di errore e
271.B Vim
272termina in modo anormale.
273.TP
274-i {viminfo}
275Se è abilitato l'uso di un file viminfo, questa opzione indica il nome
276del file da usare invece di quello predefinito "~/.viminfo".
277Si può anche evitare l'uso di un file .viminfo, dando come nome "NONE".
278.TP
279-L
280Equivalente a -r.
281.TP
282-l
283Modalità Lisp.
284Imposta le opzini 'lisp' e 'showmatch'.
285.TP
286-m
287Inibisce modifica file.
288Annulla l'opzione 'write'.
289E' ancora possibile modificare un buffer [in memoria - Ndt], ma non scriverlo.
290.TP
291-M
292Modifiche non permesse. Le opzioni 'modifiable' e 'write' sono annullate,
293in modo da impedire sia modifiche che riscritture. Da notare che queste
294opzioni possono essere abilitate in seguito, permettendo così modifiche.
295.TP
296-N
297Modalità "Non-compatibile". Annulla l'opzione 'compatible'.
298Così
299.B Vim
300va un po' meglio, ma è meno compatibile con Vi, anche in assenza di un
301file .vimrc.
302.TP
303-n
304Inibisce l'uso di un file di swap.
305Il recupero dopo una caduta di macchina diventa impossibile.
306Utile per editare un file su un supporto molto lento (ad es. floppy).
307Il comando ":set uc=0" ha lo stesso effetto.
308Per abilitare il recupero usare ":set uc=200".
309.TP
310-nb
311Diviene un Editor server per NetBeans. Vedere la documentazione per dettagli.
312.TP
313-o[N]
314Apri N finestre in orizzontale.
315Se N manca, apri una finestra per ciascun file.
316.TP
317-O[N]
318Apri N finestre, in verticale.
319Se N manca, apri una finestra per ciascun file.
320.TP
321-R
322Modalità "Sola Lettura".
323Imposta l'opzione 'readonly'.
324Si può ancora modificare il buffer, ma siete protetti da una riscrittura
325involontaria.
326Se volete davvero riscrivere il file, aggiungete un punto esclamativo
327al comando "Ex", come in ":w!".
328L'opzione -R implica anche l'opzione -n (vedere sotto).
329L'opzione 'readonly' può essere annullata con ":set noro".
330Vedere ":help 'readonly'".
331.TP
332-r
333Lista file di swap, assieme a dati utili per un recupero.
334.TP
335-r {file}
336Modalità "Recovery".
337Il file di swap è usato per recuperare una sessione di edit finita male.
338Il file di swap è un file con lo stesso nome file del file di testo
339editato, col suffisso ".swp".
340Vedere ":help recovery".
341.TP
342-s
343Modalità silenziosa. Solo quando invocato come "Ex" o quando l'opzione
344"-e" è stata data prima dell'opzione "-s".
345.TP
346-s {scriptin}
347Lo script file {scriptin} è letto.
348I caratteri nel file sono interpretati come se immessi da voi.
349Lo stesso si può ottenere col comando ":source! {scriptin}".
350Se la fine del file di input viene raggiunta prima che Vim termini,
351l'ulteriore input viene preso dalla tastiera.
352.TP
353-T {terminale}
354Dice a
355.B Vim
356quale tipo di terminale state usando.
357Utile solo se il terminale non viene riconosciuto correttamente da Vim.
358Dovrebbe essere un terminale noto a
359.B Vim
360(internamente) o definito nel file termcap o terminfo.
361.TP
362-u {vimrc}
363Usa i comandi nel file {vimrc} per inizializzazioni.
364Tutte le altre inizializzazioni non sono eseguite.
365Usate questa opzione per editare qualche file di tipo speciale.
366Può anche essere usato per non fare alcuna inizializzazione dando
367come nome "NONE".
368Vedere ":help initialization" da vim per ulteriori dettagli.
369.TP
370-U {gvimrc}
371Usa i comandi nel file {gvimrc} per inizializzazioni GUI.
372Tutte le altre inizializzazioni GUI non sono eseguite.
373Può anche essere usata per non fare alcuna inizializzazione GUI dando
374come nome "NONE".
375Vedere ":help gui-init" da vim per ulteriori dettagli.
376.TP
377-V[N]
378Verboso. Vim manda messaggi relativi agli script file che esegue
379e quando legge o scrive un file viminfo. Il numero opzionale N è il valore
380dell'opzione 'verbose'.
381Il valore predefinito è 10.
382.TP
383-v
384Inizia
385.B Vim
386in modalità "Vi", come se il programma eseguibile fosse "vi". Questo ha
387effetto solo quando Vim viene invocato con il nome "ex".
388.TP
389-w {scriptout}
390Ogni carattere immesso viene registrato nel file {scriptout},
391finché non uscite da
392.B Vim.
393Utile se si vuole creare uno script file da usare con "vim -s" o
394":source!".
395Se il file {scriptout} esiste, quel che immettete viene aggiunto in fondo.
396.TP
397-W {scriptout}
398Come -w, ma uno script file esistente viene sovrascritto.
399.TP
400-x
401Uso di cifratura nella scrittura dei file. E' necessario immettere
402una chiave di cifratura.
403.TP
404-X
405Non connetterti al server X. Vim parte più rapidamente,
406ma il titolo della finestra e la clipboard non sono disponibili.
407.TP
408-y
409Eseguire
410.B Vim
411in modalità "Facile" (semplificata), come se l'eseguibile invocato
412sia "evim" o "eview".
413Fa sì che
414.B Vim
415si comporti come un editor che usa solo il mouse e i caratteri.
416.TP
417-Z
418Modalità "Ristretta". Vim si comporta come se invocato con un nome
419che inizia per "r".
420.TP
421--
422Specifica la fine delle opzioni.
423Argomenti specificati dopo questo sono considerati nomi file.
424Si può usare per editare un file il cui nome inizi per '-'.
425.TP
426--echo-wid
427Solo con GUI GTK: Visualizza Window ID su "stdout".
428.TP
429--help
430Vim dà un messaggio ed esce, come con l'argomento "-h".
431.TP
432--literal
433Considera i nomi passati come argomenti letterai, senza espandere
434metacaratteri. Non necessario in Unix, lo shell espande i metacaratteri.
435.TP
436--noplugin
437Non caricare plugin. Implicito se si specifica -u NONE.
438.TP
439--remote
440Connettersi a un server Vim e chiedere di editare i file elencati come altri
441argomenti. Se non si trova un server viene dato un messaggio e i file sono
442editati nel Vim corrente.
443.TP
444--remote-expr {expr}
445Connettersi a un server Vim, valutare ivi {expr} e stampare il risultatoi
446su "stdout".
447.TP
448--remote-send {chiavi}
449Connettersi a un server Vim e spedirgli {chiavi}.
450.TP
451--remote-silent
452Come --remote, ma senza avvisare se non si trova un server.
453.TP
454--remote-wait
455Come --remote, ma Vim non termina finché i file non sono stati editati.
456.TP
457--remote-wait-silent
458Come --remote-wait, ma senza avvisare se non si trova un server.
459.TP
460--serverlist
461Lista i nomi di tutti i server Vim disponibili.
462.TP
463--servername {nome}
464Usa {nome} come nome server. Usato per il Vim corrente, a meno che sia
465usato con l'argomento --remote, nel qual caso indica il server a cui
466connettersi.
467.TP
468--socketid {id}
469Solo con GUI GTK: Usa il meccanismo GtkPlug per eseguire gvim in un'altra
470finestra.
471.TP
472--version
473Stampa la versione di Vim ed esci.
474.SH AIUTO ONLINE
475Battere ":help" in
476.B Vim
477per iniziare.
478Battere ":help argomento" per ricevere aiuto su uno specifico argomento.
479Per esempio: ":help ZZ" per ricevere aiuto sul comando "ZZ".
480Usare <Tab> e CTRL-D per completare gli argomenti
481(":help cmdline-completion").
482Ci sono "tag" nei file di help per saltare da un argomento a un altro
483(simili a legami ipertestuali, vedere ":help").
484Tutti i file di documentazione possono essere navigati così. Ad es.:
485":help syntax.txt".
486.SH FILE
487.TP 15
488/usr/local/lib/vim/doc/*.txt
489I file di cocumentaziona di
490.B Vim
491.
492Usate ":help doc-file-list" per avere la lista completa.
493.TP
494/usr/local/lib/vim/doc/tags
495Il file di tags usato per trovare informazioni nei file di documentazione.
496.TP
497/usr/local/lib/vim/syntax/syntax.vim
498Inizializzazioni sintattiche a livello di sistema.
499.TP
500/usr/local/lib/vim/syntax/*.vim
501File di colorazione sintattica per vari linguaggi.
502.TP
503/usr/local/lib/vim/vimrc
504Inizializzazioni
505.B Vim
506a livello di sistema.
507.TP
508/usr/local/lib/vim/gvimrc
509Inizializzazioni gvim a livello di sistema.
510.TP
511/usr/local/lib/vim/optwin.vim
512Script Vim usato dal comando ":options", un modo semplice
513per visualizzare e impostare opzioni.
514.TP
515/usr/local/lib/vim/menu.vim
516Inzializzazioni del menu gvim a livello di sistema.
517.TP
518/usr/local/lib/vim/bugreport.vim
519Script Vim per generare una segnalazione di errore. Vedere ":help bugs".
520.TP
521/usr/local/lib/vim/filetype.vim
522Script Vim per determinare il tipo di un file a partire dal suo nome.
523Vedere ":help 'filetype'".
524.TP
525/usr/local/lib/vim/scripts.vim
526Script Vim per determinare il tipo di un file a partire dal suo contenuto.
527Vedere ":help 'filetype'".
528.TP
529/usr/local/lib/vim/*.ps
530File usati per stampa PostScript.
531.PP
532Per informazioni aggiornate [in inglese - NdT] vedere la home page di Vim:
533.br
534<URL:http://www.vim.org/>
535.SH VEDERE ANCHE
536vimtutor(1)
537.SH AUTORE
538Buona parte di
539.B Vim
540è stato scritto da Bram Moolenaar, con molto aiuto da altri.
541Vedere ":help credits" in
542.B Vim.
543.br
544.B Vim
545è basato su Stevie, scritto da: Tim Thompson,
546Tony Andrews e G.R. (Fred) Walter.
547In verità, poco o nulla è rimasto del loro codice originale.
548.SH BACHI
549Probabili.
550Vedere ":help todo" per una lista di problemi noti.
551.PP
552Si noti che un certo numero di comportamenti che possono essere considerati
553errori da qualcuno, sono in effetti causati da una riproduzione fin troppo
554fedele del comportamento di Vi.
555Se ritenete che altre cose siano errori "perché Vi si comporta diversamente",
556date prima un'occhiata al file vi_diff.txt
557(o battere :help vi_diff.txt da Vim).
558Date anche un'occhiata alle opzioni 'compatible' e 'cpoptions.