# Re: debiandoc-sgml problems (SHORTTAG YES) (LaTeX macros)

```Jens Seidel (tux-master@web.de) wrote:
> Hi,

Hi, (I'm the maintainer of DebianDoc-SGML :-)

> 1)
>
> I updated from Woody to Sid and now I'm unable to create Debian
> reference (http://qref.sf.net):
>
> \$ make
> [snip]
> nsgmls:reference.en.sgml:52:12:E: the name and vi delimiter can be
> omitted from an attribute specification only if SHORTTAG YES is specified
> nsgmls:en/preface.sgml:62:13:E: the name and vi delimiter can be omitted
> from an attribute specification only if SHORTTAG YES is specified
> [snip]
>
> One solution is
>
> \$ cat /usr/share/sgml/debiandoc/dtd/sgml/1.0/debiandoc.dcl \
>  qref.sgml > tmpXX; mv tmpXX qref.sgml
>
> another is appending
> "-d /usr/share/sgml/debiandoc/dtd/sgml/1.0/debiandoc.dcl" to debiandoc2*
> in Makefile.
>
> Can anybody explain this behavior?

Except for needing to remove 'pl' from the list of languages to build there
was no build problem whatsoever.  And in the Makefile there was no mention of
any inclusion of a .dcl file.  What version of DebianDoc-SGML are you running
and which version of the qref did you use?  Oh, what's your locale set to?

> 2)
>
> How can I easily specify a LaTeX macro file which should be included in
> *.tex?

One cannot.  You're supposed to edit your doc in SGML and leave it to the tools
to generate the needed output format.

> This is *very* useful to specify hyphenation rules
> ("\hyphenation{ei-gen-val-ue prop-er-ty}") and to modify the ps, pdf
> output. At the moment it's possible that LaTeX breaks a line
> "text [snip]. See dir/." as follows:
>
> "text [snip]. See dir"
> "/."
>
> That's ugly! LaTeX (especially TeX) is powerful and it should be possible
> to prevent such situation.

Well, that's actually a feature.  Suppose you have a very long path.  LaTeX
has been educated to use the '/' character as a line break possibility.

> One solution is to add
> "\InputIfFileExists{qrefMacroFile.sty}{\usepackage{qrefMacroFile}}{}"
> in the preamble of *.tex. Another is to redefine an important system
> style file, e.g. babel.sty to
>
> \input /path/to/babel.sty % or \include?
> % my macros ...

No, we should absolutely not mess with tetex in any form or shape.  You
would break other users.  Don't go there.

> Who knows another implementation (an environment variable, a config file,
> ...) of this idea? I would use ugly shell commands
> (debiandoc2latex + sed (to insert \InputIfFileExists) + [pdf]latex +
> [pdf]latex + ...).

LaTeX does not work that way.  You have to specify the include file.  It can
use environment variables to find the file, but your .tex document has to
include it explicitly.
>
> PS: The documentation of debiandoc-sgml, ... isn't very useful!

Well, that totally depends on what you want to accomplish.  I more than
agree that the manual should be extended, but DebianDoc-SGML has not been
designed to accept external help when generating the output formats.  And
hence that's not documented.

So, anyway.  It appears there's need to have an extra command line option
to specify a file to be included in the .tex file.  Is this considered a
general need.  If so, I've got no problem implementing it.

Thanks,
Ardo
--
Ardo van Rangelrooij
home email: ardo@debian.org