:nnoremap <buffer> <leader>xyzABC :call SomeFunc('ABC')<CR>
:nnoremap <buffer> <leader>xyzDE :call SomeFunc('DE')<CR>
:nnoremap <buffer> <leader>xyzFoo18 :call SomeFunc('Foo18')<CR>
:nnoremap <buffer> <leader>xyzBar22 :call SomeFunc('Bar22')<CR>
可以按需工作。
我现在正在寻找创建地图的可能性-template,它将允许我删除映射中明显的多余部分,例如
:nnoremap <buffer> <leader> xyz? :call SomeFunc(?)<CR>
,以便我可以将任何值作为参数传递给
SomeFunc
。有这种可能性吗?
#1 楼
就像@ peter-rinckler所说的那样,使用命令可能更容易做到: br />command! -nargs=* Xyz :call SomeFunc(<q-args>)
我不太喜欢
input()
,因为您不能轻易重复这种事情。#2 楼
感谢Peter Rincker的评论,我找到了答案::nnoremap <buffer> <leader> xyz :call SomeFunc(input('Param: '))<CR>
评论
这是另一个示例:nnoremap
–贾莎
19年5月6日在21:13
评论
您可以使用input()或getchar()。但是,对于带有参数的内容,使用命令而不是映射可能更正常。我同意彼得的评论。命令比映射更适合工作。