2015-10-27 8 views

risposta

26

Sì. Probabilmente dovresti usare sempre solo syntax enable. E il modo corretto di farlo nel vostro .vimrc per salvaguardare è:

if !exists("g:syntax_on") 
    syntax enable 
endif 

La ragione di questa guardia è che chiamando syntax enable più volte, come quando sourcing .vimrc più volte, sarà clobber qualsiasi colore di evidenziazione si dispone già di impostare. Ho visto questo clobber NERDTree evidenziare, tra le altre cose, senza la guardia.

Anche se la maggior parte degli esempi di Vim mostreranno syntax on, è piuttosto mal progettato, come l'aiuto vi dirà perché consentono è preferito, soprattutto se si sta spesso sourcing .vimrc:

The ":syntax enable" command will keep your current color settings. This 
allows using ":highlight" commands to set your preferred colors before or 
after using this command. If you want Vim to overrule your settings with the 
defaults, use: > 
    :syntax on 

Vim è non molto user friendly, e ci sono molti problemi divertenti come questo!

+0

Ah! Perfezionare. Grazie per la ripartizione @Andy. Che cosa fa esattamente la dichiarazione se safegaurd? –

+0

Impedisce un'esecuzione non necessaria del codice quando si genera '.vimrc'. –

+3

Sono confuso: tu dici "chiamare 'syntax enable' [...] più volte" ciabatta qualsiasi evidenziazione del colore ", ma poi citi l'aiuto di Vim che dice" l'abilitazione della sintassi "manterrà le tue attuali impostazioni di colore". Cos'è questo? –

Problemi correlati