Sublime Text 2中的项目是由2个文件构成: sublime-project文件, 它包含了项目定义;还有sublime-workspace文件,它包含了用户指定的数据比如打开的文件以及它们的每个修改之处。
按照惯例,sublime-project文件会被迁入到版本控制中,而sublime-workspace文件则不会。
sublime-project文件是JSON格式,并且有三个顶级对象: folders,用来包含目录, settings, 文件配置的复写,和build_systems,给项目指定编译系统。下面是个例子:
{
"folders":
[
{
"path": "src",
"folder_exclude_patterns": ["backup"]
},
{
"path": "docs",
"name": "Documentation",
"file_exclude_patterns": ["*.css"]
}
],
"settings":
{
"tab_size": 8
},
"build_systems":
[
{
"name": "List",
"cmd": ["ls"]
}
]
}
每个目录必须有一个path, 并且可选的有一个folder_exclude_patterns和file_exclude_patterns配置。path也许相对于项目目录,或者一个全路径。 目录也许也有一个name配置,用来设置在侧边栏显示的名字。
早期版本转换的项目也许会有一个mount_points入口在项目目录下。如果你想使用排除匹配模式,你需要将原入口改成上述格式。
这里的Settings可以使用settings键值指定,并且覆盖普通用户的配置。 注意,他们不能覆盖语法的配置。
Build Systems指定了一组编译系统定义。为了区别普通编译系统,每个编译系统必须指定一个name。 这里列出的编译系统将在普通的菜单上可见。