:source % 是什么意思?

:source % 是什么意思?

当我添加 vim 插件时,VimAwesome 文档说:source %。这是什么意思?我想明白%其中的含义。

答案1

在 vim 中,%扩展为当前缓冲区中打开的文件的名称(路径)。在这种情况下,当前缓冲区中的文件似乎是实现 VimAwesome 的脚本。

:source命令将读取该文件并解释其中的 VimScript 指令,因此该命令将有效地将 vim 插件加载到当前的 vim 会话中。

答案2

vim 使用的钥匙%(当前文件/缓冲区)和#(备用文件/缓冲区)。

在任何 vi-(模仿/仿真/克隆)中,您可以使用这些字符来引用当前文件名和“其他”文件。在大多数终端/键盘上,您可以用于controlshift6在当前/备用缓冲区之间切换,尽管在POSIX vi。它只会到此为止:

<反斜杠>转义'%'任何 ex 命令的文件参数中出现的字符应替换为当前路径名;未逃脱的'#'字符应替换为备用路径名。如果出现以下情况,则为错误'%'或者'#'参数中的字符未转义,并且未设置其相应的值。

答案3

vi 已经支持特殊符号作为命令行中某些文件的快捷方式。 Vim 建立在其之上;您可以在以下位置找到信息::help cmdline-special

%符号特别指当前缓冲区的文件规范。还有一个同名寄存器 ( :help quote_%),因此您也可以通过 将该值插入到命令行中<C-r>%。或者,正如第一个帮助主题提到的,您可以使用它来打印解析值:

:echo expand('%')

:source %命令在~/.vimrc配置上使用时将重新加载配置。您可以通过退出并重新启动 Vim 来达到相同的效果,但这样更快。请注意,您的 Vim 配置需要清晰地编写才能正常工作。如果不是,:autocmds 可能会重复,或者您可能会收到有关现有映射的错误。

相关内容