1

我经常在不同的应用程序之间切换,希望每个项目都有自己的配色方案,这样更容易区分它们。

我想在我的 .vimrc 中添加以下内容,但我在使用 VIM 脚本语法时遇到了问题。

# if I were to write it in Ruby
case current_path
when '/path/to/project'       then color textmate
when '/path/to/other_project' then color ir_black
end
4

2 回答 2

4

只要您不想在单个 Vim 实例中混合不同的项目(颜色方案只能全局设置,不能用于单个窗口!),转换为 Vimscript 是微不足道的:

if getcwd() ==# '/path/to/project'
    colorscheme textmate
elseif getcwd() ==# '/path/to/other_project'
    colorscheme ir_black
endif

对于广泛的配置,我可能会在循环中使用字典查找,但我故意保持简单。

要处理子目录,请使用它进行比较:

if stridx(getcwd(), '/path/to/project') == 0

您还可以通过=~#而不是 进行正则表达式匹配==#


或者,有几个本地 vimrc插件,允许您将项目特定的设置应用于某些子目录。我为此使用localrc

于 2012-10-11T15:27:13.110 回答
0

对于项目设置,请考虑使用项目插件:对于每个项目,您可以指定一个in.vim文件,每次打开该项目的文件时都会执行其内容。

在那里设置配色方案非常容易。

使用项目插件还可以让您为每个单独的项目设置其他项目相关设置:

其他功能包括:
o 加载/卸载项目中的所有文件(\l、\L、\w 和 \W)
o 搜索项目中的所有文件(\g 和 \G)
o 运行用户指定的脚本在文件上(可用于在文件上启动外部程序)(\1 到 \9)
o 在项目中的所有文件上运行用户指定的脚本(\f1-\f9 和 \F1-\F9)
o 还可以与 netrw 插件一起使用目录名称,例如ftp://remotehost
(适合网页维护。)
o 支持用于版本控制集成的自定义映射(文档中的 perforce 示例)。
o 我还在文档中提供了一个示例,说明如何基于扩展设置自定义启动器。该示例在查看器中启动 *.jpg 文件。我还为我自己的使用设置了 PDF (acroread) 和 HTML 文件 (mozilla) 的查看器。

于 2012-10-13T13:40:31.487 回答