Vim (Italiano)

From ArchWiki
Revision as of 21:53, 18 October 2011 by Maveloth (Talk | contribs) (Deleting: tradotto)

Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Tango-preferences-desktop-locale.pngThis article or section needs to be translated.Tango-preferences-desktop-locale.png

Notes: please use the first argument of the template to provide more detailed indications. (Discuss in Talk:Vim (Italiano)#)
Attenzione: Questo articolo è in fase di traduzione. Seguite per ora le istruzioni della versione inglese.
Sommario help replacing me
Un tutorial base, ed alcuni consigli per la configurazione dell'editor di testi per console/terminale.

"Vim is an advanced text editor that seeks to provide the power of the de-facto UNIX editor ‘vi’, with a more complete feature set." Vim is not a simple text editor like nano or pico. It does require some time to learn, and a great amount of time to master.

Vim is designed to make your fingers work as little as possible, and you should never have to use the mouse. This may seem odd, but once you master vim, you’ll begin to understand the reasoning.

Feature

  • Vim è molto potente per effettuare editing avanzati
  • Espandibile, grazie alle opzioni di configurazione
  • Semplici e robuste scorciatoie da tastiera
  • Evidenziazione della sintassi

Installazione

  • Per installare vim per la linea di comando
pacman -S vim
  • Per installare la versione con la GUI (fornisce vim):
pacman -S gvim
Nota: Vim non è più compilato con l'opzione X server. Per molti utenti, significa che la normale funzione di copia e incolla dagli appunti di un ambiente grafico non funzionerà. Se questa è una operazione fondamentale, considerare l'installazione di Template:Package Official che include una versione di Vim con questo supporto. (Attribution)

Uso

Questa è una panoramica base su come utilizzare vim. Alternativamente, è possibile utilizzare Template:Codeline per familiarizzare con l'editor. Vim ha quattro differenti modalità:

  • Command mode: i tasti premuti vengono interpretati come comandi.
  • Insert mode: i tasti premuti vengono inseriti nel file.
  • Visual mode: i tasti premuti selezionanao, tagliano o copiano il testo.
  • Ex mode: una modalità di input per comandi addizionali (esempio salvare un file, sostituire parti di testo, ecc.).

Editing base

Se si avvia vim con:

$ vim somefile.txt

si vedrà un documento vuoto (presumendo che somefile.txt non esista. Se esiste, si vedrà il suo contenuto). Non sarà possibile modificarlo immediatamente - la modalità in cui si avvia vim è la modalità comando(Command Mode). In questa modalità sarà possibile utilizzare i comandi vim dalla tastiera.

Nota: Vim è un esempio dello stile Unix. Questo significa che non è vistoso, e non lascerà ferme le nostre mani. Non ha assistenti o giochi integrati. Esso però ci permetterà comunque di portare a termine il lavoro, ed anche velocemente. Anche tutti i suoi comandi sono case sensitive. A volte i comandi maiuscoli sono una versione con effetto più ampio (Template:Keypress sostituisce un carattere, Template:Keypress sostituisce una linea), altre volte sono comandi completamente diversi (Template:Keypress sposta il cursore in basso, Template:Keypress unisce due linee).

Per inserire il testo (prima del cursore) usare il comando Template:Keypress. Template:Keypress (i maiuscola) entra in inserimento all'inizio della linea. Per aggiungere del testo dopo il cursore (quello che la maggior parte degli utenti si aspetta) premere Template:Keypress. Premendo Template:Keypress posizionerà il cursore per l'inserimento alla fine della linea.

Si può tornare in modalità comando, in qualsiasi momento premendo Template:Keypress.

Spostamento

In vim, è possibile spostare il cursore usando le frecce della tastiera, ma questa non è considerata la vim way. Si dovrebbe spostare la mano tropo a destra dalla normale posizione di battitura per raggiungere le frecce, e poi ritornare in posizione. Non è divertente.

In vim ci si può spostare in basso premendo Template:Keypress. Si può ricordare perché la lettera "j" punta verso il basso. Per spostare il cursore in alto premendo Template:Keypress. A sinistra con Template:Keypress (si trova a sinistra di "j"), ed a destra con Template:Keypress (L minuscolo).

Template:Keypress posizionerà il cursore all'inizio della linea, e Template:Keypress alla fine di essa.

Nota: Template:Keypress e Template:Keypress sono comunemente utilizzati nelle espressioni regolari per rappresentare l'inizio e la fine della linea. Le espressioni regolari sono molto potenti e comunemente usate negli ambienti *nix, quindi per ora sarà ingannevole, ma più avanti si capirà "l'idea" dietro a molti di queste combinazioni da tastiera.

Per spostarsi di una parola premere Template:Keypress. Template:Keypress considera come appartenenti alla parola più caratteri (ad esempio gli underscore, i trattini come parte della parola). Per tornare indietro di una parola si usa Template:Keypress. Anche in questo caso Template:Keypress considera come appartenenti alla parola più caratteri. Per avanzare fino alla fine di una parola Template:Keypress, Template:Keypress} per comprendere altri caratteri.

Per spostarsi all'inizio di una frase Template:Keypress effettuerà lo spostamento. Template:Keypress farà invece l'opposto, spostandosi alla fine della frase. Per uno spostamento maggiore Template:Keypress posizionerà il cursore all'inizio del paragrafo. Template:Keypress sposterà il cursore alla fine dell'intero paragrafo.

Per spostarsi all'inizio dello schermo, Template:Keypress effettuerà lo spostamento. Template:Keypress sposterà il cursore al centro dello schermo, ed Template:Keypress alla fine della schermata. Template:KeypressTemplate:Keypress posizionerà il cursore all'inizio del file, Template:Keypress invece alla sua fine. Template:Keypress+Template:Keypress permetterà di scorrere pagina per pagina.

Ripetere i comandi

Se un comando è preceduto da un numero, allora questo comando verrà eseguito un numero di volte uguale al numero premuto (ci sono delle eccezioni, ma possono avere senso, come il comando Template:Keypress). Ad esempio premendo Template:KeypressTemplate:Keypress ed inserendo il testo "Help! " e successivamente Template:Keypress verrà inserito il testo "Help! Help! Help! “. Premendo Template:KeypressTemplate:Keypress il cursore si sposterà in avanti di due paragrafi. Questo è utile con alcuni dei comandi di seguito.

Cancellare

Il comando Template:Keypress cancellerà il carattere sotto al cursore. Template:Keypress cancellerà il carattere prima del cursore. Qui è dove la funzione dei numeri diventa interessante. Template:KeypressTemplate:Keypress cancellerà 6 caratteri. Premere Template:Keypress (punto) ripeterà il comando precedente. Quindi, ipotizzando di avere la parola "foobar" in diversi punti, ma dopo averci pensato, si preferisce usare la parola "foo". Spostare il cursore sopra la lettera "b", premere Template:KeypressTemplate:Keypress, spostare il cursore sulla successiva parola "foobar" e premere Template:Keypress (punto).

Il comando Template:Keypress comunicherà a vim che si intende cancellare qualcosa. Dopo aver premuto Template:Keypress, sarà necessario indicare cosa cancellare. Si possono utilizzare anche i comandi di movimento. Template:KeypressTemplate:Keypress cancellerà finito alla prossima parola. Template:KeypressTemplate:Keypress cancellerà fino all'inizio della linea. Anteporre un numero al comando di eliminazione funzionerà altrettanto: Template:KeypressTemplate:KeypressTemplate:Keypress cancellerà fino alle tre parole successive. Template:Keypress (maiuscolo) è una scorciatoia per cancellare fino alla fine della linea (come Template:KeypressTemplate:Keypress). Premere Template:KeypressTemplate:Keypress cancellerà tutta la linea.

Per cancellare e sostituire la parola corrente, posizionare il cursore sulla parola ed eseguire il comando Template:KeypressTemplate:Keypress. Questo comando cancellerà la parola e cambierà la modalità in inserimento. Per sostituire una singola lettera usare Template:Keypress.

Annulla e ripeti

Vim ha una funzione appunti integrata (anche nota come buffer). Le azioni possono essere annullate con il tasto Template:Keypress e ripetute con la combinazione Template:Keypress+Template:Keypress.

Visual Mode

Pressing v will put you in visual mode . Here you can move around to select text, when you’re done, you press y to yank the text into the buffer (copy), or you may use c to cut. p pastes after the cursor, P pastes before. V, Visual Line mode, is the same for entire lines. Ctrl-v is for blocks of text.

Note: Whenever you delete something, that something is placed inside a buffer and is available for pasting.

Search and Replace

To search for a word or character in the file, simply use / and then the characters your are searching for and press enter. To view the next match in the search press n.

To search and replace use the substitute :s/ command. The syntax is: Template:Codeline. For example:

Command        Outcome
:s/xxx/yyy/    Replace xxx with yyy at the first occurence
:s/xxx/yyy/g   Replace xxx with yyy first occurrence, global (whole sentence)
:s/xxx/yyy/gc  Replace xxx with yyy global with confirm
:%s/xxx/yyy/g  Replace xxx with yyy global in the whole file

You can use the global :g/ command to search for patterns and then execute a command for each match. The syntax is: Template:Codeline.

Command  Outcome
:g/^#/d  Delete all lines that begins with #
:g/^$/d  Delete all lines that are empty

Saving and Quitting

To save and/or quit, you will need to use Ex mode. Ex mode commands are preceded by a :. To write a file use :w or if the file doesn’t have a name :w filename. Quitting is done with :q. If you choose not to save your changes, use :q!. To save and quit :x. There is also another shortcut for saving and then quitting which is the combination of <shift>zz

Additional Commands

  1. Pressing s will erase the current letter under the cursor, and place you in insert mode. S will erase the whole line, and place you in insert mode.
  2. o will create a newline below the line and put you insert mode, O will create a newline above the line and put you in insert mode.
  3. yy will yank an entire line
  4. cc will delete the current line and place you in insert mode.
  5. * will highlight the current word and n will search it

Configuration

Vim's personal configuration file is located in the home directory: Template:Filename. Advanced users tend to keep a well-tailored Template:Filename. The global configuration file is located at Template:Filename. The fall-back Template:Codeline variable is defined as Template:Filename. For example, to create a global colorscheme the Template:Filename colorscheme file should be stored in Template:Filename.

Currently, the vim global configuration in Arch Linux is very basic and differs from many other distributions' default vim configuration file. To get some commonly expected behaviors (like syntax highlighting, return to the line of the last edit...), consider using vim's example configuration file:

cp /etc/vimrc /etc/vimrc.bak
cp /usr/share/vim/vim73/vimrc_example.vim /etc/vimrc

Backup Files

Vim by default creates a backup of an edited file in the same directory as the file called Template:Filename. To prevent clutter, many users tell vim to use a backup directory:

set backupdir=~/.vim/backup,/tmp

Or, it's possible to even disable this behavior:

set nobackup
set nowritebackup
set noswapfile    ! (additionally disable swap files)

Wrap Searches

set wrapscan

Check Spelling

set spell

Vim will now highlight incorrectly spelled words. With the cursor on a misspelled word, use z= to view suggested corrections.

Only English language dictionaries are installed by default, more can be found at the vim ftp archive. After downloading the spl files for the given language (e.g. hu.cp1250.spl, hu.iso-8859-2.spl and/or hu.utf-8.spl for Hungarian) into Template:Filename, run:

:setlocal spell spelllang=LL

To activate spell checking for the selected language (i.e. Template:Codeline for the above mentioned example).

Syntax Highlighting

To enable syntax highlighting (vim supports a huge list of programming languages):

filetype plugin on
syntax on

Example Template:Filename

An example Template:Filename covering common options.

Template:File

Some more examples can be found in #Resources.

Merging Files (Vimdiff)

Vim includes a diff editor (a program that can merge differences between two files). Begin with Template:Codeline; to use:

]c :        - next difference
[c :        - previous difference
Ctrl+w +w   - switch windows
do          - diff obtain
dp          - diff put
zo          - open folded text
zc          - close folded text
:diffupdate - re-scan the files for differences

Vim Tips

Specific user tricks to accomplish tasks.

Line Numbers

  1. Show line numbers by Template:Codeline.
  2. Jump to line number Template:Codeline.

Substitute on Lines

To only substitute between certain lines:

:n,ns/one/two/g

For example, to replace instances of 'one' with 'two' between lines 3&4, one would execute:

:3,4s/one/two/g

Make Vim restore cursor position in files

If you want the cursor to appear in its previous position after you open a file, add the following to your Template:Filename:

if has("autocmd")
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g`\"" | endif
endif

See also this tip in Vim Wiki.

Empty space at the bottom of gvim windows

When using a window manager configured to ignore window size hints, gvim will fill the non-functional area with the GTK theme background color.

A solution is to make a more pleasing background color: just put the following lines in Template:Filename:

style "vimfix" {
  bg[NORMAL] = "#242424" # this matches my gvim theme 'Normal' bg color.
}
widget "vim-main-window.*GtkForm" style "vimfix"

Resources

Official

Tutorials

Example configurations

Other

  • HOWTO Vim -- Gentoo wiki article which this article was based on (author unknown).