summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/index/TODO
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-09 00:44:40 +0000
committerKarl Berry <karl@freefriends.org>2006-01-09 00:44:40 +0000
commitb4fc5f639874db951177ec539299d20908adb654 (patch)
tree52f08823ca58fffe3db6a9b075635038c567626c /Master/texmf-dist/doc/latex/index/TODO
parentdec3d98ebe442d7ea93efbaa8dd2e2be8149a467 (diff)
doc 4
git-svn-id: svn://tug.org/texlive/trunk@80 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/index/TODO')
-rw-r--r--Master/texmf-dist/doc/latex/index/TODO107
1 files changed, 107 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/index/TODO b/Master/texmf-dist/doc/latex/index/TODO
new file mode 100644
index 00000000000..1ac41a2e07f
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/index/TODO
@@ -0,0 +1,107 @@
+Last updated: September 29, 1995
+
+Possible things to do:
+
+1) Allow two different 'indexes' to write to a single file, so we can
+do things like mix entries using different counters, a la doc.sty, and
+add in any other features from doc.sty that seem useful.
+
+2) integrate the scheme descripted in autind.sty into the package.
+
+3) merge bibref files into index.dtx and properly document it
+
+
+a) Implement the scheme mentioned at the end of section 3 of the
+documentation to remove the limit on the number of indexes possible in
+a single document.
+
+b) Add an enhancement to draft mode that allows the words and phrases
+that are being indexed to be typeset in color or greyscale in the main
+text (for copy-editing purposes only). Since currently the actual
+pieces of text that are typeset are not included in the markup, this
+will require a major overhaul of the semantics of the \index command.
+So, I'm thinking of having a package option that does something like
+this:
+
+First, the \newindex command would be changed to the following:
+
+ \newindex[counter]\CS{TITLE}
+
+where \CS is the command used to put entries into the index titled
+'TITLE', whose entries are labeled with the value of 'counter'. E.g.,
+after
+
+ \newindex\aindex{Name Index}
+
+\aindex would put entries into the author index, much as would be done
+with '\index[aut]' in the current scheme. This frees up the optional
+argument to be used for something else. (Note that '\index' would
+remain undefined by default, and so would have to be defined with
+\newindex, just as a 'default' index has to be declared currently.)
+
+Note that the user no longer has to supply an explicit extension for
+the raw and processed files (i.e., the '.idx' and '.ind' files).
+Instead, each index will be be assigned an integer, and the associated
+output and input files will have extensions of the form '.oHH' and
+'.iHH', where HH is the hexadecimal representation of the index's
+number. This will allow up to 256 indexes without violating the
+length 3 limit on extensions. (As a special case, the first index
+declared could use '.idx' and '.ind' instead of '.o00' and '.i00'.)
+
+[Maybe better would be something 'indNNN.idx' and 'indNNN.ind', which
+would make makeindex marginally happier, but would prohibit keeping
+multiple documents using this feature in the same directory. Or maybe
+'XXXXXXHH.idx' and 'XXXXXXHH.ind', where 'XXXXXX' is the first 6
+characters of \jobname (for a suitable definition of 'first 6
+characters'). Alternatively, prepend the number on to the front
+(HHfilename.ind), and let the operating system worry about what
+happens to long file names.]
+
+\printindex would be redefined to take one of the \CS's defined above
+as its (mandatory) argument.
+
+Then the syntax of the \index-like commands would be changed to the
+following:
+
+ \index{foo} : typesets "foo" in the text and puts it in
+ the index
+
+ \index[bar]{foo} : typesets "foo" in the text and puts
+ "bar@foo" in the index. Useful for things
+ like \index[alpha]{$\alpha$}. I believe
+ this case is common enough to warrant a
+ shortcut.
+
+ \index*{foo} : Can't think of anything useful for this to
+ do, but see next:
+
+ \index*[bar]{foo} : typesets "foo" in the text and puts "bar"
+ in the index.
+
+A note about these last two forms: At first blush, it might seem
+reasonable to have \index*{foo} put 'foo' in the index and typeset
+nothing, thus allowing allow arbitrary text to be put into the index.
+However, not only would it then be unclear what \index*[bar]{foo}
+should do, but there would be no way of putting arbitrary text in the
+index while simultaneously associating it with some specific text in
+the document (consider, for example, \index*[animal!cat]{cat} or
+\index*[cat|see{goddess}]{cat}). So, the proposed syntax seems
+better, although it still leaves \index*{foo} without any obvious
+function.
+
+Note that in all of this, the short forms ^ and _ have disappeared
+entirely. C'est la vie.
+
+In this scheme, \disableindex\foo would make \foo an \index-like
+command that would gobble up it's arguments -- \disableindex\foo used
+instead of \newindex\foo{TITLE}, or is it possible to disable an
+\index command that's already been declared with \newindex? Latter is
+obviously more desirable.
+
+c) Implement some sort of scheme for per-chapter indices.
+
+d) Have index.sty add sufficient information to the .log file that a
+simple script can parse it and automatically run makeindex the proper
+number of times with the proper arguments.
+
+e) Write such a script.