怎样根据不同的语言调用不同的vim配置文件

怎样根据不同的语言调用不同的vim配置文件,第1张

如果 vim 能够识别某种语言的类型,那么就会加载和该类型有关的语言配置。如键映射、语法高亮等。

如果你想自己增加一些需要的配置文件,那么在 ~/.vim/ 下(windows 系统则是我的文档下的 vimfiles 文件夹下)增加配置文件即可(如果没有这个文件夹,自己创建就好,但名字一定不要搞错)。

这个文件夹下,还有如下子文件夹(依然没有就创建):

after/

autoload/

colors/

compiler/

doc/

ftdetect/

ftplugin/

indent/

keymap/

plugin/

syntax/

其中 ftplugin 用于你自己定义类型文件的扩展插件,ftdetcet 用来定义类型文件自动识别,indent 用于定义类型文件的自动缩进,syntax 用于定义类型文件的语法高亮。

如果你要定义 c 语言的特殊配置,文件名就要叫 c.vim。如果是 python,文件名就是 python.vim。

换言之,你想定义一组 c 言语键映射,就写一个叫 c.vim 的脚本(这需要不少技巧,需要学习一些编写 vim 脚本的知识),然后放到 ftplugin 里去。如果是想定义c语言的语法高亮,就写一个 c.vim 的语法高亮脚本,放到 syntax 里面。

由于 vim 已经自带了很多这样的脚本,(在 vim 的安装目录下,目录的组织形式和你自定义的一样),所以通常不需要自己配置太多。如果自己有需要,可以简单的加一些。

如果你的问题是指,某个语言文件没有被正确识别,那么可以了解下 vim 自动识别的过程:

首先 vim 根据文件的扩展名来判断文件的内容,比如 .c 就会认为是 C 语言文件。.py 就会认为是 python。.txt 就会认为是普通文本。

如果没有扩展名的文件,vim 也会通过文件内容来做简单的识别。这一般是扫描文件的开头数行(有些语言只扫描前5行,也有些会扫描几百行),看是否出现某种语言的特征。一但出现,便识别成相应的语言。但这发生在加载一个文件的时候。如果你是新建了一个没有扩展名的文件,那么之后再往里输入内容,vim 就不会再去识别了。

如果一个文件没有被识别,或识别错误。你也可以手动指定:

:setf c

来把之设置成你需要的语言。c 那里写实际语言的名字。如果你发现之后文件的内容正确的显示了语法高亮,那么就说明这个设置已经成功了。

配置文件在哪里

当我们使用Vim时,

你需要知道一系列的配置文件.

这些配置文件的位置依赖于Vim的安装位置和你所使用的 *** 作系统.

通常,

有三个配置文件,

你是必须知道在哪里能找到的.vimrc

这是Vim最主要的配置文件.

它有两个版本,

全局版本(global)和用户版本(personal)).

全局vimrc文件放在你安装Vim的目录中.

你可以打开vim,

在普通模式下输入下面的命令来找出这个目录的位置:echo

$VIM

结果应该是这样的:

Linux:

/usr/share/vim/vimrc

Windows:

c:\program

files\vim\vimrc

用户版本的vimrc文件放在你的主目录下.

主目录的位置依赖于你的 *** 作系统.

Vim最初是为Unix及类Unix *** 作系统提供的,

所以用户版本的vimrc文件都是通过在文件名的最前面加一个点来设置成隐藏文件.

这是在类Unix上设置隐藏文件的方法,

但不适用于Microsoft

Windows.

所以呢,

vimrc文件与 *** 作系统有关.

应该是这样的:

Linux:

/home/kim/.vimrc

Windows:

c:\documents

and

settings\kim\_vimrc

你可以在Vim的普通模式下输入下面的命令,

来找出Vim认为的你的系统的主目录的位置:

:echo

$HOME

vimrc文件包含的是ex

(vi的前身)

命令,

一条命令一行.

并且vimrc文件也是增加Vim配置信息的默认方式.

你的vimrc可以将其他的文件

(包含着配置信息)

作为外部资源.

在vimrc文件里,

你可用以source命令来实现:

source

/path/to/external/file

gvimrc文件是专为Gvim的配置文件.

它和上面提到的vimrc文件很相似,

并且是放在同一个目录下的

(也是分为用户版和全局版),

如:

Linux:

/home/kim/.gvimrc

/usr/share/vim/gvimrc

Windows:

c:\documents

and

settings\kim\_gvimrc

c:\program

files\vim\

这个文件是用来设置只有Gvim才能使用的GUI设置.exrc

这是文件是用作与vi或ex向后兼容用的.

它也是和vimrc文件放在同一个目录,

当然也是分为用户版和全局版).

然而,

除非你想用vi兼容的模式来使用用Vim,

否则你根本就不会用到这个文件.

没有什么是必备的. 各人有各人喜好.

自己用起来觉得哪方面不爽就添加上哪方面.

常年下去你的vim就是你专属的超顺手的vim了.

Vim是世界上最强大的文本编辑器之一。但同时他也被称为程序员的编辑器。对编程做了很多优化。怎么能说和编程没有半毛关系呢?退一万步来讲写代码总得有编辑器吧,这就算是有半毛钱关系了吧。

下边我简单说一下常见的编程用的基本配置,这些配置只要写在vim的配置文件中就可以了。

配置文件目录:

在linux下一般用~/.vimrc文件

windows下一般在用户文件夹下的_vimrc文件或vim安装目录下的_vimrc文件。

设置:

"传说中的去掉边框用下边这一句

set go=

"设置配色,这里选择的是desert,也有其他方案,在vim中输入:color 在敲tab键可以查看

color desert

"设置背景色,每种配色有两种方案,一个light、一个dark

set background=light

"打开语法高亮

syntax on

"显示行号

set number

"设置缩进有三个取值cindent(c风格)、smartindent(智能模式,其实不觉得有什么智能)、autoindent(简单的与上一行保持一致)

set cindent

"在windows版本中vim的退格键模式默认与vi兼容,与我们的使用习惯不太符合,下边这条可以改过来

set backspace=indent,eol,start

"用空格键替换制表符

:set expandtab

"制表符占4个空格

set tabstop=4

"默认缩进4个空格大小

set shiftwidth=4

"增量式搜索

set incsearch

"高亮搜索

set hlsearch

"有时中文会显示乱码,用一下几条命令解决

let &termencoding=&encoding

set fileencodings=utf-8,gbk

"很多插件都会要求的配置检测文件类型

:filetype on

:filetype plugin on

:filetype indent on

"下边这个很有用可以根据不同的文件类型执行不同的命令

"例如:如果是c/c++类型

:autocmd FileType c,cpp : set foldmethod=syntax

:autocmd FileType c,cpp :set number

:autocmd FileType c,cpp :set cindent

"例如:如果是python类型

:autocmd FileType python :set number

:autocmd FileType python : set foldmethod=syntax

:autocmd FileType python :set smartindent

以上是简单的几个比较常用的vim配置,用vim来敲程序还要借助于一些插件,比如:

omnicppcomplete c/c++代码补全

taglist 查看函数列表

NERD_Tree 查看文件列表

pydiction python代码补全

具体安装方法参见google、baidu或访问http://www.vim.org就不赘述了

另外从楼主提的问题来看,应该是初学vim。vim很强大,想要用好vim需要也很值得投入一定的时间去学习,仅凭上边的几条配置与插件是远远不够的。推荐一部教材《vimbook》老外写的,很详细,内容也不多。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/11841101.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存