Macro Language Reference > PIs > Formatting Instructions > ?=
  
?=
Description
Temporarily deactivates paragraph mode when evaluating getvars: this PI was introduced to solve a particular publishing problem that occurs when constructing a paragraph style, making some getvars valid when they would not normally be.
Syntax
<?= flag:n>
<?=>
[no parameter]
Deactivate paragraph mode
flag
0
Restore <?=> or <?=1> to paragraph mode.
1
Deactivate paragraph mode
Additional Information
Some getvars are not valid until PTC ALD has encountered the first printable character on a line (for example ^21602, current path length). This is because certain calculations are not performed until all properties for a line are known. Using ^21602 as an example, the value of the getvar is affected by many properties: left margin, right margin, paragraph rules, vertical position (the line might move to another frame), etc. It would be wasteful in speed and other areas for PTC ALD to make all the calculations it needs each time one of the properties changed. PTC ALD could make the calculations when the getvar itself is accessed, but there are many reasons why this is not viable internally.
The usual solution for the above is to use <?> within the style to end the processing of a line's properties and force PTC ALD to make the calculations for the current line: this would make the getvars valid. However, this carries its own problems in that, once the getvar has been evaluated in this way, it is too late to make any more property changes to the paragraph as a whole. For example, you could not perform tests using the (now valid) getvar and then change the paragraph margins as a result of that test. This command has been implemented for the specific purpose of overcoming this problem.
 
To refer to getvars after a <?=0> command, store them in a counter.
Related Links