Vim: как использовать переменные в vimrc? - PullRequest
7 голосов
/ 10 апреля 2009

вот что я пытаюсь сделать, простая функция для приращения глобальной переменной. Работает нормально.

let g:high_ind = 1

fun! IncHighlightInd()
  let g:high_ind = (g:high_ind + 1) %10
  return g:high_ind
endf

Я хочу использовать эту переменную в map

map <C-h> :call IncHighlightInd() <CR> :Highlight g:high_ind <CR>

Но g:high_ind не распознается как переменная. Как использовать эту переменную?

Или, что еще интереснее, возможно ли сделать что-то подобное ниже?

map <C-h> :Highlight IncHighlightInd() <CR>

1 Ответ

9 голосов
/ 10 апреля 2009

Вы должны использовать: exe или c_CTRL-R _ =:

nnoremap <c-h> :exe ":Highlight ".IncHighLightInd()<cr>
nnoremap <c-h> :Highlight <c-r>=IncHighLightInd()<cr><cr>

Кстати, я подозреваю, что вам стоит взглянуть на эту страницу: Выделите несколько слов на vim.wikia.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...