Vim 的 Utl插件提供了一种在编辑器中进行网络查询的便捷方式。当直接从命令行调用时,字典查找可以像这样完成:
:Utl ol http://dict.leo.org/?search=my+search+term
定义具有相同目的的自定义命令的正确方法是什么(my+search+term
是用户输入)?我似乎无法获得 <f-args>
就在这个:
command -nargs=1 SearchLeo :exe ":Utl ol http://dict.leo.org/?search=" . expand("<f-args>")
在这里定义函数参数的正确方法是什么?或者我应该把它变成一个更完整的功能?谢谢!
最佳答案
- 你可能不需要
expand()
这里;它仅用于扩展 glob(如*.txt
)或特殊变量,如%
对于当前文件。 - 你引用了这个论点两次,一次通过
<f-args>
(<q-args>
会稍微更正确一些,尽管它只与可变数量的参数有关),一次字面意思。
使用这个:
command -nargs=1 SearchLeo :exe ":Utl ol http://dict.leo.org/?search=" . <q-args>
关于vim - 如何在 Vim 命令行中扩展函数参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14489320/