groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Groff] Strange error messages from Groff 1.22.3


From: Eli Zaretskii
Subject: Re: [Groff] Strange error messages from Groff 1.22.3
Date: Sat, 08 Nov 2014 15:46:25 +0200

> Date: Sat, 08 Nov 2014 14:36:35 +0100 (CET)
> Cc: address@hidden
> From: Werner LEMBERG <address@hidden>
> 
> >   .lf 1 man\man1\chem.1
> 
> This is a feature of GNU troff (and I guess that other troff
> implementations are doing it similarly): Arguments of `.lf' are
> handled the normal troff way, including expansion.  For example, you
> might write
> 
>   .ds foo /usr/local
>   ...
>   .lf 1 \*[foo]
> 
> A side consequence is that stuff like `\m' is interpreted as escape
> sequences.

Right, that was also my conclusion from reading troff/input.cpp.

> > One possible solution to this is to convert all backslashes to
> > forward slashes '/' when writing the .lf directive.
> 
> This would be the best solution, I think.

OK, will do.

Is there a good place to put the function that will do this?  Or
should I just have it in each place that needs it?

> > Unfortunately, there are quite a few places where .lf is emitted,
> > [...]
> 
> Indeed.  I guess that gnulib already offers a canonical function to
> convert file names into a standard form with forward slashes, so it's
> unfortunate that we are bitten by this problem right now since we will
> switch to standard autotools in the very near future (cf. branch
> `origin/automake3')

I don't think this is relevant (unless I again am missing something):
the issue here is not canonicalization of file names, but rather
conversion of each backslash in a file name to a forward slash.  This
can be handled by a simple loop.

Or did you mean something else?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]