Vim:如何创建一个等待密钥并使用它的宏/命令?

Mai*_*tor 3 vim macros command

例如,我想暂时映射到fxsj.也就是说,当我按q时,VIM将执行fxsqj.当我按k时,VIM将执行fxskj.等等.

kev*_*kev 5

您可以使用getchar(),例如:

nnoremap <F2> :call Fun()<CR>
function! Fun()
    let c = nr2char(getchar())
    if c=='q' || c=='k'
        exec 'normal fxs'.c.'j'
    endif
endfunction
Run Code Online (Sandbox Code Playgroud)