Source Insight is built around projects. A project is a collection of source files. Source Insight records what files are in the project by keeping a simple file database for the project.

As you create new files, they can be added to your project when you save them. If new files appear in your source directory or subdirectories, they can also be added automatically to your project by running the Synchronize Files command, or by letting Source Insight synchronize automatically in the background.

When a project is open, some of Source Insight’s operations change or are enhanced. For example, the Project Window lists all files in a project, regardless of directory.


Figure 4.1 The components of a Source Insight project.

A project automatically contains a symbol database, which is maintained by Source Insight. Except for adding source files to your project, you do not have to generate any other “tag” files. Source Insight does that automatically.

Each project has its own session workspace. The workspace contains session information, such as the list of files that are open and window positions.

Each project can have its own configuration settings, or it can use the single global configuration. The configuration contains your customizations, which includes many of the options set via the Options menu.

Throughout this documentation, all discussions assume that you have a project open, unless otherwise stated. Whenever there is a difference in the way a command works with and without a project open, it will be noted.

In this section: