“@”在Vim的“shellescape(@%,1)”中做了什么?

时间:2017-04-02 02:11:53

标签: vim

在此命令中,“@”符号有什么作用?

:exec '!python' shellescape(@%, 1)

如果我删除它,Vim说:

E15: Invalid expression: %, 1) 
E116: Invalid arguments for function shellescape(%, 1)
E15: Invalid expression: shellescape(%, 1)

修改

回应:

  

这是%寄存器(当前文件名)的内容。

当我输入:h@时,帮助文件会显示:

  

@ {0-9A-Z”。= * +}

     

执行寄存器{0-9a-z“。= * +} [...]的内容。注意不能使用寄存器'%'(当前文件的名称)[...]

这两个引号似乎不一致,shellescape行为似乎与之前的引用一致。

新观察:

以下似乎相同:

:exec '!python' shellescape(@%, 1)

:exec '!python %'

:!python %

0 个答案:

没有答案