The DECset Environment Manager for OpenVMS provides a single mechanism for tailoring the execution environment for a set of DECset tools. The tailoring factor is known simply as a context. Using the DECwindows user interface, a context may be applied to all tools displaying on a particular DECwindows display. Using the command line interface, a context may be applied to a particular process and all subprocesses subsequently created by that process. Context A context is defined as a named set of values that tailors the DECset tools to a specific software development activity (for example, fixing bugs or implementing enhancements). The supported attributes for which these values are supplied are: logical name definitions; symbol definitions; MMS macro definitions; MMS build options; linker options file specifications; library settings; a source directory specification; output directory specifications; and a default directory specification. Each context has a unique name. The context name is limited to a length of 16 characters. There can be only one context in a particular context database with that name. At any given time, the named context most recently applied to a tool is known as the tool's current context. If no context has been applied, the tool has no current context. A tool's execution environment is not fully defined by the values associated with a named context. Rather, a tool's execution environment is constructed from the following sources: 1. the parent process 2. the X Windows resource file (if applicable) 3. the named context (if applicable) 4. the command line qualifiers used to invoke the tool A specification retrieved from a higher-numbered source always supersedes any specification of the same object retrieved from a lower-numbered source. Context Hierarchy A project context is one that is associated with a development project. A project context is typically used by all persons working on the particular project. A user-specific context may be based upon a project context, thereby tailoring the project context to a particular user. In this case, the project context becomes a parent context. A context that is based upon another context is said to be a child context. Each child context inherits all the information associated with its parent context. If the same attribute in both a child and its parent have different values, the child's value overrides that of the parent. Any context may be based upon another context, which (in turn) may itself be based upon yet another context. A child context inherits information from its entire `chain' of parent contexts. The term context object refers to a context that includes all of this inherited information. Context File A context file is used to store information that is specific to a particular named context. The context file is specified by an OpenVMS file specification, which is stored in the context database entry associated with the named context. The default context file type is .DECSET_CONTEXT. The context file is a sequential ASCII text file. In a context file, a continuation line must be terminated by a hyphen character. Trailing comments are not allowed on a continuation line. The context file specification must exist in the format: disk:[directory.subdirectory]*.decset_context. If you specify a node name in the File menu New Context... Context File field- even if the node name is part of a local cluster-the node specification is invalid at the time of context file retrieval from the context database. Context Database A context is defined in a context database. This database is stored as a sequential ASCII text file. Each record of this file has the following format: context-name context-file-spec [parent-context] ["context-description"] A context database entry must include a complete file specification; for example, DISK12:[USER.DIRECTORY]context_ database_file.DECSET_CONTEXT_DB. For more information about managing windows, or using the mouse, double click on an item from the list of additional topics below. For information about using help, choose Help from the Help menu above.