A blog about condensed matter and nanoscale physics. Why should high energy and astro folks have all the fun?
Sunday, March 30, 2014
Any advice: LaTeX and makeindex
Readers - For a long time now I have been working on a very large LaTeX document (actually built out of a number of sub-documents) that I will discuss further in later posts. I greatly desire to create an index for this document, and I know about the LaTeX package \makeindex. The question is, does anyone know of a good frontend application that can make the creation of the index less tedious? The brute force approach would require me to go through the document(s) by hand and insert a \makeindex tag every time a term that I wish to index appears. For an index containing a couple of hundred entries, this looks excruciating. What I would love is an application where I identify the terms for which I want index entries, and it then automatically inserts the appropriate tags (in a smart way, not putting tags inside LaTeX equations, for example). While this would be imperfect, it would be easier to start from an over-complete index and pare down or modify than to start from scratch. Yes, I am sure I could use perl or another scripting language to make something, but I'd rather not reinvent the wheel if someone has already solved this problem. Thanks for any suggestions.
Hi Doug,
ReplyDeleteTake a look at this.
http://gna.org/projects/latex-indexbuild/
I use it regularly and it works very well. You can just download the perl script and run. No need to install.
Vijay: Thanks - that looks very promising!
ReplyDeleteHello Prof. Natelson,
ReplyDeleteThat might be too nerdy of an answer, but what about using the brute force method in a terminal:
TermsToIndex="alpha beta gamma orwhatever"
for file in `ls ./*.tex`
do
for term in $TermsToIndex
sed -i "s/ $term / \index{$term} /g" $file
done
done