2012-04-27 16 views
5

Ho due buffer nella mia sessione di vim e ho impostato la sintassi su my vimrc, ho usato minibufexpl per gestire bufs.sintassi Vim off quando si esce da un buffer?

Ho utilizzato : q per chiudere il buf corrente, ma l'altro buf dovrebbe impostare automaticamente la sintassi su Off, devo usare: imposta syntax = on per aprire manualmente l'evidenziazione della sintassi. Qualcuno potrebbe darmi una soluzione che non imposta la sintassi off automatico dopo un buf quit? Grazie!! (Ho provato : bd per chiudere il buf anziché : q, a volte rimane la sintassi ma a volte no).

+1

': set syntax = on' imporrà l'evidenziazione del buffer corrente usando 'syntax/on.script vim', non abiliterà l'evidenziazione della sintassi. – ZyX

risposta

1

È possibile utilizzare l'attivazione della sintassi o la sintassi su vimrc. Per maggiori informazioni usa: h sintassi.

Ok quindi controllare che i file di sintassi sono corrette, dovrebbe looke come questo

au BufNewFile, BufRead * cpp impostato sintassi = cpp11 < - è la linea che ho per i file cpp.

Spero che questo aiuto.

+1

Ho già impostato la sintassi su my vimrc. E il punto è quando esco dall'unico file, altri file si disattiva automaticamente la sintassi. –

0

Un plug-in non funziona correttamente.

Dopo aver chiuso il buffer (e aver perso l'evidenziazione della sintassi), ricercare, ad es.

:verbose set syntax? 

Questo mostrerà qualcosa di simile

syntax=cpp 
    Last set from C:\Program Files\Vim\vim73\syntax\syntax.vim 

Si potrebbe anche essere in grado di vedere ciò che va storto mio fare

:debug quit 

Se tutto il resto fallisce, provare a eliminare fonti di errore disattivando plugin uno alla volta (o rimozione di tutti e abilitazione uno alla volta). Ad un certo punto il problema apparirà/scomparirà e avrai trovato la parte colpevole.

2

Questo potrebbe essere troppo tardi, ma stavo sperimentando lo stesso identico problema e ha scoperto che aggiungendo la riga

set hidden 

alla mia Vimrc risolve questo problema. Questo fa sì che i buff vim hide non vengano chiusi quando si digita ": q" Sembra inoltre che l'evidenziazione della sintassi venga mantenuta tra i file quando navigo con minibufexplorer.

Spero che questo aiuti.

3

Se stai usando minibufexpl.vim, aggiungere il seguente al vostro Vimrc:

let g:miniBufExplForceSyntaxEnable = 1 

sembra essere causato da un bug in vim. Per i dettagli, si riferiscono alla release notes for minibufexpl version 6.3.1

Si noti che questo lavoro per : bd ma non : q

+0

Non funziona in v 6.5.2 (rilasciato il 17 giugno 2013) –

1

può essere che si dovrebbe aggiungere questa linea al gvimrc:

autocmd BufDelete * syntax on 
+0

Testato in v 6.5.2 (rilasciato il 17 giugno 2013) –

Problemi correlati