VimCS: Configurazione: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
 
(4 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
{{Template:VimCS}}
{{Template:VimCS}}
= Configurazione =
__TOC__
Personalmente utilizzo una statusbar ben configurata, ma a qualcuno piace avere i numeri delle righe alla sinistra del testo: <br/>
Personalmente utilizzo una statusbar ben configurata, ma a qualcuno piace avere i numeri delle righe alla sinistra del testo: <br/>
visualizza numeri riga - ''':set number''' <br/>
visualizza numeri riga - ''':set number''' <br/>
Riga 10: Riga 10:


L'unica vera comodità che trovo è nel poter ridimensionare facilmente le finestre ma di contro ha che il cursore viene spostato quando si clicca in un punto dello schermo, ed è un comportamento che detesto.
L'unica vera comodità che trovo è nel poter ridimensionare facilmente le finestre ma di contro ha che il cursore viene spostato quando si clicca in un punto dello schermo, ed è un comportamento che detesto.


== .vimrc ==
== .vimrc ==
Riga 26: Riga 25:




* la visualizzazione dei comandi parziali, se stiamo per digitare ''ZZ'' per chiudere Vim, verrà
* la visualizzazione dei comandi parziali, se stiamo per digitare ''ZZ'' per chiudere Vim, verrà mostrata la prima ''Z'', in caso ci fossimo sbagliati basterà usare ''Esc''
mostrata la prima ''Z'', in caso ci fossimo sbagliati basterà usare ''Esc''


'''set showcmd'''
'''set showcmd'''




* la gestione dei buffer, ci sono vari plugin più o meno comodi o invasivi, ho preferito creare delle semplici scorciatoie
* la gestione dei buffer, ci sono vari plugin più o meno comodi o invasivi, ho preferito creare delle semplici scorciatoie. Questo è indispensabile per muoversi tra uno e l'altro senza doverlo prima salvare
 
questo è indispensabile per muoversi tra uno e l'altro senza doverlo prima salvare


'''set hidden'''
'''set hidden'''
Riga 66: Riga 62:




* per la creazione di file html non include i numeri delle righe, se impostati, e usa la formattazione per mezzo di regole css al posto dei tag e attributi di formattazione pesanti e ormai deprecati <br/>
* per la creazione di file HTML non include i numeri delle righe, se impostati, e usa la formattazione per mezzo di regole css al posto dei tag e attributi di formattazione pesanti e ormai deprecati <br/>
'''let html_number_lines=0''' <br/>
'''let html_number_lines=0''' <br/>
'''let html_use_css=1'''
'''let html_use_css=1'''


* per inserire un cancelletto a inizio riga:<br/>
'''nmap à ^i#<ESC>'''<br/>
'''vmap à <C-V>^I#<ESC>'''<br/>
ora, premendo '''à''', è possibile aggiungere un '#' all'inizio di una singola riga (modalità normale) o all'inizio di più righe (dopo averle selezionate in modalità visuale).


== .vim/ ==
== .vim/ ==
Riga 76: Riga 76:


Per <code>.viminfo</code>, aggiungere la seguente riga in <code>.vimrc</code>:
Per <code>.viminfo</code>, aggiungere la seguente riga in <code>.vimrc</code>:
set viminfo='55,<55,s11,:99,h,n~/.vim/viminfo
<pre>set viminfo='55,<55,s11,:99,h,n~/.vim/viminfo</pre>




Riga 83: Riga 83:


Per .vimrc inserire la seguente variabile in bash_profile (o .profile):
Per .vimrc inserire la seguente variabile in bash_profile (o .profile):
export VIMINIT="source $HOME/.vim/vimrc"
<pre>export VIMINIT="source $HOME/.vim/vimrc"</pre>


Per ulteriori informazioni vedere: <br/>
Per ulteriori informazioni vedere: <br/>
Riga 112: Riga 112:




<code>.vim/ftdetect</code>: dove ho inserito il menu di gvim, che è ampiamente customizzabile, per evitare che gli aggiornamenti sovrascrivano l'originale in <code>$VIMRUNTIME/menu.vim</code>; in realtà ftdetect servirebbe per la sintassi dei tipi di file ma pare l'unico modo per farglielo vedere.
<code>.vim/ftdetect</code>: dove ho inserito il menu di gvim, che è ampiamente customizzabile, per evitare che gli aggiornamenti sovrascrivano l'originale in <code>$VIMRUNTIME/menu.vim</code>; in realtà <code>ftdetect</code> servirebbe per la sintassi dei tipi di file ma pare l'unico modo per farglielo vedere.


Per ulteriori informazioni vedere: <br/>
Per ulteriori informazioni vedere: <br/>
Riga 121: Riga 121:


<code>lessvim</code>: lo script che utilizza vim in modalità less e richiama <code>$VIMRUNTIME/macros/less.vim</code>. <br/>
<code>lessvim</code>: lo script che utilizza vim in modalità less e richiama <code>$VIMRUNTIME/macros/less.vim</code>. <br/>
Tengo entrambi i file in home per via di alcune modifiche, un alias bash fa il resto: <br/>
Tengo entrambi i file in home per via di alcune modifiche, un [[alias]] [[Bash]] fa il resto: <br/>
alias less='$HOME/.vim/lessvim'
<pre>alias less='$HOME/.vim/lessvim'</pre>


Lo scopo è avere <code>less</code> con gli stessi vantaggi di Vim, sebbene in certe occasioni non funzioni a dovere, una volta dentro premere il tasto '''h''' per l'help.
Lo scopo è avere <code>less</code> con gli stessi vantaggi di Vim, sebbene in certe occasioni non funzioni a dovere, una volta dentro premere il tasto '''h''' per l'help.


La panoramica è ovviamente parziale e riguarda le mie modeste esigenze.
La panoramica è ovviamente parziale e riguarda le mie modeste esigenze.
[[Categoria: Elaborazione_testi]]

Versione attuale delle 19:11, 12 apr 2013

Vim Cheat Sheet

Sommario

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

Personalmente utilizzo una statusbar ben configurata, ma a qualcuno piace avere i numeri delle righe alla sinistra del testo:
visualizza numeri riga - :set number
rimuove visualizzazione - :set nonumber

C'è anche chi vuole il mouse.
abilita uso del mouse - :set mouse=a
disabilita - :set mouse=

L'unica vera comodità che trovo è nel poter ridimensionare facilmente le finestre ma di contro ha che il cursore viene spostato quando si clicca in un punto dello schermo, ed è un comportamento che detesto.

.vimrc

Il file di configurazione è una cosa molto personale, citando vimgor:
<skizzhg> vimgor, :kill_kittens
<vimgor> The Command that Cannot Be Named. :kill_kittens is what will happen if you use someone else's vimrc.

Voglio però riportare alcuni stralci del mio, in particolare:

  • la statusbar che fornisce molte informazioni sul documento

set laststatus=2
set statusline=(%n)\ %F\ [%{strlen(&fenc)?&fenc:'none'},%{&ff}]%h%m%r%y%=%c,%l/%L\ %P

(fonte: Vim statusline)


  • la visualizzazione dei comandi parziali, se stiamo per digitare ZZ per chiudere Vim, verrà mostrata la prima Z, in caso ci fossimo sbagliati basterà usare Esc

set showcmd


  • la gestione dei buffer, ci sono vari plugin più o meno comodi o invasivi, ho preferito creare delle semplici scorciatoie. Questo è indispensabile per muoversi tra uno e l'altro senza doverlo prima salvare

set hidden


la mappatura dei tasti, <Leader> è il backslash

  • L: elenca i buffer aperti e aspetta un numero per selezionarne uno
  • l: li elenca soltanto
  • b: passa al precedente
  • f: passa al successivo
  • g: alterna tra l'attuale e il precedente, stesso comportamento di Ctrl-^
  • D: rimuove un buffer dalla lista
  • numeri: passaggio dal buffer 1 al 10

nnoremap <Leader>L :ls<CR>:buffer<Space>
nnoremap <Leader>l :ls<CR>
nnoremap <Leader>b :bp<CR>
nnoremap <Leader>f :bn<CR>
nnoremap <Leader>g :e#<CR>
nnoremap <Leader>D :bd<CR>
nnoremap <Leader>1 :1b<CR>
nnoremap <Leader>2 :2b<CR>
nnoremap <Leader>3 :3b<CR>
nnoremap <Leader>4 :4b<CR>
nnoremap <Leader>5 :5b<CR>
nnoremap <Leader>6 :6b<CR>
nnoremap <Leader>7 :7b<CR>
nnoremap <Leader>8 :8b<CR>
nnoremap <Leader>9 :9b<CR>
nnoremap <Leader>0 :10b<CR>


  • per la creazione di file HTML non include i numeri delle righe, se impostati, e usa la formattazione per mezzo di regole css al posto dei tag e attributi di formattazione pesanti e ormai deprecati

let html_number_lines=0
let html_use_css=1

  • per inserire un cancelletto a inizio riga:

nmap à ^i#<ESC>
vmap à <C-V>^I#<ESC>
ora, premendo à, è possibile aggiungere un '#' all'inizio di una singola riga (modalità normale) o all'inizio di più righe (dopo averle selezionate in modalità visuale).

.vim/

Normalmente il file di configurazione e quello della cronologia risiedono nella home, mentre tutti gli eventuali plugin e documentazione, schema colori e altro vanno nella directory .vim/ con una struttura simile a /usr/share/vim/vimcurrent/.
Per coerenza e ordine si farà in modo che i file .viminfo e .vimrc vengano spostati nella directory .vim/ insieme a tutto il resto.

Per .viminfo, aggiungere la seguente riga in .vimrc:

set viminfo='55,<55,s11,:99,h,n~/.vim/viminfo


I parametri con le relative spiegazioni si trovano nell'help:
:help 'viminfo'

Per .vimrc inserire la seguente variabile in bash_profile (o .profile):

export VIMINIT="source $HOME/.vim/vimrc"

Per ulteriori informazioni vedere:
:help VIMINIT


Gerarchia della directory .vim/

.vim/colors: dove risiedono gli eventuali schemi colore aggiunti.

Visualizza lo schema in uso - :colorscheme


.vim/doc: la documentazione dei plugin.

Per far sì che Vim riconosca i cambiamenti, usare il comando:
:helptags .vim/doc/

Per ulteriori informazioni vedere:
:help :helptags


.vim/plugin: i plugin aggiunti

Per ulteriori informazioni vedere:
:help plugin

Visualizza tutti i plugin, temi e altro caricati - :scriptnames


.vim/ftdetect: dove ho inserito il menu di gvim, che è ampiamente customizzabile, per evitare che gli aggiornamenti sovrascrivano l'originale in $VIMRUNTIME/menu.vim; in realtà ftdetect servirebbe per la sintassi dei tipi di file ma pare l'unico modo per farglielo vedere.

Per ulteriori informazioni vedere:
:echo $VIMRUNTIME
:help ftdetect
:help menu.vim


lessvim: lo script che utilizza vim in modalità less e richiama $VIMRUNTIME/macros/less.vim.
Tengo entrambi i file in home per via di alcune modifiche, un alias Bash fa il resto:

alias less='$HOME/.vim/lessvim'

Lo scopo è avere less con gli stessi vantaggi di Vim, sebbene in certe occasioni non funzioni a dovere, una volta dentro premere il tasto h per l'help.

La panoramica è ovviamente parziale e riguarda le mie modeste esigenze.