Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

How do you add nomenclature typesetting tool to TeXworks? I use

pdfLaTeX + MakeIndex + BibTeX

It produces .nlo file but does not put the nomenclature list in the document.

share|improve this question
    
Thank you. I have found some helpful answers on this section and managed to produce an .nls file. I did this via a batch file but I would prefer a direct way to modify makeindex, or add another typesetting directly to TexWorks. –  danny Jul 7 '13 at 17:33
add comment

migrated from stackoverflow.com Jul 6 '13 at 19:44

This question came from our site for professional and enthusiast programmers.

2 Answers

up vote 2 down vote accepted

The 'pdfLaTeX + MakeIndex + BibTeX' entry in TeXworks is MiKTeX-specific, and uses a back-end program called texify to run the various parts of the process automatically. If you do texdoc texify at the Command Prompt you get some instructions, which include various options. The key one is

--mkidx-option=option
Pass option to the index generator.

Thus at least in theory what you want to do is add this option to those used by texify. However, a few tests soon reveal that this won't help as texify doesn't even attempt to run MakeIndex on a short test file such as

\documentclass{article}
\usepackage{nomencl}
\makenomenclature
\begin{document}
Some text

\nomenclature{A}{Something for A}

\printnomenclature
\end{document}

The texify documentation doesn't make it clear, but it seems likely that it only runs MakeIndex if there is an appropriately-named file is created. As one is not by nomencl, you have to use an alternative scripting approach such as a batch file, latexmk, etc.

share|improve this answer
    
What no arara recommended before etc.? ;-) –  Harish Kumar Aug 24 '13 at 0:53
add comment

Credit to Joseph Wright for this answer.

MiKTeX allows a limited form of \write18 to run makeindex from within a LaTeX document.

\immediate\write18{makeindex \jobname.nlo -s nomencl.ist -o \jobname.nls}
\documentclass{article}
\usepackage{nomencl}
\makenomenclature
\begin{document}
\section*{Main equations}
\begin{equation}
a=\frac{N}{A}
\end{equation}%
\nomenclature{$a$}{The number of angels per unit area}%
\nomenclature{$N$}{The number of angels per needle point}%
\nomenclature{$A$}{The area of the needle point}%
The equation $\sigma = m a$%
\nomenclature{$\sigma$}{The total mass of angels per unit area}%
\nomenclature{$m$}{The mass of one angel}
follows easily.
\printnomenclature
\end{document}
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.