Я хочу заменить команду: tnext для cscope, но она не работает, как я ожидал.
1) ниже на рисунке показан код, который работает как положено. я могу добраться до 2-го экземпляра символов.
function MyCounter()
if !exists("s:counter")
let s:counter = 1
echo "script executed for the first time"
else
let s:counter = s:counter + 1
echo "script executed " . s:counter . " times now"
endif
endfunction
nmap <space>w :ls<CR>
nmap <space>i :call MyCounter()
nmap <space>n :cs find s <C-R>=expand("<cword>")<CR><CR>2<CR>
2) ниже кода, который не работает
function MyCounter()
if !exists("s:counter")
let s:counter = 1
echo "script executed for the first time"
else
let s:counter = s:counter + 1
echo "script executed " . s:counter . " times now"
endif
endfunction
nmap <space>w :ls<CR>
nmap <space>i :call MyCounter()
nmap <space>n :cs find s <C-R>=expand("<cword>")<CR><CR><C-R>=str2nr(s:counter)<CR>
Разница между фрагментами кода 1 и 2: = str2nr (s: counter)
то есть динамическое вычисление n экземпляров символа при нажатии пользователем n
перед нажатием пробела + n я всегда нажимаю пробел + i
подскажите, пожалуйста, почему не работает второй фрагмент кода.