LaTeX

Nomencl hjælp

26. januar 2009 af Fejl 40 (Slettet)

Hej

Jeg vil gerne lave en nomenclature in en opgave jeg sidder med. Jeg har forstået at jeg skal bruge nomencl pakken. Når jeg compiler får jeg ingen fejl, men linien "A areal" er ikke med i pdf-filen. Min tex-fil er som følger

\documentclass[a4paper,12pt,twoside,titlepage]{report}
\usepackage{nomencl}
\makenomenclature
\begin{document}
\section*{Nomenclature}
\nomenclature{$A$}{areal}
\printnomenclature
resten af teksten
\end{document}

Nogle steder har jeg læst at kommandoerne \makenomenclature og \printnomenclature skal udskiftes med \makeglossary og \printglossary, men det gør ingen forskel.

Hvad gør jeg galt?

Mvh Morten


Svar #1
26. januar 2009 af Fejl 40 (Slettet)

Jeg har læst noget mere om det, og kan forstå at jeg mangler at benytte en \makeindex kommando. Men jeg kan ikke gennemskue hvor denne kommando skal implementeres. Nogen der kan hjælpe mig?


Brugbart svar (2)

Svar #2
27. januar 2009 af daleif (Slettet)

nomencl laver en fil som der skal køres makeindex på

det er desværre de færreste editorere som kan gøre for dig så du må ud i et DOS vindue ellerlignende, navigere til det bibliotek hvori din fil ligger og så udkøre den kommand som er beskrevet i nomencl manualen


Svar #3
27. januar 2009 af Fejl 40 (Slettet)

I en kommandoprompt går jeg ind i det bibliotek hvor min tex fil ligger. Så skriver jeg kommandoen

makeindex 260109.glo -s nomencl.ist -o 260109.gls

Jeg får outputtet

scanning input file 260109.glo...done (0 entries accepted, 0 rejected). Nothing written in 260109.gls.

Jeg har også prøvet at skrive disse kommandoer

makeindex 260109.ind -s nomencl.ist -o 260109.idx
makeindex 260109.idx -s nomencl.ist -o 260109.ind

med samme resultat. Jeg vil virkelig gerne have styr på det, idet jeg skal aflevere specialet om få dage.

Mvh


Brugbart svar (2)

Svar #4
27. januar 2009 af daleif (Slettet)

idx er til index, du skal kigge på hvilke ekstra filer som bliver lavet af LaTeX. Så vidt jeg kan se er det .nlo, så anvend

makeindex 260109.nlo -s nomencl.ist -o 260109.nls


Svar #5
27. januar 2009 af Fejl 40 (Slettet)

Alletiders. Nu virker det. Er det muligt at lave overskriften "Nomenclature" samme størrelse som en sectionoverskrift? Og punkterne i nomenklaturen må også gerne stå med normallinieafstand i stedet for dobbelt.


Brugbart svar (2)

Svar #6
27. januar 2009 af daleif (Slettet)

Det er hardwired ind i pakken, Hvis klassen understøtter \chatper så anvender den den. Du bliver nok nødt til at hacke nomencl for at ændre på noget

hvilket også er grunden til at jeg ikke beskriver nomencl i min bog, jeg vil nok ende op med at nævne glossaries i stedet.


Svar #7
27. januar 2009 af Fejl 40 (Slettet)

Så du anbefaler mig at bruge glossaries i stedet? Eller hvordan skal det forståes?


Brugbart svar (2)

Svar #8
27. januar 2009 af daleif (Slettet)

Ikke videre, hvis du snart skal aflevere kan du ikke nå at lære glossaries, det er en stor motherf...

smid dette i din preamble

\makeatltter
\def\thenomenclature{%
    \section*{\nomname}
    \if@intoc\addcontentsline{toc}{section}{\nomname}\fi%
  \nompreamble
  \list{}{%
    \labelwidth\nom@tempdim
    \leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \itemsep\nomitemsep
    \let\makelabel\nomlabel}}
\makeatother

\setlength\nomitemsep{0pt}


Svar #9
27. januar 2009 af Fejl 40 (Slettet)

Min udbytte af det, er at jeg får en side før forsiden, hvor der står 0pt.


Brugbart svar (2)

Svar #10
27. januar 2009 af daleif (Slettet)

hvis du kiggede i din log ville du se at jeg havde stavet \makeatletter forkert


Svar #11
27. januar 2009 af Fejl 40 (Slettet)

Nu lader det til at den ikke accepterer \nomitemsep i linien

\setlength\nomitemsep{0pt}


Brugbart svar (2)

Svar #12
27. januar 2009 af daleif (Slettet)

\documentclass[a4paper,12pt,twoside,titlepage]{report}
\usepackage{nomencl}
\makenomenclature

\makeatletter
\def\thenomenclature{%
    \section*{\nomname}
    \if@intoc\addcontentsline{toc}{section}{\nomname}\fi%
  \nompreamble
  \list{}{%
    \labelwidth\nom@tempdim
    \leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \itemsep\nomitemsep
    \let\makelabel\nomlabel}}
\makeatother
\setlength\nomitemsep{0pt}
\begin{document}
\section*{Nomenclature}
\nomenclature{$A$}{areal}
\printnomenclature
resten af teksten
\end{document}
 

Dette oversætter fint på mit system


Brugbart svar (2)

Svar #13
29. juli 2009 af Morten_hansen (Slettet)

Hej daleif,

Tak for en virkelig brugbar forklaring af hvordan man får "nomencl-pakken" til at virke :-) 

Jeg har prøvet at indsætte koden fra "svar 12" i min latex-dokument og det virker fint. I ovenstående kode bliver der over selve nomenclatur-listen printet "Nomenclature", er det muligt helt at fjerne dette.

På forhånd tak.

Mvh. Morten


Brugbart svar (2)

Svar #14
29. juli 2009 af Morten_hansen (Slettet)

Hej igen,

Nu har jeg selv løst problemet, ved at bruge kommandoen:
“ \renewcommand{\nomname}{ } “
i “preample” af document.
 


Skriv et svar til: Nomencl hjælp

Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk? Klik her for at oprette en bruger.