2016-10-08 2 views
0

Я пишу свою собственную тему VIM и использовать эту функцию, чтобы ускоритьподсветка в Vim

fun <sid>hi(group, guifg, guibg, ctermfg, ctermbg, attr) 
    if a:guifg != "" 
    exec "hi " . a:group . " guifg=#" . s:gui(a:guifg) 
    endif 
    if a:guibg != "" 
    exec "hi " . a:group . " guibg=#" . s:gui(a:guibg) 
    endif 
endfun 

И называть его

call <sid>hi("htmlTag", s:gui05, "") 

Но мне любопытно, о том, как пустой " ».

Поскольку он пропускает запись, если это «», будет выход функции в конечном итоге

hi htmlTag guifg=#FFFFFF guibg=NONE 

где пустая строка вычисляется бойкостью, как NONE

или

hi htmlTag guifg=#FFFFFF 

Просто пропустил все вместе?

ответ

-1

Я не вижу, как использование этой функции «ускорит процесс», особенно для ваших пользователей.

В любом случае, call <sid>hi("htmlTag", s:gui05, ""), вероятно, вызовет ошибку из-за всех отсутствующих параметров.

Эта команда, которая использует правильное число параметров, call <sid>hi("htmlTag", s:gui05, "", "", "", "") бы очевидно даст вам этот выход:

hi htmlTag guifg=#FFFFFF 

Там нет никаких оснований ожидать, что ваша функция, чтобы сделать что-нибудь, что это не в самой функции.

+0

Недопустимые параметры - это ошибка копирования. Но спасибо. – mhartington

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