我正在构建一个自定义的 unite.vim 源,其中一个选择应该能够调用一个可以接受字典的函数
function! s:source.gather_candidates(args, context) abort "{{{
let l:nodeInfo = a:context.file
return [
\{
\ 'word': 'delete the current node',
\ 'kind': 'command',
\ 'source': s:source.name,
\ 'action__command': 'call DeleteNode(' . l:nodeInfo .')',
\ }]
endfunction "}}}
然后只是测试一下,回显字典
function! DeleteNode(node) abort "{{{
let l:currentNode = a:node
echo l:currentNode
endfunction "}}}
但是当我尝试加载我的源代码时,我得到了
Vim(return):E731: using Dictionary as a String
如何将字典(大约 24 个键)传递给函数?