asyncrun.vim icon indicating copy to clipboard operation
asyncrun.vim copied to clipboard

能否提供个选项禁止展开变量,我需要原样传参数

Open epheien opened this issue 6 years ago • 2 comments

例如我需要用asyncrun封装rg命令,参数原样传给rg

epheien avatar Feb 16 '19 18:02 epheien

比如哪些变量?

skywind3000 avatar Feb 16 '19 18:02 skywind3000

command -nargs=+ Rg AsyncRun rg --vimgrep <args>
Rg videm#wsp#InitWorkspace

输出

|| [rg --vimgrep videmplugged/asyncrun.vim/plugin/asyncrun.vimwspplugged/asyncrun.vim/plugin/asyncrun.vimInitWorkspace]
|| [Finished in 0 seconds with code 1]

已知这个 # 强制展开和 -complete=file 有关,当然,插件里面还有一堆字符串替换操作,也是隐患 考虑过直接调用asyncrun#xxx 函数直接执行,但是这样的话,貌似无法使用 vim-plug 的按需加载 应该是提供一个纯命令,不展开任何字符的版本,这样方便封装一些命令,然后通过在命令后面跟参数控制行为,类似一个命令包装器,如 time xargs 等

在shell里面,防止扩展是通过引号和双引号控制的 然而如果vim命令开启-complete=file,一些扩展貌似无法控制(如#),这个就比较蛋疼了

epheien avatar Feb 17 '19 02:02 epheien