Vim 语法高亮问题

Vim 语法高亮问题

我对 vim 有疑问,

我在我的 ubuntu 13.10 上安装了编辑器,一切正常。

但是当我创建文件“.txt 或 .conf”时,突出显示未启用,我输入了“#”和“但没有改变文件中的颜色

但是当我打开文件“.conf”时,突出显示功能已启用。

语法已启用

有人能帮助我吗?

答案1

文件结尾.conf默认没有设置语法。不同的配置文件有不同的语法,因此 vim 不能对所有文件使用相同的语法。为了解决这个问题,vim 会查看整个文件名并将其与在 (我的系统上位于).conf中找到的模式进行比较filetype.vim/usr/share/vim/vim74/filetype.vim

例如,假设你打开了文件apache.conf,vim 会查找filetype.vim直到找到类似以下内容的内容:

       au BufNewFile,BufRead apache.conf*,apache2.conf* setfiletype apache

apache它告诉 vim对以 开头的任何文件使用语法高亮文件apache.conf。尝试创建一个名为 的新文件apache.conf,您应该会得到该文件的 apache 语法高亮。

vim 为文件设置语法的另一种方法是使用模式行。模式行允许您针对特定文件运行 vim 命令。它们位于文件的顶部或底部,如下所示:

# vim: syntax=apache

有关:help modelinevim 中的 modelines checkout 的更多信息。

答案2

juxiliary 的答案是正确的。我发现,当你知道你想要这种风格时,最简单的设置方法是使用他的答案的缩写版本:

:setf apache

您可能希望将他的答案标记为正确。

答案3

根据评论,我认为您的问题是“如果我保存文件,它稍后会突出显示吗”。在保存文件之前,除非您在文件开头添加了一行(例如#!/bin/bash),否则它不会突出显示。突出显示由文件的第一行或文件扩展名定义。

如果根据文件名模式有特殊.conf突出显示,它将在您下次打开文件时显示.conf

所有.txt文件都是纯文本,并且没有任何语法突出显示,除非文件以#!/bin/bash或其他类似的行打开。


TL;DR; 语法高亮不会随文件一起保存。它是在文件打开时由 Vim 内部确定的。(或者,如果是新文件,则在第一次保存时确定)

相关内容