Dev Build 2013 is out now, with some changes to project handling.
Projects are now split into two files: a user editable .sublime-project file, and an opaque .sublime-workspace file. .sublime-project files contain information on the folders and settings in the project, while the workspace file contains all the session related data. A .sublime-project file looks something like this:
{
"folders":
{
"path": "src",
"file_exclude_patterns": "*.lua"]
},
{
"path": "/C/data/reference"
}
],
"settings":
{
"tab_size": 8
}
}
A few comments on this:
- Paths may be relative (to the .sublime-project file location) or absolute, but must be in a unix style on all platforms (e.g., “/C/Windows” rather than “C:\Windows”)
- Folders may have keys “file_exclude_patterns” and “folder_exclude_patterns”. These are combined with the global settings of the same name.
- “settings” are file settings, and will take precedence over user file settings, but not syntax specific file settings. Any settings will apply to all open files in the project’s window.
- Editing the project via the UI (e.g., dragging a folder onto the window) will cause the .sublime-project file to be rewritten. If you’d like to preserve your comments and formatting, you’ll have to avoid doing this.
- Existing .sublime-project files will be converted into two files on load. You shouldn’t lose any data when this happens, but I’d recommend backing them up in any case.
I’m planning to also make a change in a future build, where opening a project (via Project/Open Project and Project/Recent Projects) will open it in a new window. The Switch Project menu item will change the project in the current window.
Let me know what you think!