I am using \usepackage{nomencl} to define a list of symbols... For example

\nomenclature[B]{$\varepsilon$}{Permittivity \nomunit{$Farads/cm$}}
\nomenclature[B]{$a$}{Lattice constant\nomunit{$\AA$}}

Now I want to add new symbols, but I do not understand why my pre-existing list is not getting updated in the output file..

Can you please help?

I already tried deleting auxillary file, but it does not help

Here is a working example: (please note the package adsphd can be downloaded here: https://people.cs.kuleuven.be/~wannes.meert/adsphd/)

\title{\textsc{Title of the thesis}}

\supervisor{Prof. XX}{}
\president{Prof. XX}
\jury{Dr XX }
\externaljurymember{Prof. XX}{far away place}
\website{} % Leave empty to hide
\email{} % Leave empty to hide

\date{Nov 2017}


\usepackage{nomencl}   % For nomenclature
\renewcommand{\nomname}{List of Symbols}
  \addcontentsline{toc}{chapter}{\nomname} %% comment to exclude from TOC

    \ifstrequal{#1}{A}{Physics Constants}{%
        \ifstrequal{#1}{B}{Other Symbols}{}}%

\usepackage{glossaries} % For list of abbreviations
\newcommand{\glossname}{List of Abbreviations}
  \addcontentsline{toc}{chapter}{\glossname} %% comment to exclude from TOC

\usepackage[utf8]{inputenc} %Uncommented for BibLatex
\usepackage{csquotes}  %Uncommented for BibLatex
    sorting = none, % to have references appear as they are cited
    firstinits=true, %added new
    clearlang=true, %added new
]{biblatex}  %Uncommented for BibLatex
\addbibresource{allpapers.bib}  %Uncommented for BibLatex
\usepackage{textcomp} % nice greek alphabet
\usepackage{pifont}   % Dingbats
\usepackage{mathtools} % for short intertext; somya
\usepackage[labelformat=parens,labelfont=md, font=small]{subcaption}
\usepackage{gensymb} % for degree symbol

\usepackage{color,soul} % for text highlight
\setlength{\belowcaptionskip}{-5pt} %to remove space below caption
\usepackage{array, makecell, booktabs}
\DeclareSIUnit \uF { \micro \farad }

    \romannumeral-`\x % remove space at the beginning of \setcitestyle
\newglossaryentry{md}{name={MD},description={molecular dynamics}}







%\frontmatter % to get \pagenumbering{roman}




\mainmatter % to get \pagenumbering{arabic}


\nomenclature[A]{$k$}{Boltzmann Constant  \nomunit{$8.617\times10^5 \, eV.K^{-1}$}}
An example text can be typed here !


  • have you run makeindex? it would also be way easier to help, if you could provide a full MWE
    – naphaneal
    Commented Jul 25, 2018 at 10:06
  • Hi Naphaneal, How do I run makeindex ? (Im using texstudio).What do you mean by MWE?
    – Rouge
    Commented Jul 26, 2018 at 7:04
  • MWE: minimal working example. smallest amount of code, that reproduces your problem. makeindex you run either via Tools -> Commands -> MakeIndex or you create a custom command in the configuration menu. Also you need to have \makenomenclature in the source file and you need to have the print command at the place you want the nomenclature to appear.
    – naphaneal
    Commented Jul 26, 2018 at 9:42
  • hi naphaneal, Hi added the MWE in the question...I tried using makeindex but it is not working.. You can see althought the table of content shows a page number corresponding to the list of symbol.. but on that page there is no list generated... I look forward to your help..
    – Rouge
    Commented Jul 27, 2018 at 11:14
  • you need to clean up your code. there are multiple instances of packages loaded or commented out. you're using \makenomenclature twice. also, you need to check your installation. if stuff's missing, you need to install it and have full install. after cleanup, your code works and produces the required result. btw: you can achieve your result with glossaries or nomencl alone. see: tex.stackexchange.com/questions/154060/… lastly, check your compile routine: pdflatex -> bibtex -> makeindex -> 2x pdflatex -> <pdfviewer of choice> worked for me.
    – naphaneal
    Commented Jul 27, 2018 at 12:37

2 Answers 2


I finally find the solution.

I am using TeXstudio.

Go to Option--> Configure Texstudio --> Commands In the field of Makeindex write the following:

makeindex.exe %.nlo -s nomencl.ist -o %.nls

I have no clue what it means. But it works!

  • those are aux files for nomencl which contain the necessary information. the .nlo contains all the information about your nomenclature, as is. meaning they are unsorted. I think, .nlo simply refers to "nomenclature list object" (there was nothing about it in the documentation), which is transformed by makeindex into a .nls, containing nomenclature in a sorted manner, hence .nls nomenclature list sorted (I'm only guessing, but it seems quite right and the documentation supports this guess.) from that LaTeX gathers all needed information to create the nomenclature.
    – naphaneal
    Commented Jul 27, 2018 at 19:37
  • the inbetween step is nomencl.ist, which is the respective nomenclature style file, from which the output is generated, with regards to your source file.
    – naphaneal
    Commented Jul 27, 2018 at 19:42
  • With this solution, you won't be able to produce an ordinary index any more. Instead of tweaking the default behaviour of the Makeindex binary, you should go to Option --> Configure TeXstudio --> Build (i. e. one tab below Commands you mentioned. There you can define user defined commands. Press the Plus sign. Insert user0:Nomenclature in the left field and makeindex %.nlo -s nomencl.ist -o %.nls in the right field and save everything. Go to the Tools menu and you'll find the newly created command.
    – Jan
    Commented Dec 7, 2023 at 18:18

If makeindex is missing in the command list (Options > Configure Texstudio > Commands) as on my TeXstudio 2.12.14, there is the possibility to add it as a user-defined command: under Options > Configure Texstudio > Build click the green cross to add a new command, name the command and type makeindex %.nlo -s nomencl.ist -o %.nls on a Linux system or makeindex.exe %.nlo -s nomencl.ist -o %.nls on a Windows system. Then, you can run the command from Tools > User > <whateveryounamedit>

enter image description here enter image description here


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .