Variables and build options

<< Click to Display Table of Contents >>

Navigation:  More Advanced Procedures > Working with Style Repositories >

Variables and build options

If you define variables and custom build options in a style repository they will also appear and be available in the projects to which the repository is linked.

When you link the repository, all the variables and custom build options in the repository that do not exist in the project are copied to the project. Variables with the same names as those in the repository that already exist in the project are skipped and left unchanged; their values do not update with different values from the repository.

Similarly, any custom build options defined in the repository will be copied to the project when it is linked.

Variables and build options are not linked like styles

At present, this is really just a convenience for sharing variables to multiple projects. It is a simple copy operation performed when the repository is linked to the project. The values of the variables are not dynamically linked in the same way as the styles. The values of the variables in your projects will NOT update when their values are changed in the repository, and the variables will not be removed from the project if you delete them in the repository. Similarly, the values in the repository will not change if you edit the variables in the project.

In the same way, build options imported from a repository are not linked to the repository in any way. Deleting them or changing their descriptions in the repository does not have any effect on the versions in the project. Similarly, deleting them or editing their descriptions in the project will not have any effect on the versions in the repository.

Updating variable values from a repository

The only way to force the values of a variable in a project to update with a changed value in the repository is to delete the variable in the project. Then the variable will appear again with the new value from the linked repository the next time the project is loaded.

So to update your repository variables you need to delete them in your project and reload the project. You can select and delete multiple variables with CTRL+Click (individual variables) and SHIFT+Click (blocks of variables).

This is admittedly not all that practical, because you need to do this for all the variables in all your projects every time you change the values of the variables in the repository. In a future major release of Help+Manual we plan to make repository variables dynamically linked as well.