>> The only problem that remains is that I don't know where to call
>> InsetPrintNomencl::latex
>> so that this code appears in the LaTeX output before the command
>> \printnomenclature.
>>
>> I thought I could do the same as for
>> InsetPrintIndex::latex
>> but I can't find out where this routine is called.
>
> InsetPrintNomencl is an InsetCommand. So if latex is not implemented in
> InsetPrintNomencl itself, InsetCommand::latex is called
But latex is implemented in InsetPrintNomencl but it is still not called.
> If I got you right, you probably need to do something like
Yes, but the problem is that this latex routine is still never called.
> However, why do you reset \nomlabelwidth?
Because this is the only solution. The optional argument of \printnomenclature is a width, but only
LaTeX knows the width of the widest used symbol, because only LateX knows the font metrics of the
used output font, the fontsize, shape, etc..
> Some further comments:
>
>> +docstring InsetNomencl::nomenclSymbol() const
>
> Is this function really needed? See below ...
Not really, I only used it to keep the overview and this will go once I get my
code running.
>> + // return the widest symbol
>> + if (nomencl && !nomencl->nomenclSymbol().empty())
>> + return nomencl->nomenclSymbol();
>> + // otherwise return an empty string
>> + return from_ascii("");
>
> + // return the widest symbol
> + docstring const symb = nomencl ?
> + nomencl->getParam("symbol") : docstring();
> + return symb;
I'll change this.
thanks and regards
Uwe