如何在vim中显示实际的语法高亮?

7

最近我使用vim文本编辑器写了一个没有文件扩展名的文本文件,并对所有单引号之间的单词(如'word')和以冒号结尾的所有单词(如word:)进行了文本高亮。

我喜欢这种高亮方式。

但是,因为我没有输入任何命令,通常命令以ESC:command开始,所以我很惊讶这是怎么发生的。

是否有一种命令可以显示实际正在使用的语法高亮?

我已经尝试了:set syntax=php命令,它似乎类似,只是对于像word:这样的单词使用不同的颜色。

有人有建议吗?


你想了解语法吗?还是想了解突出显示文本中的 "hi" 信息? - Kent
问题源于突出显示没有扩展名的文件。因此,我想知道vim检测到的语法情况。正如我在评论中提到的那样,vim检测到的makefileman make建议的要多。zaraks的回答:echo &syntax给了我提示。 - John Goofy
尝试使用 :verb set ft 命令,会得到更多有用的信息。 - Sato Katsura
请参见 https://superuser.com/questions/686241/how-do-i-tell-what-syntax-file-is-being-used。 - user26742873
2个回答

6

请尝试输入以下命令:

:echo &syntax

这将显示syntax变量的值。

这个可以用,谢谢。它为“make”回显语法高亮,但它不是一个make文件。它只是命名为“how_to_makefile”,但这似乎是另一个问题/疑问。 - John Goofy
看起来vim会将任何名为textstring_makefilemakefile_textstring的文件视为makefile。 - John Goofy
你是对的 - vim检查文件名以确定文件类型,这可以用于设置语法变量。您可以在此处阅读更多信息:http://vimdoc.sourceforge.net/htmldoc/filetype.html。 - zarak
1
是的,我已经阅读了这个页面。但是没有找到任何信息。如果我在vim中执行:filetype detection,vim既不会打印任何信息,也不会有文件扩展名。我尝试了几个文件名,但似乎我之前评论中的变量让vim检测到一个不被“man make”推荐的“makefile”。 - John Goofy

5
set option=value "set the option with value
set option?      "read/print the current value of the option
set option!      "set the option with opposite value, like set nu and set nu!

选项值也保存在变量&option中,因此您可以以脚本方式读取。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接