Omni Systems, Inc. Mif2Go User's Guide, Version 55
> 9 Generating Microsoft HTML Help > 9.7 Creating related-topic links for HTML Help > 9.7.5 Using the same format or marker for ALink keywords and jumps > 9.7.5.1 Creating a list of ALink keywords from paragraphs
Suppose you use paragraph format ALinkTarget for ALink keywords. To capture keywords from ALinkTarget paragraphs, assign properties to extract the paragraph content:
ALinkTarget=ALink Raw CodeStore CodeAfter
The ALink
property
specifies that the content of each ALinkTarget
paragraph is to be used for the ALink Name property of an HTML Help ALink
object (not the button object, which you
will construct with macros); see §7.6.4.2 Adding related-topic keywords via format properties.
The Raw
property suppresses
any HTML tags that would otherwise be generated; see §21.3.6 Stripping paragraph properties.
The CodeStore
property
causes the content of the ALinkTarget
paragraph to be stored in macro variable $$ALinkTarget
.
(The value of a macro variable that has the same name as a paragraph
format is the content of the current paragraph in that format; see §28.3.1 Creating and invoking macro variables.)
The CodeStore
property also removes the paragraph
from text output; see §28.3.7.2 Inserting code with the CodeStore property.
The CodeAfter
property
provides the means to do something further with macro variable $$AlinkTarget
,
which now contains an ALink keyword, plucked from the ALinkTarget
paragraph:
ALinkTarget=<$$Nkeys++><$$ALinkKeys[$$Nkeys]=$$ALinkTarget>
Store paragraph content in a list variable
The [ParaStyleCodeAfter]
code does the following:
Nkeys
(which will be initialized to zero before each topic).
Nkeys
to index
a list variable, $$ALinkKeys
(see §28.4 Using multiple-value list variables).
$$ALinkTarget
in the Nkeys
slot in list variable $$AlinkKeys
.
As Mif2Go processes FrameMaker input for a topic, the $$ALinkKeys
list gathers keywords from ALinkTarget
paragraphs until it is time to create the ALink button object for a topic,
described in §9.7.5.4 Building an ALink button object from an ALink keyword
list.
§9.7.5.3 Initializing the ALink keyword list counter
§9.7.5.4 Building an ALink button object from an ALink keyword list
§9.7.5.5 Positioning the ALink button in each HTML Help topic