@v中的特殊字符是什么意思?

it_*_*ure 2 vim

Register %包含当前文件#的名称,register 包含备用文件的名称.这些寄存器允许显示或插入当前或备用文件的名称.可以使用包含该文件的名称,完整路径或目录.

例如,在目录中/abc,命令vim def/my.txt将编辑文件/abc/def/my.txt.可以输入以下命令以显示所显示的信息.

:echo @%    def/my.txt  directory/name of file     
Run Code Online (Sandbox Code Playgroud)

我想知道@这里的意思.

Ing*_*kat 7

@是一个附加到变量名称的sigil或特殊前缀,它将变量解释为寄存器.其他符号$用于环境变量,&用于Vim选项.

:echo f  " prints variable named f
:echo @f " prints contents of register f
:echo $f " prints contents of environment variable f
:echo &fenc " prints the value of :set fileencodings?
Run Code Online (Sandbox Code Playgroud)

而不是@a,你也可以使用getreg('a'),这是相应的Vimscript函数.这@只是一个方便的捷径.

你会在:help expression-syntax(expr9)下的帮助中找到这个