如何在Vim中获取用户定义命令的选项卡完成?

时间:2014-07-22 17:01:24

标签: vim

我正在编写一个以目录为参数的小函数。

function! GetDirectoryAndDoSomething(default)
         :let directory = input('Directory: ', a:default)
         "Call Some Function
endfunction

如果我调用GetDirectoryAndDoSomething('。'),这可以很好地工作,但是因为它是一个字符串输入,所以目录没有Tab完成。我怎样才能真正将标签补充作为用户输入用于目录?

1 个答案:

答案 0 :(得分:2)

您可能希望-complete=dir用于您的命令。

例如:

command -nargs=+ -complete=dir Blah :echo "<args>"

这将回显用户作为参数放入Blah的任何内容,但更重要的是,它将完成参数的任何部分作为目录。

了解更多内容阅读:h :command-completion