The nomencl package can be used to automatically generate a Nomenclature or List of Symbols, but it may require some changes to your regular LaTeX build process for full automation.
(The following steps have already been done on Windows systems in the CAE domain.)
- Go to the Build / Define Output Profiles menu.
- Click on "LaTeX => PDF" in the profiles list, and click the Copy button to create a new profile.
- Name the new profile "LaTeX => PDF (Nomenclature)" and click OK.
- Click on "LaTeX => PDF (Nomenclature): in the profiles list, and in the Makeindex section on the right, ensure the following are set:
- Do not use MakeIndex in this profile is unchecked (should be by default).
- Path to MakeIndex executable points to the correct makeindex.exe (should be by default).
- Command line arguments to pass to MakeIndex (including all quotes shown below):
"%bm".nlo -s nomencl.ist -o "%bm".nls
Note for people using TeXLive 2010: use %tm instead of %bm ( reference here) - Click the OK button and the new profile is complete.
Now whenever you use the LaTeX => PDF (Nomenclature) profile, your document will automatically be scanned for \nomenclature commands, and the appropriate symbols and descriptions will be added to the nomenclature file.
The default column widths in the nomenclature are enough for most usage, but if you have an unusually long abbreviation (for example, FPGA-SoPC), you'll need more room. Change the \printnomenclature command in thesis.tex to include an optional argument for the abbreviation column width. For example, \printnomenclature[1in].
The default sort order for the nomenclature is symbols (everything that's not a number or string), numbers, and strings (everything starting with a letter). Your committee or advisor may other requirements on how to sort and group your list of symbols (for example: grouping lowercase letters, uppercase letters, lowercase Greek letters, uppercase Greek letters, abbreviations starting with a letter, and abbreviations starting with numbers).
The default sort order for the nomenclature is symbols (everything that's not a number or string), numbers, and strings (everything starting with a letter). Your committee or advisor may other requirements on how to sort and group your list of symbols (for example: grouping lowercase letters, uppercase letters, lowercase Greek letters, uppercase Greek letters, abbreviations starting with a letter, and abbreviations starting with numbers).
You can use the optional argument to the \nomenclature command to adjust the sort order. Using \nomenclature[1]{$a$}{a variable in lowercase English} adds an additional prefix "1" to the sort order. All symbols with a prefix "1" will be grouped together, and then sorted by the default sort order. The default prefix for sort order is "a".
If you require complete control over the sort order, then add the [noprefix] option to the \usepackage{nomencl} line, and add the optional argument to every \nomenclaturecommand, but this will be a lot of work for a long list of symbols. Most people get by fine with the default sort order, or by grouping and sorting.