2012-01-02 2 views
4

Я пытаюсь определить функцию пользователя в vim, чтобы изменить текущую цветовую схему, а затем переопределить некоторые настройки темы, чтобы она работала лучше с моей прозрачной конфигурацией терминала. Я не могу найти никакой информации о том, как вызвать set строк внутри функции.Пользовательские функции в Vim

Это передает то, что я хотел бы выполнить:

function SetColorscheme (colorscheme) 
    set colorscheme a:colorscheme 
    hi Normal ctermbg=NONE 
    hi LineNr ctermbg=NONE 
endfunction 

И я в настоящее время называют это так:

:call SetColorscheme ('wombat256') 

В настоящее время vim жалуется на недостающие скобки.

Какой правильный синтаксис для того, что я пытаюсь сделать здесь?

ответ

7

colorschemeне вариант, который вы используете с командой set, это собственная команда. Так что попробуйте это для линии colorscheme:

execute 'colorscheme ' . a:colorscheme 
+0

Nice - спасибо. В первый раз я пропустил пробел после 'colorscheme'. :) Мне нужно заняться скриптом 'vim', но сейчас я глубоко погружаюсь в' node.js' и 'backbone.js' ... Только так много полосы пропускания. –

Смежные вопросы