我对 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 modeline
vim 中的 modelines checkout 的更多信息。
答案2
答案3
根据评论,我认为您的问题是“如果我保存文件,它稍后会突出显示吗”。在保存文件之前,除非您在文件开头添加了一行(例如#!/bin/bash
),否则它不会突出显示。突出显示由文件的第一行或文件扩展名定义。
如果根据文件名模式有特殊.conf
突出显示,它将在您下次打开文件时显示.conf
。
所有.txt
文件都是纯文本,并且没有任何语法突出显示,除非文件以#!/bin/bash
或其他类似的行打开。
TL;DR; 语法高亮不会随文件一起保存。它是在文件打开时由 Vim 内部确定的。(或者,如果是新文件,则在第一次保存时确定)