por que o vim está chamando esse script na inicialização?

2

Estou tentando usar um esquema de cores personalizado.

Na inicialização, posso ver que o vim está carregando meu esquema, mas depois disso ele carrega outro esquema, substituindo o meu.

Aqui está a saída de :scriptnames:

  1: /usr/local/Cellar/macvim/7.4-72/MacVim.app/Contents/Resources/vim/vimrc
  2: ~/.vimrc
  3: ~/.vim/colors/torte2.vim
  4: /usr/local/Cellar/macvim/7.4-72/MacVim.app/Contents/Resources/vim/runtime/syntax/syntax.vim
  5: /usr/local/Cellar/macvim/7.4-72/MacVim.app/Contents/Resources/vim/runtime/syntax/synload.vim
  6: /usr/local/Cellar/macvim/7.4-72/MacVim.app/Contents/Resources/vim/runtime/colors/torte.vim
  7: /usr/local/Cellar/macvim/7.4-72/MacVim.app/Contents/Resources/vim/runtime/syntax/syncolor.vim
  ... and so on

Como você pode ver, meu esquema de cores "torte2" é carregado na linha 3, mas depois é derrotado por "torte" na linha 6.

Por que está fazendo isso e como posso fazer isso parar?

Grant Birchmeier
fonte
11
Você pode compartilhar seu esquema de cores e seu vimrc? É este aqui ? Se sim, você deve mudar let g:colors_name = "torte"para let g:colors_name = "torte2".
Romainl 17/10/2014
Não, minha torta2 é apenas uma cópia da torta comum com algumas modificações que fiz.
Grant Birchmeier
Ainda é chamado de "torta" ou você mudou para "torta2"? Além disso, onde está o seu vimrc?
Romainl 18/10/2014

Respostas:

2

Ao clonar um esquema de cores, você precisa adaptar o g:colors_nameinterior do script; seu valor deve ser idêntico ao nome alterado. Isso ocorre porque o seguinte trecho syntax/synload.vimrecarregará o esquema de cores:

" Set the default highlighting colors.  Use a color scheme if specified.
if exists("colors_name")
    exe "colors " . colors_name
else

Você esqueceu de adaptar o nome, para que o Vim seja recarregado em torte.vimvez do seu torte2.vim.


Como alternativa, você pode renomear seu script clonado para torte.vim; se for mais cedo no 'runtimepath', o Vim preferirá esse que aquele que acompanha o Vim.

Ingo Karkat
fonte
Ah, sim, foi exatamente o que eu fiz. Eu não notei g:colors_namedentro do esquema que copiei, então ainda dizia 'torta'. Assim que eu mudei para 'torte2', o problema foi resolvido. Obrigado!
Grant Birchmeier