为多种语言创建多个.vimrc?

时间:2016-12-22 23:13:35

标签: vim vi file-type

我开始学习编程,并发现可以通过.vimrc文件配置vim。但是我在创建多个设置时遇到了麻烦。我想要一个用于Java的配置和另一个用于C的配置,但我不知道如何在用特定语言编程时只启用配置。

我找到了以下问题的解决方案:

  

如果可以集中配置本地例外,你可以放   这样In [1]: import csv with open("SL05_AO_RO.tab") as tsv: seen = set(map(tuple, csv.reader(tsv, dialect="excel-tab"))) with open("covbreadth_common_sites.csv") as tsv: common = [line for line in csv.reader(tsv, dialect="excel-tab") if tuple(line) in seen] common[:10] Out[1]: [['1049', '7280'], ['1073', '39198'], ['1073', '39218'], ['1073', '39224'], ['1073', '39233'], ['1098', '661'], ['1098', '841'], ['1103', '15100'], ['1103', '15107'], ['1103', '28210']] 10 loops, best of 3: 150 ms per loop In [2]: len(common), len(seen) Out[2]: (190, 138205) 进入autocmd

     

~/.vimrc

     

How to load different .vimrc file for different working directory?

但我不明白这个解决方案。

我想我应该做以下事情:

  1. 我想在桌面上创建C语言设置。所以我投入了 Shell(我使用的是Mac OS)以下命令:autocmd BufRead,BufNewFile /path/to/dir/* setlocal ts=4 sw=4并将所需的配置放在此文件中。

  2. 然后我将以下命令放入文件vim ~/Desktop/.vimrc~/.vimrc

  3. 然后我进入Shell并创建了一个C文件autocmd BufRead,BufNewFile ~/Desktop/.vimrc setlocal ts=4 sw=4,但我意识到我的设置没有用。

  4. 显然我做错了什么,但我找不到错误,因为我还是诺布。

2 个答案:

答案 0 :(得分:3)

使用它们的ftplugins。

将您的C配置放在~/.vim/ftplugin/c中,依此类推。不要忘记激活他们的支持。

(这实际上是一个重复的问题)

答案 1 :(得分:1)

为此您需要3个文件:express和两个脚本,例如~/.vimrcC-settings.vim

在第一个文件java-settings.vim中,您需要包含这些自动命令:

~/.vimrc

在其他文件("To enable file type detection" filetype on augroup Java_C_Settings "the command below execute the script for the specific filetype C autocmd FileType c source /path-for-C-settings/C-settings.vim "the command below execute the script for the specific filetype Java autocmd FileType java source /path-for-Java-settings/Java-settings.vim augroup END & C-settings.vim)中,您为每种类型的文件Java-settings.vim*.c

设置了所需的设置

示例:

<强> C-settings.vim

*.java

<强> Java的settings.vim

set number
colorscheme blue

每当您使用vim打开文件时,后者将首先检查文件类型,并自动配置设置。

注意:如果设置文件不在同一目录中,您可以将其重命名为set number colorscheme evening