如何在Vim命令行中展开函数参数?

如何在Vim命令行中展开函数参数?,vim,Vim,Vim的插件为在编辑器中进行web查询提供了一种方便的方法。直接从命令行调用时,可以按如下方式执行字典查找: :Utl ol http://dict.leo.org/?search=my+search+term 定义具有相同用途的自定义命令(my+search+term作为用户输入)的正确方法是什么?我似乎无法正确使用此项: command -nargs=1 SearchLeo :exe ":Utl ol http://dict.leo.org/?search=" . expand("<

Vim的插件为在编辑器中进行web查询提供了一种方便的方法。直接从命令行调用时,可以按如下方式执行字典查找:

:Utl ol http://dict.leo.org/?search=my+search+term
定义具有相同用途的自定义命令(
my+search+term
作为用户输入)的正确方法是什么?我似乎无法正确使用此项:

command -nargs=1 SearchLeo :exe ":Utl ol http://dict.leo.org/?search=" . expand("<f-args>")
命令-nargs=1 SearchLeo:exe“:Utl olhttp://dict.leo.org/?search=" . 展开(“”)
这里定义函数参数的正确方法是什么?或者我应该把它变成一个更完整的函数?谢谢

  • 这里可能不需要
    expand()
    ;它只用于扩展当前文件的全局变量(如
    *.txt
    )或特殊变量(如
    %
  • 您引用了两次参数,一次引用到
    会稍微正确一点,尽管它只与变量数量有关),一次逐字引用
  • 使用以下命令:

    command -nargs=1 SearchLeo :exe ":Utl ol http://dict.leo.org/?search=" . <q-args>
    
    命令-nargs=1 SearchLeo:exe“:Utl olhttp://dict.leo.org/?search=" . 
    
    运行良好。非常感谢,也谢谢你的解释!