注册%
包含当前文件的名称,注册#
包含备用文件的名称。这些寄存器允许显示或插入当前或备用文件的名称。可以使用包含该文件的名称,完整路径或目录。
例如,在目录/abc
中,命令vim def/my.txt
将编辑文件/abc/def/my.txt
。可以输入以下命令以显示所显示的信息。
:echo @% def/my.txt directory/name of file
我想知道@
在这里的含义。
答案 0 :(得分: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?
您也可以使用@a
代替getreg('a')
,这是相应的Vimscript函数。 @
只是一个方便的捷径。
您可以在:help expression-syntax
(expr9
)