This extension point provides a mechanism for defining variables used for string substitution. A value variable has a static value. a fully qualified identifier of the target extension point an optional identifier of the extension instance an optional name of the extension instance specifies a unique name for this variable. Specifies whether this variable is read only. When true, this variable's value will always be derived from the extension and cannot be edited by the user. When false, this variable's value will be initialized from any <code>initialValue</code> attribtue or initializer class, and can be modified by the user. Once a read-write variable is modified, its value is persisted and overrides any value specified by an extension's <code>initialValue</code> or initializer class. When unspecified, the value of this attribute is <code>false</code>. This attribute was added in the 3.3 release. specifies the initial value for this variable. When specified, an <code>initializerClass</code> attribute must not be specified. specifies the fully qualified name of the Java class that implements <code>org.eclipse.core.variables.IValueVariableInitializer</code>. When specified, an <code>initialValue</code> attribute must not be specified. specifies a human-readable description of this variable. 3.0 The following is an example of a value variable contribution with an initial value: <p> <pre> <extension point="org.eclipse.core.variables.valueVariables"> <variable name="FOO_HOME" initialValue="/usr/local/foo"> </variable> </extension> </pre> </p> In the example above, the specified variable is created with the initial value "/usr/local/foo". The following is an example of a value variable contribution with an initializer class: <p> <pre> <extension point="org.eclipse.core.variables.valueVariables"> <variable name="FOO_HOME" initializerClass="com.example.FooLocator"> </variable> </extension> </pre> </p> In the example above, the variable FOO_HOME is created and the class "com.example.FooLocator" will be used to initialize the value the first time it's requested. Value of the attribute <b>initializerClass</b> must be a fully qualified name of a Java class that implements the interface <b>org.eclipse.core.variables.IValueVariableInitializer</b>. Copyright (c) 2003, 2011 IBM Corporation and others.<br> This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which accompanies this distribution, and is available at <a href="https://www.eclipse.org/legal/epl-2.0">https://www.eclipse.org/legal/epl-v20.html</a>/ SPDX-License-Identifier: EPL-2.0