Skip navigation
emalie.whan
Currently Being Moderated

FM 10 Index section numbering issue

Mar 27, 2012 10:08 AM

Tags: #framemaker_10v

I have created an index and everything is perfect except how the section numbers have been generated. The number 10 is generating before 1-9. (Please note the reason 10 generates before 1-9 is because within the Reference page, I have switched the tags to read as follows: <$numerics><$alphabetics><$symbols>). I have also tried the <$paranumonly> tag, and that did not help. However, If <$numerics> is after <$alphabetics> and before <$symbols>, the section numbers will generate: 1, 10, 2-9.

 

Here are a few examples:

 

Massachusetts

6.4.10 441  

6.4.11 442  

6.4.12 443  

6.4.13 445  

6.4.14 445  

6.4.15 446  

6.4.8 439  

6.4.9 439 

- showing that 6.4.8 and 6.4.9 should go before 6.4.10

 

federal law

10.5.5 625  

10.5.6 627  

10.5.7 628  

10.5.8 632  

1.2.11 37 

- 1.2.11 should go before 10.5.5

 

I have researched this for a couple days and cannot find an answer. Please help me.

 

Thank you!

 
Replies
  • Currently Being Moderated
    Mar 28, 2012 1:05 AM   in reply to emalie.whan

    The index is sorting “alphabetically”, despite the fact that we recognise the entries as numbers. 8 comes after 10, because the sort order is character-by-character, and 8 comes after 1.

     

    The easiest way i can think of to fix these is to pad your figures with leading zeroes in the index entry box, so use 01.02.11 instead of 1.2.11. Then 01 sorts before 10 because 0 sorts before 1.

     

    This doesn’t mean changing the text as it appears to the reader, just the index tag. It does, however, mean quite a lot of fiddly editing.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 28, 2012 7:02 AM   in reply to David Crowe

    I've never played with it, but I thought you could add some arguments to the string on the reference page to tell the program what order to use when sorting entries. I seem to remember it coming up with indices using Asian languages or something.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 6:48 AM   in reply to emalie.whan

    I just checked in my copy of Sarah O'Keefe's Unstructured FM8 (a great reference work, even with FM10) - talks about using the SortOrderIX entry on the reference page to spell out the order of what you want sorted - replace the building blocks with the sort order you want to use. That might get around your problem. I think that the book is also available on the Scriptorium blog/wiki.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 7:05 AM   in reply to emalie.whan

    From what I was reading, it looks like you sub out the <$numerics> part with the numbers in the order you want - I've never played around with this stuff, so I can't help you much.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 10:01 AM   in reply to emalie.whan

    I don't remember seeing that syntax being used - did you find the reference on the scriptorium wiki that I was talking about?

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 12:21 PM   in reply to emalie.whan
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 1:18 PM   in reply to emalie.whan

    No, if you do it that way you should pad with zeroes only the single digits, so that every chapter has two digits: 01, 02, 03 … 08, 09, 10 11. That would sort properly.

     

    But if you have so many to do it may be better to explore the ideas that Jeff is talking about. I remember doing something like that to index Cyrillic correctly before FrameMaker understood Unicode. Essentially you enter a chain of characters in the sort-order you want on the reference page. But I’m not sure it would work for 1 and 10, say.

     

    From: emalie.whan

    Date: 29 March 2012 18:40

    To: David Crowe

    Subject: Re: FM 10 Index section numbering issue FM 10 Index section numbering issue

     

          Re: FM 10 Index section numbering issue

          created by emalie.whan in FrameMaker General Discussion - View the full discussion

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 1:51 PM   in reply to emalie.whan

    Somebody must have run across all this before - try searching the Framer's mailing list or asking there.

     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2012 7:13 PM   in reply to emalie.whan

    Emalie,

     

    The way to handle the adjustment of the sort order for numerics was identified by David but there was one detail not specifically mentioned. In your Index markers, you have to add the leading zero-padded values so that all of your sections and sub-sections are at the same number of digits using the sort order modifier (value enclosed in square brackets), e.g. the entries in the Index marker should look like this:

     

    6.4.14 445[06.04.14 445]

     

    6.4.15 446[06.04.15 445] 

    6.4.8 439[06.04.08 439]

    6.4.9 439[06.04.09 439]

     

    This can readily be accomplished with a script to modify your existing Index markers using either FrameScript or Extendscript. No need to play with a MIF file after the fact - that is just asking for more trouble.

     
    |
    Mark as:
  • Currently Being Moderated
    Apr 6, 2012 7:04 AM   in reply to emalie.whan

    Emalie – I think there are some basics you haven’t got the hang of:

     

    Square brackets in entries are optional; if they don’t exist, it’s the ordinary, non-bracketed text, that is indexed.

     

    if you do add square brackets to the index entry, the entry is considered in two parts.

    • The text outside the brackets is what is printed in the index, i.e. what the reader will see.
    • The text in the brackets is the sort order and does not appear in the visible entry.

     

    It’s useful if you want to index St as Saint, for example: St Paul’s Cathedral[Saint Paul] would be indexed before Stepford; or to list names in firstname-surname order, but alphabetise them by surname, such as Tony Blair[Blair T], George W. Bush[Bush G], which would make an index in which Bush follows Blair, despite the fact that George would come before Tony.

     

    Note that you don’t need to put the whole entry inside the brackets, just enough to make sure it sorts as you wish. The content is never seen by the reader.

     

    Now that I see more of your index, I’m prompted to ask a more fundamental question. It’s there to guide the reader, and would normally contain terms that the reader is going to look up. Are entries such as 6.4.13.445 meaningful to someone consulting your index? Forgive the interference, but do they need to be indexed at all?

     
    |
    Mark as:
  • Currently Being Moderated
    Apr 6, 2012 8:09 AM   in reply to emalie.whan

    So if you want 6.4.13.445 to appear under C (presumably under Child labor laws) you need an index entry along these lines:

     

    First-level entry: 6.4.13.445[child labor laws 06.04.013.445].

     

    You appear to have at least two levels, so a second-level entry might be child labor laws;6.4.13.445[06.04.013.445].

     

    Or am I still misunderstanding?

     
    |
    Mark as:
  • Currently Being Moderated
    Apr 6, 2012 8:35 AM   in reply to emalie.whan

    Yes, that looks right. I mistakenly typed semi-colons in-between the levels, but you are right: they should be colons. And if your third numeric grouping (13) ever gets to three figures – in other contexts, of course – you should write it as 013.

     

    What I am not sure of, and can’t check now because I don’t have FrameMaker here at home, is whether the square brackets “special sort order” applies to the whole entry, or only to the level in which they are used. In other words, does Child labor laws:Massachusetts:6.4.13[06.04.13 445] sort first by C, then by M and only then by 06 in the square brackets? If so, it might save you a bit of typing.

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)

Answers + Points = Status

  • 10 points awarded for Correct Answers
  • 5 points awarded for Helpful Answers
  • 10,000+ points
  • 1,001-10,000 points
  • 501-1,000 points
  • 5-500 points