# Problem with nomenclature

I am trying to get a list of abbreviations into my paper using the

\usepackage{nomencl}
\makenomenclature


package. However, I won't create a list in my document when I type

\printnomenclature


Can anyone please help? I am very new to Tex, so please help me out. The documentation says I have to run makeindex <filename>.nlo -s nomencl.ist -o <filename>.nls I have no idea what this means, nor do I know where to type this or what filename to enter.

My file looks like this, and I am typing in TexMaker:

\documentclass[12pt]{article}
\usepackage{nomencl}
\makenomenclature

\begin{document}

\printnomenclature

\nomenclature{AIMR}{Association for Investment Management and Research}

blablabla AIMR

\end{document}

• You have to run: makeindex.exe <path to your tex file>\yourtexfile.nlo -s nomencl.ist -o <path to your tex file>\yourtexfile.nls. Run pdflatex then above command and then pdflatex. – user11232 Dec 10 '13 at 11:40
• Does your TeXMaker offer the compilation method "arara"? If it does, just write % arara: pdflatex "Enter" % arara: nomencl "Enter" % arara: pdflatex on the very top of your main file. "Enter" means: press Enter, don't type it. Than you can compile with arara instead of PDFLaTeX and everything works fine. – LaRiFaRi Dec 10 '13 at 11:46
• My TexMaker does not offer arara. Also, concerning Harish's response, where do I have to run it? Do I have to create a text file? Do I open cmd? I literally have no idea what that means. Could you please provide step-by-step help? What programs do I use for running? – Thomas H. Dec 10 '13 at 13:06
• Also, there is no .nlo or .ist file in my folder. – Thomas H. Dec 10 '13 at 13:18
• So I managed to understandwhat "run" means. I entered makeindex.exe <path to your tex file>\yourtexfile.nlo -s nomencl.ist -o <path to your tex file>\yourtexfile.nls into cmd and it created a .nlo and a .ist file. However, I still can't get it to create a abbreviations list in my output file. – Thomas H. Dec 10 '13 at 13:41

This is going to be long...

# From command prompt:

Let us say that your tex file (file.tex) is in D:\my folder. Open file.tex in texmaker and choose pdflatex in the build list, compile. Now open command prompt (Start→ run → cmd). In the command prompt that opens type

makeindex.exe D:\my folder\file.nlo -s nomencl.ist -o D:\my folder\file.nls


Now go back to texmaker and again compile with pdflatex using build button.

# Using arara:

Download and install arara. Make sure that arara.exe is in system path. (while installing, the installer asks this option. Choose yes).

Now open texmaker. Using the menu go to UserUser CommandsEdit User Commands as in the picture.

Now the following window will open. Type Arara in Menu Item and arara % under Command as shown. Now on the left hand side Command 1: Arara should appear as below

Press OK. Now in the build list an entry with arara should appear as shown. Choose it.

Now add following lines to your file.tex:

%% this is file.tex. Following three lines need to be added.
% arara: pdflatex
% arara: nomencl
% arara: pdflatex

\documentclass{amsart}
\usepackage{nomencl}

\usepackage{etoolbox}
\makeatletter
% copy the formatting of section titles
\let\nomencl@section\section
% if the level is greater than 1000, then amsart
% doesn't include the section's title in the toc
\patchcmd{\nomencl@section}{{1}}{{1001}}{}{}
% patch \thenomenclature to call \nomencl@section
\patchcmd{\thenomenclature}
{\section*}
{\nomencl@section}
{}{}
\makeatother

\renewcommand{\nomname}{List of Notations}
\makenomenclature

\setcounter{tocdepth}{1}

\nomenclature[000]{$Hi$}{World}

\begin{document}
\tableofcontents

\printnomenclature[1in]

\section{world}
\end{document}


Now press Build button which reads 1: Arara as below:

Hope it is all done well. :-)

• It still won't work. I'm really in over my head here. I will just manually type all abbreviations, using the tabbing-environment. Thank you all for your effort. – Thomas H. Dec 10 '13 at 14:30
• @ThomasH. won't work doesn't help. Please give details. Typing by hands is bad. Also try to post your tex code. Does my code work? – user11232 Dec 10 '13 at 14:31
• @ThomasH. Don't give up ;-) – user11232 Dec 10 '13 at 22:16
• I would like to add this as a comment to Harish Kumar answer but is my first day here and I can't. I want to share something that worked for me (Windows 8 user) I did exactlye what Harish said about the command prompt but, being on the root folder of the project. So sumarizing the process that worked for me it would be(assuming that the tex file is in "C:\Myfolder\file.tex" - Open your 'file.tex' in TexMaker and compile it with pdflatex - Open de comand prompt in your root folder "C:\Myfolder" or open it anywhere and type "cd C:\Myfolder". - Once you are in that folder type "makeindex.exe file – Manuel Pena Oct 24 '15 at 22:48

The advantage of Texmaker is that it allows you to do without the command prompt. And it is not necessary to go through arara either.There are several ways to do this.

Change the command of the MakeIndex button

If you use the button below to launch the compilers one by one you just need to change the MakeIndex button command.

To do this you must go to Options - Configure Texmaker - Commands. And must change the command corresponding to MakeIndex to :

makeindex %.nlo -s nomencl.ist -o %.nls -t %.nlg


All you have to do is use the button to compile once with PDFLaTeX, once with MakeIndex and once more with PDFLaTeX.

Create a customized Quick Build

If you prefer to use the Quick Build button (or press the F1 key) rather than pressing the buttons calling the compilers a lot of times you can edit what the Quick Build button do.

Go to Options - Configure Texmaker - Quick Build and create your own command with the wizard. For example, for operations PDFLaTeX + BibTeX + MakeIndex + PDFLaTeX x2 + View PDF I got the following command :

pdflatex -synctex=1 -interaction=nonstopmode %.tex|bibtex %.aux|makeindex %.idx|pdflatex -synctex=1 -interaction=nonstopmode %.tex|pdflatex -synctex=1 -interaction=nonstopmode %.tex|evince %.pdf


Warning, if you have modified the MakeIndex call command, you still need to modify this last command line. All you have to do is replace in the command line makeindex %.idx by makeindex %.nlo -s nomencl.ist -o %.nls -t %.nlg. Now your Quick Build will work with nomencl.

Create a customized command

If you prefer use customized command rather than Quick Build, go to User - User Commands - Edit User Commands and create your own command with the wizard ; then replace in the command line makeindex %.idx by makeindex %.nlo -s nomencl.ist -o %.nls -t %.nlg.