Skip to main content
Known Participant
June 14, 2010
Answered

Using character tag content (not format) in a variable?

  • June 14, 2010
  • 3 replies
  • 672 views

Hi, all you Frame experts.

In Microsoft Word, you can create a header that includes the STYLEREF field and "call" any text defined by any style, including character styles. Therefore, you can have a glossary with the glossary term "defined" with a character style, and use this to present the term in the document header (re: dictionary-style page headers).The benefit of this is that you can have a very simple page layout for a glossary (no table, side heads, etc.) and still have dictionary-style headings.

In FrameMaker, it appears that you can only use a paragraph format in a variable that you use in the document header. Is this correct, or can you use a variable to "call" the content defined with a character format?

For example, let's say that I want a glossary that is formatted as follows:

Glossary term: A term that appears in the glossary... (where a character style, e.g. GlossTerm, is used to make the term bold, and the paragraph is a normal Body para.)

Can I get the glossary term into the page header using a variable (or via any other simple FrameMaker method)? If not, then I'll use a table w/para. format for glossary term, but that is not the client's first choice.

Please note that I don't want to get into any discussion of the merits of Word vs. FrameMaker. I'd just like to know if there is a simple solution to this in Frame.

Thanks very much,

  --Gloria Mc

    This topic has been closed for replies.
    Correct answer Arnis Gubins

    You can also the contents of the <$marker1> and <$marker2> building blocks from the two running h/f markers. You still need to populate the markers though. But, if the contents are already tagged with the character tag, then using the find and having the marker panel open and set for either Header/Footer $1 or $2 marker, the contents would then be automatically displayed in the marker panel. All you have to do is hit the "New marker" button to populate the marker at this point. The whole process can be automated with framescript.

    The alternative (and more typical way to do this in FM)  is to change your current glossary structure and use run-in paragraphs, where your glossary term is in one paratag and the definition is in another paratag.

    3 replies

    Gloria_McAuthor
    Known Participant
    June 14, 2010

    Arnis and Mike,

    Thank you both for the helpful suggestions. Being that I have been working with the client's existing formats, I did not take a look at all of the options for para. formats, i.e., run-in paragraphs. (My bad!)  I did know how to do the dictionary-style headings in Frame, but was having tunnel vision re: the behavior of Word w/ char. styles.

    Thx again!

       --Gloria Mc

    Inspiring
    June 14, 2010

    The simple way to make a glossary with dictionary-style headers in FM is to

    use a paragraph set as "Run-In Head" to hold the glossary term, followed by

    a body paragraph to hold the glossary definition, for each glossary item.

    It's easy to set up the dictionary style headers. From FM9 help:

    Create a dictionary-style header or footer

    You can use dictionary-style headers or footers to show the range of

    information that appears on one body page or on two facing body pages.

    Dictionary-style headers or footers appear frequently in documents such as

    dictionaries, indexes, and glossaries.

    Headers show first entry on left and last on right. Insert a different

    running header/footer variable in the header or footer of each of two facing

    master pages. Edit the definition of the variable on the left master page to

    use the

    <$paratext[paratag]> building block. Replace paratag with the paragraph tag

    of dictionary terms. In the same way, edit the definition of the variable on

    the right master page to use the <$paratext[+,paratag]> building block. The

    plus sign tells FrameMaker to find the last paragraph on the page

    matching the tag rather than the first paragraph.

    1. Insert a different running header/footer variable in the header or footer

    of each of two facing master pages.

    2. Edit the definition of the variable on the left master page to use the

    <$paratext[paratag]> building block. Replace paratag with the paragraph tag

    of dictionary terms.

    3. In the same way, edit the definition of the variable on the right master

    page to use the <$paratext[,paratag]> building block. The plus sign ()

    tells FrameMaker to find the last paragraph on the page matching the tag

    rather than the first paragraph.

    Arnis Gubins
    Arnis GubinsCorrect answer
    Inspiring
    June 14, 2010

    You can also the contents of the <$marker1> and <$marker2> building blocks from the two running h/f markers. You still need to populate the markers though. But, if the contents are already tagged with the character tag, then using the find and having the marker panel open and set for either Header/Footer $1 or $2 marker, the contents would then be automatically displayed in the marker panel. All you have to do is hit the "New marker" button to populate the marker at this point. The whole process can be automated with framescript.

    The alternative (and more typical way to do this in FM)  is to change your current glossary structure and use run-in paragraphs, where your glossary term is in one paratag and the definition is in another paratag.