2012-02-17 22 views
11

Qualche tempo fa, ho dovuto metterePrevent (g) vim dai commenti auto-indentazione

filetype plugin on 

nel mio Vimrc per un plugin che uso.

Ma questo ha causato un cambiamento di autoindent, che mi fa impazzire: ogni volta che scrivo un commento "//", e quindi premere invio, l'autoindentazione di vim immette automaticamente un altro "//" nella riga successiva. Ma hey, sto usando i commenti a una riga, perché dovrei usarlo di nuovo nella riga successiva (ok, non ci sono discussioni a riguardo qui;))?

// This is a comment. <ENTER> 
// <-- vim automatically puts '// ' there 

Cosa posso fare per evitare questo? Io uso l'impostazione autoindent nel mio file vim. Ho già provato

filetype plugin indent off 

ma non funziona.

risposta

8

Dai uno sguardo a :h formatoptions e :h fo-table. Le opzioni che devi disattivare sono r e o. Disattivandoli impedisce a vim di inserire automaticamente il leader dei commenti (in questo caso "//") quando si preme entrare in modalità inserimento o quando si preme o o O in modalità normale.

+3

"set formatoptions = -o" non ha funzionato in realtà, anche se la documentazione dice così. Sto usando "set formatoptions = tnq" adesso. Grazie! http://stackoverflow.com/questions/6076592/vim-set-formatoptions-being-lost era anche utile. – knub

5

Vedere :help 'formatoptions' - So quanto è fastidioso questo!

Prova questo:

:set fo-=or 
+1

In realtà mi piace quella funzione. Ogni tanto devo cacciare di nuovo questa impostazione per girarla _ su_. :-) –