There are some things in these notes that should be
checked if or how they work in xindy. This might be
additional material for the documentation:
numbers:
-- xindy deficiency, only smaller than 1,000,000 is sorted
numerically.
-- If one has larger numbers in the sort key and wants
to sort
them numerically, one needs to adapt the xindy style
module numeric-sort.
page ranges
-- implict grouping (5--10, 5ff, 5f)
-- explicit start/end range in raw index
-- what about additional entries that are in
between that
range. According to ttct documentation of David
Carlisle
there might be problems with makeindex. But
xindy will
handle this without any problems -- or?
-- According to TLC2, MakeIndex does "the right
thing" then.
What's right?
-- Start and end page range are the same => just
the page
number is printed.
"main" index entry (e.g., bold)
-- when there is a "normal" index entry on the same
page, it is
printed twice by Makeindex. (Info from ttct
documentation.)
-- How about xindy? Explain how to make it disappear
automatically?
markup normalization
-- knowing when to add sort keys is difficult in
itself and error
prone (wiz the questions on newsgroups)
-- might want to automate this as far as possible.
-- ignore control sequences by default, add exceptions
as sort
key or to xindy style file
-- don't ignore basic well-known control sequences, also
german.sty double quote quoting mechanism. what about
babel single quote quoting?
explain merge-rules and sort-rules
-- they make up equivalency classes
-- as far as i remember:
-- decide which entries are one: if \"a and ä are
the same,
one needs a merge-rule to map them to the same
internal representation
-- decide ordering: one uses sort-rules to order
entries in
internal representation
-- what is printed?
combine multiple raw indices of a book series;
without volume numbers in the index
-- LaTeX macro might be easiest
-- is there a reasonable pure-xindy way?
Example: sorting names: "von" disappears, "von der"
remains. there is/was a discussion about german name
sort rules at tex-d-l, in the biweek 16--27 june 2003.
-- sort orders are not always built on letter
sequences, but often
may be reduced to it
-- seldom cases may be handled by sort key in \index
-- but if it appears more often, if revisions appear,
many authors
must be coordinated? general specification in index
style
might be more robust and thus better in the long run.
-- Ortsindex, Namensindex. Take St. oder Saint away for
sorting.
-- historically grown
multiple indices from one raw index
-- used in technical writing (reference manuals of
technical
products, or programming languages)
-- complete master index
-- LaTeX example: tag index, environment index,
package index
-- programming language: syntax construct, semantic
concept,
standard library interface part
subentries more than three levels deep: does this work
in xindy?
-- If not: what definitions are needed to make it work?
-- If yes: What markup is output?
-- Of course, there must be at least three levels
predefined.
singular location references
-- cross references
-- seealso support
-- URLs
-- glossary definitions
language modules definition:
-- define all letter-groups without using them?!
Logged In: YES
user_id=134466
Originator: NO
On multiple indices.
Proposal: Add a flag to the raw index format named :index which takes a string; the name of the index to store the entry in. The default is the current behavior.
(indexentry :index "symbols" ...)
The markup for the different indices needs to be lifted as well.
Proposal: define a new command to set the index until redefined. The argument is a string; the name of the index:
(for-index "name-of-the-index")
The inheritance of the markup should be extended to fall back to the default index.
Maybe some more functionality is desirable:
- redirecting the indices to different output files:
(define-index "the-index" :output "xxx.idx")
- discarding indices:
(define-index "the-index" :discard)
- merging indices:
(define-index "the-index" :merge-to "the-other-index")
- separating indices according to the attribute:
(define-index "the-index" :attr ("attr-1" "attr-2"))
This could also be used for other purposes:
- send an index entry to several indices
Logged In: YES
user_id=134466
Originator: NO
On "define all letter-groups without using them?!":
Proposal: Add a flag to markup-letter-group to force the printing of empty letter groups and suppress them by default:
(markup-letter-group "a" :force-printing)