12

Is there a way to use rubber with makeglossaries?

I found a solution for the simple case. You have to add the rubber directive to the latex document, in that case myDoc.tex.

% rubber: onchange myDoc.glo 'makeglossaries myDoc'

But when you want to use links to glossary entries in the acronyms descriptions, like in this example:

\newglossaryentry{test}
{
  name={test},
  description={big description of the test)},
}
\newacronym[description={\gls{test}}]{t}{t}{test}

\gls{t}

You have to compile it more often (see glossaries manual, p.16):

latex myDoc
makeglossaries myDoc
latex myDoc
makeglossaries myDoc
latex myDoc

I played a little bit with the rubber directives and rules, but can't get it to work.

Has anybody else an idea?

3

Just add the following additional directive to myDoc.tex

% rubber: watch myDoc.glo

Even so one problem remains, if you rename the glossaryentry (e.g. from "test" to "test2") you have to manually run makeglossaries before calling rubber, because myDoc.gls still contains the old entry "test".

And another side effect, if you compile into a different directory with --into, you have the add the directory to the directive. So calling

rubber --into=tmp myDoc.tex

needs these directives:

% rubber: onchange tmp/myDoc.glo 'makeglossaries myDoc'
% rubber: watch tmp/myDoc.glo
  • Thanks @Bruno. The directives are really helpful. It helped me make tufte-book play nicely with glossaries. :) – Forkrul Assail Jul 3 '13 at 13:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.