2014-12-10 12 views
7

Nel mio ~/.vimrc ho impostato scheda per me 2 spazi lunghidi vim è diversa per i file .py

set shiftwidth=2 
set tabstop=2 

Tuttavia quando apro un file .py, le schede sono lunghe 4 spazi. Non ho una configurazione specifica per i file python. ~/.vim/after è vuoto e la ricerca di py non genera alcuna linea sospetta.

Avete mai provato questo? Come risolvere un simile comportamento?

+0

Intendi dire che quando apri un file Python _existing_ (che probabilmente ha già 4 spazi)? Vim non si reindirizzerà automaticamente alla tua impostazione preferita se è questo che intendi. –

+0

No, vim mostra '\ t' come 4 spazi sia quando apro un file esistente (con schede per il rientro) sia quando creo un nuovo file con un'estensione' .py' – Amxx

risposta

9

E 'definita nel file filetype plugin di Python generale ($VIMRUNTIME/ftplugin/python.vim):

" As suggested by PEP8. 
setlocal expandtab shiftwidth=4 softtabstop=4 tabstop=8 

dovrebbe essere così, al fine di conformarsi con PEP 8.


@Carpetsmoker aggiunge:

C'è a discussion about this sul vim-dev list @.

È possibile ripristinare questo utilizzando questo nel ~/.vimrc; per esempio:

aug python 
    " ftype/python.vim overwrites this 
    au FileType python setlocal ts=4 sts=4 sw=4 noexpandtab 
aug end 

o con l'aggiunta di impostazioni di configurazione in $HOME/.vim/after.

+0

Perché hai rimosso le mie modifiche? Mi sembra un'informazione utile? Inizialmente avevo fatto la mia risposta, ma avere tutte le informazioni in una singola risposta mi sembravano migliori, perché ciò riduce la quantità di "rumore" e le informazioni duplicate. – Carpetsmoker

+0

Non sono sicuro dell'etichetta qui, ma penso che la modifica non sia completamente in accordo con la sezione "come modificare" nella schermata di modifica (► correggere errori grammaticali o di ortografia ► chiarire il significato senza cambiarlo ► correggere gli errori minori ► aggiungere risorse o collegamenti correlati ► rispettare sempre l'autore originale): si tratta più che di correggere errori grammaticali o di ortografia, chiarendo il significato senza modificarlo o correggere errori minori; non aggiungere risorse o collegamenti (esterni); e ha aggiunto cose che non ho scritto sotto il mio nome senza il mio previo accordo. –

+0

Lo modificherò di nuovo in un momento; per favore, dì se la nuova formulazione va bene per te. –

0

probabilmente hai installato qualche plugin per facilitare la modifica di python, e quei plugin reimpostano alcune opzioni vim.

Si può scoprire da:

  • aprire un file py, verificare se tabstop/shiftwidth è 4
  • quindi eseguire il comando: :verbose set ts e :verbose set sw

potete vedere dove le opzioni sono stati impostati l'ultima volta.

+0

che ha funzionato. I valori in cui è stato eseguito l'overid in/usr/share/vim/vim74/ftplugin/python.vim' come indicato dalla mia Júda Ronén – Amxx

Problemi correlati