Discussion:
pdflatex errors in doc dir
Corinna Vinschen
2013-06-28 08:21:21 UTC
Permalink
Hi Warren,


after I upgrade my server from Fedora 17 to Fedora 18, I now get
an error message when trying to build the PDFs:

xmlto --skip-validation --with-dblatex pdf -o cygwin-ug-net/ /home/corinna/src/cygwin/vanilla/winsup/doc/cygwin-ug-net.xml
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.4)
===================================================
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
[...]
Build cygwin-ug-net.pdf
pdflatex failed
cygwin-ug-net.tex:358: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \bin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:359: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:359: leading text: that the root path is \nolinkurl{C:\Cygwin}
cygwin-ug-net.tex:360: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:360: leading text: ...} file in \nolinkurl{C:\Cygwin\etc\fstab}
[...]
Unexpected error occured
Error: pdflatex compilation failed

All the error message lead to the backslash as a character being
interpreted as a special character suddenly. This wasn't the case
before and, I believe, you probably don't see this when creating
the docs under Cygwin.

The package containing the pdflatex tool is called

texlive-latex-bin-bin-svn14050.0-20.20130321_r29448.fc18.noarch

Is this a bug in that package, or are we doing something wrong all
the time and only a newer pdflatex version is more aggressive in
error handling?


Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Corinna Vinschen
2013-06-28 08:25:07 UTC
Permalink
Post by Corinna Vinschen
Hi Warren,
after I upgrade my server from Fedora 17 to Fedora 18, I now get
xmlto --skip-validation --with-dblatex pdf -o cygwin-ug-net/ /home/corinna/src/cygwin/vanilla/winsup/doc/cygwin-ug-net.xml
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.4)
===================================================
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
[...]
Build cygwin-ug-net.pdf
pdflatex failed
cygwin-ug-net.tex:358: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \bin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:359: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:359: leading text: that the root path is \nolinkurl{C:\Cygwin}
cygwin-ug-net.tex:360: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:360: leading text: ...} file in \nolinkurl{C:\Cygwin\etc\fstab}
[...]
Unexpected error occured
Error: pdflatex compilation failed
All the error message lead to the backslash as a character being
interpreted as a special character suddenly. This wasn't the case
before and, I believe, you probably don't see this when creating
the docs under Cygwin.
To be more exact: This affects *only* backslash sequences in the
<filename>...</filename> bracket.

This is ok:

<screen>
\\server\share\...
</screen>

This bombs:

<filename>\\server\share\foo</filename>
Post by Corinna Vinschen
The package containing the pdflatex tool is called
texlive-latex-bin-bin-svn14050.0-20.20130321_r29448.fc18.noarch
Is this a bug in that package, or are we doing something wrong all
the time and only a newer pdflatex version is more aggressive in
error handling?
Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Corinna Vinschen
2013-07-15 10:23:48 UTC
Permalink
Warren? Ping?
Post by Corinna Vinschen
Post by Corinna Vinschen
Hi Warren,
after I upgrade my server from Fedora 17 to Fedora 18, I now get
xmlto --skip-validation --with-dblatex pdf -o cygwin-ug-net/ /home/corinna/src/cygwin/vanilla/winsup/doc/cygwin-ug-net.xml
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.4)
===================================================
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
[...]
Build cygwin-ug-net.pdf
pdflatex failed
cygwin-ug-net.tex:358: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \bin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:359: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:359: leading text: that the root path is \nolinkurl{C:\Cygwin}
cygwin-ug-net.tex:360: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:360: leading text: ...} file in \nolinkurl{C:\Cygwin\etc\fstab}
[...]
Unexpected error occured
Error: pdflatex compilation failed
All the error message lead to the backslash as a character being
interpreted as a special character suddenly. This wasn't the case
before and, I believe, you probably don't see this when creating
the docs under Cygwin.
To be more exact: This affects *only* backslash sequences in the
<filename>...</filename> bracket.
<screen>
\\server\share\...
</screen>
<filename>\\server\share\foo</filename>
Post by Corinna Vinschen
The package containing the pdflatex tool is called
texlive-latex-bin-bin-svn14050.0-20.20130321_r29448.fc18.noarch
Is this a bug in that package, or are we doing something wrong all
the time and only a newer pdflatex version is more aggressive in
error handling?
Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Corinna Vinschen
2013-07-15 11:28:30 UTC
Permalink
Post by Corinna Vinschen
Warren? Ping?
Post by Corinna Vinschen
Post by Corinna Vinschen
Hi Warren,
after I upgrade my server from Fedora 17 to Fedora 18, I now get
xmlto --skip-validation --with-dblatex pdf -o cygwin-ug-net/ /home/corinna/src/cygwin/vanilla/winsup/doc/cygwin-ug-net.xml
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.4)
===================================================
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
[...]
Build cygwin-ug-net.pdf
pdflatex failed
cygwin-ug-net.tex:358: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \bin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:359: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:359: leading text: that the root path is \nolinkurl{C:\Cygwin}
cygwin-ug-net.tex:360: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:360: leading text: ...} file in \nolinkurl{C:\Cygwin\etc\fstab}
[...]
Unexpected error occured
Error: pdflatex compilation failed
All the error message lead to the backslash as a character being
interpreted as a special character suddenly. This wasn't the case
before and, I believe, you probably don't see this when creating
the docs under Cygwin.
To be more exact: This affects *only* backslash sequences in the
<filename>...</filename> bracket.
<screen>
\\server\share\...
</screen>
<filename>\\server\share\foo</filename>
This is really getting annoying. If I use '\\', the generated HTML
docs will retain the double backslashes, thus making the output
incorrect. If I try to use the HTML numeric character reference
&#92; instead, it works for HTML again but not for PDF, which gets
the character converted to a backslash again, producing the same
errors as outlined in my OP.

I have no idea how to fix this. If we can't get this fixed we will
have an old PDF version of the docs online.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Christopher Faylor
2013-07-15 14:42:34 UTC
Permalink
Warren doesn't seem to be subscribed to this ml. He is now.
Post by Corinna Vinschen
Post by Corinna Vinschen
Warren? Ping?
Post by Corinna Vinschen
Post by Corinna Vinschen
Hi Warren,
after I upgrade my server from Fedora 17 to Fedora 18, I now get
xmlto --skip-validation --with-dblatex pdf -o cygwin-ug-net/ /home/corinna/src/cygwin/vanilla/winsup/doc/cygwin-ug-net.xml
Build the book set list...
Build the listings...
XSLT stylesheets DocBook - LaTeX 2e (0.3.4)
===================================================
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
prompt: default template used in programlisting or screen
[...]
Build cygwin-ug-net.pdf
pdflatex failed
cygwin-ug-net.tex:358: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \bin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:358: Undefined control sequence \cygwin.
cygwin-ug-net.tex:358: leading text: \nolinkurl{C:\Cygwin\bin\cygwin1.dll}
cygwin-ug-net.tex:359: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:359: leading text: that the root path is \nolinkurl{C:\Cygwin}
cygwin-ug-net.tex:360: Undefined control sequence \Cygwin.
cygwin-ug-net.tex:360: leading text: ...} file in \nolinkurl{C:\Cygwin\etc\fstab}
[...]
Unexpected error occured
Error: pdflatex compilation failed
All the error message lead to the backslash as a character being
interpreted as a special character suddenly. This wasn't the case
before and, I believe, you probably don't see this when creating
the docs under Cygwin.
To be more exact: This affects *only* backslash sequences in the
<filename>...</filename> bracket.
<screen>
\\server\share\...
</screen>
<filename>\\server\share\foo</filename>
This is really getting annoying. If I use '\\', the generated HTML
docs will retain the double backslashes, thus making the output
incorrect. If I try to use the HTML numeric character reference
&#92; instead, it works for HTML again but not for PDF, which gets
the character converted to a backslash again, producing the same
errors as outlined in my OP.
I have no idea how to fix this. If we can't get this fixed we will
have an old PDF version of the docs online.
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Warren Young
2013-07-18 19:34:03 UTC
Permalink
Post by Corinna Vinschen
after I upgrade my server from Fedora 17 to Fedora 18, I now get
This is a known problem in TexLive 2009:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=563659#14

That URL takes you to a patch that is supposed to fix it.

I offer two alternate fixes:

1. Switch to forward slashes. It shouldn't confuse anyone in 2013.

2. Switch to FOP based document formatting.

The current PDF document formatting chain goes something like this:

DocBook -> xmlto -> dblatex -> .tex -> TeX -> .dvi -> dvipdf -> PDF

The way I've always done DocBook -> PDF is this instead:

DocBook -> xsltproc -> .fo -> FO Processor -> PDF

It's a more direct processing chain, with no hidden intermediaries.

FOP is just one of several available FO processors. It happens to be
the only libre one, but there are free-as-in-cost ones we can use if
only for debugging.

The downside is the new dependency on FOP, and hence, Java.

FOP is in many Linux package repos now, and where it isn't, installing
from the dist tarball is easy. Installing Java on Linux is easy these
days, too.

On Cygwin, you have to go through Cygwin Ports, and then hack
/usr/bin/fop to add "-Djava.awt.headless=true" to the java command, else
you're forced to run under X. (The same fix may be required on Linux as
well, depending on how FOP was packaged.)

The Makefile.in patch is trivial:

Index: Makefile.in
===================================================================
RCS file: /cvs/src/src/winsup/doc/Makefile.in,v
retrieving revision 1.33
diff -r1.33 Makefile.in
26a27,28
Post by Corinna Vinschen
UG_FO := cygwin-ug-net/cygwin-ug.fo
63c65,66
< -${XMLTO} pdf -o cygwin-ug-net/ $<
---
Post by Corinna Vinschen
xsltproc --xinclude fo.xsl $< > $(UG_FO)
You'd want to add *.fo to the clean target, too.

You also need a fo.xsl file, attached, which is similar in spirit to the
existing cygwin.xsl file. (That file should be renamed to something
like html.xsl, if we go this direction.)

I'm using the fo2pdf script from MySQL++ here, also attached, which
abstracts away the difference between Apache FOP, Antenna House XSL
Formatter, and RenderX XEP. You can replace it with a simple "fop"
command, if you don't want the flexibility.
Ken Brown
2013-07-18 20:11:19 UTC
Permalink
Post by Warren Young
Post by Corinna Vinschen
after I upgrade my server from Fedora 17 to Fedora 18, I now get
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=563659#14
That URL takes you to a patch that is supposed to fix it.
1. Switch to forward slashes. It shouldn't confuse anyone in 2013.
2. Switch to FOP based document formatting.
What about

3. Install a newer version of TeX Live. Is TeX Live 2009 really the
newest version available for Fedora 18?

Ken
Corinna Vinschen
2013-07-18 20:32:01 UTC
Permalink
Post by Ken Brown
Post by Warren Young
Post by Corinna Vinschen
after I upgrade my server from Fedora 17 to Fedora 18, I now get
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=563659#14
That URL takes you to a patch that is supposed to fix it.
1. Switch to forward slashes. It shouldn't confuse anyone in 2013.
2. Switch to FOP based document formatting.
What about
3. Install a newer version of TeX Live. Is TeX Live 2009 really the
newest version available for Fedora 18?
F18 is texlive-2012-20.20130321_r29448.fc18.x86_64, F19 is
texlive-2013-0.1.20130608_r30832.fc19.x86_64. The problem occurs with
both versions. I have no idea which of the zillion noarch components is
affecting this. All of them come with their own svnXXXX version number.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Corinna Vinschen
2013-07-18 21:15:04 UTC
Permalink
Post by Warren Young
Post by Corinna Vinschen
after I upgrade my server from Fedora 17 to Fedora 18, I now get
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=563659#14
That URL takes you to a patch that is supposed to fix it.
As I just wrote in my other mail to Ken, this occurs with texlive 2012
and 2013.

Unfortunately the patch doesn't apply cleanly, and the xsltsl lib, which
the patch refers, is not available in Fedora. I downloaded it from
sourceforge, patched the offical inlined.xsl file accordingly, and was
able to build the PDF doc.

But that's kind of non-standard, not a generic solution. Is it possible
to override the definition of the filename tag in our own stylesheet?
Can we include xsltsl's string.xsl in our doc dir, or is there a way to
do this in our own tag without using the xstlsl string.xsl file?
Post by Warren Young
1. Switch to forward slashes. It shouldn't confuse anyone in 2013.
That's possible, but it's wrong to use them in documentation when
talking about DOS paths. I'm more inclined to discuss other options
first.
Post by Warren Young
2. Switch to FOP based document formatting.
[...]
The downside is the new dependency on FOP, and hence, Java.
FOP is in many Linux package repos now, and where it isn't,
installing from the dist tarball is easy. Installing Java on Linux
is easy these days, too.
On Cygwin, you have to go through Cygwin Ports, and then hack
/usr/bin/fop to add "-Djava.awt.headless=true" to the java command,
else you're forced to run under X. (The same fix may be required on
Linux as well, depending on how FOP was packaged.)
That's really not an option. It's much too complicated and I don't
want us to rely on non-OSS software just to build the docs.

The backslash weirdness could also be worked around if we had a way to
add a processing stage during the PDF build. The problem is that the
PDF is generated directly from the cygwin-ug-net.xml input file. If we
could generate an intermediate file, which is cygwin-ug-net.xml with all
includes resolved, we could replace the backslashes in filename tags
with double backslashes and feed the result to xmlto. How complicated
is that?


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Yaakov (Cygwin/X)
2013-07-19 05:24:40 UTC
Permalink
Post by Corinna Vinschen
Post by Warren Young
2. Switch to FOP based document formatting.
[...]
The downside is the new dependency on FOP, and hence, Java.
FOP is in many Linux package repos now, and where it isn't,
installing from the dist tarball is easy. Installing Java on Linux
is easy these days, too.
On Cygwin, you have to go through Cygwin Ports, and then hack
/usr/bin/fop to add "-Djava.awt.headless=true" to the java command,
else you're forced to run under X.
Yes, I have fixed that locally as well.
Post by Corinna Vinschen
That's really not an option. It's much too complicated and I don't
want us to rely on non-OSS software just to build the docs.
FWIW, Cygwin Ports' Java implementation is based on GNU Classpath and
JamVM, which is all FOSS and fairly lightweight, but obviously not a
perfect replacement for Su^WOracle Java. FOP and all its dependencies
are also FOSS, and they are present in Fedora.

This is sufficient to run FOP to build PDF versions of the X.Org
documentation, Ant to build most Java packages, javac/javah/etc. for
compiling Java, ECJ as the built-in compiler for gcj, not to mention the
few Java-GNOME programs in Ports.


Yaakov
Corinna Vinschen
2013-07-19 09:38:15 UTC
Permalink
Post by Yaakov (Cygwin/X)
Post by Corinna Vinschen
Post by Warren Young
2. Switch to FOP based document formatting.
[...]
The downside is the new dependency on FOP, and hence, Java.
FOP is in many Linux package repos now, and where it isn't,
installing from the dist tarball is easy. Installing Java on Linux
is easy these days, too.
On Cygwin, you have to go through Cygwin Ports, and then hack
/usr/bin/fop to add "-Djava.awt.headless=true" to the java command,
else you're forced to run under X.
Yes, I have fixed that locally as well.
Post by Corinna Vinschen
That's really not an option. It's much too complicated and I don't
want us to rely on non-OSS software just to build the docs.
FWIW, Cygwin Ports' Java implementation is based on GNU Classpath
and JamVM, which is all FOSS and fairly lightweight, but obviously
not a perfect replacement for Su^WOracle Java. FOP and all its
dependencies are also FOSS, and they are present in Fedora.
This is sufficient to run FOP to build PDF versions of the X.Org
documentation, Ant to build most Java packages, javac/javah/etc. for
compiling Java, ECJ as the built-in compiler for gcj, not to mention
the few Java-GNOME programs in Ports.
Just a misunderstanding on my part. Sorry.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Warren Young
2013-07-19 00:50:06 UTC
Permalink
Post by Corinna Vinschen
Is it possible
to override the definition of the filename tag in our own stylesheet?
Yes, but to do that, you'd still have to switch from xmlto to xsltproc,
since it would require that you create something like my fo.xsl.

You can't just stuff the customizations into the existing cygwin.xsl,
since you'd affect HTML output, too.

It's not easy to do this: http://goo.gl/HKxcK
Post by Corinna Vinschen
That's really not an option. It's much too complicated
Really?

1. sudo yum install fop

2. Patch Makefile.in as given

3. cvs add fo2pdf fo.xsl

Done.
Post by Corinna Vinschen
I don't
want us to rely on non-OSS software just to build the docs.
Where is this reliance?

Apache FOP is Apache 2.0 licensed.

FOP runs under Java, which is open enough that it's in Debian stable;
and if that's not good enough, FOP also runs under GCJ, which is GPL'd.

(Yaakov's FOP packages run under GCJ since Oracle's JRE isn't packaged
for Cygwin.)
Corinna Vinschen
2013-07-19 09:37:51 UTC
Permalink
Post by Warren Young
Post by Corinna Vinschen
Is it possible
to override the definition of the filename tag in our own stylesheet?
Yes, but to do that, you'd still have to switch from xmlto to
xsltproc, since it would require that you create something like my
fo.xsl.
You can't just stuff the customizations into the existing
cygwin.xsl, since you'd affect HTML output, too.
It's not easy to do this: http://goo.gl/HKxcK
Post by Corinna Vinschen
That's really not an option. It's much too complicated
Really?
1. sudo yum install fop
2. Patch Makefile.in as given
3. cvs add fo2pdf fo.xsl
Done.
Well, ok. Except the Makefile.in patch didn't work OOTB. Here's the
right one:

Index: Makefile.in
===================================================================
RCS file: /cvs/src/src/winsup/doc/Makefile.in,v
retrieving revision 1.33
diff -u -p -r1.33 Makefile.in
--- Makefile.in 4 Jun 2013 11:50:41 -0000 1.33
+++ Makefile.in 19 Jul 2013 09:16:40 -0000
@@ -26,6 +26,8 @@ FAQ_SOURCES:= $(wildcard ${srcdir}/faq*.

.SUFFIXES: .html .body

+UG_FO := cygwin-ug-net/cygwin-ug.fo
+
.html.body:
$(srcdir)/bodysnatcher.pl $<

@@ -60,7 +62,8 @@ cygwin-ug-net/cygwin-ug-net.html : cygwi

# Some versions of jw hang with the -o option
cygwin-ug-net/cygwin-ug-net.pdf : cygwin-ug-net.xml
- -${XMLTO} pdf -o cygwin-ug-net/ $<
+ xsltproc --xinclude $(srcdir)/fo.xsl $< > $(UG_FO)
+ $(srcdir)/fo2pdf $(UG_FO) $@

cygwin-api/cygwin-api.html : cygwin-api.xml
-${XMLTO} html -o cygwin-api/ -m $(srcdir)/cygwin.xsl $<

Please, always test by building outside the source tree. This is what
matters, not the build inside the source tree which is *not* supported
anyway. Also, unified context diffs (diff -u{p}) are easier to handle.
Post by Warren Young
Post by Corinna Vinschen
I don't
want us to rely on non-OSS software just to build the docs.
Where is this reliance?
I misunderstood your mail. I just read it again and I see that you
wrote "[FOP] happens to be the only libre one", but I screwed that up
while reading into something along the lines of "FOP is not libre".
Sorry about that.

Ok, thank you. I'm going to apply your patch, after discussing this
tiny bit:

This stuff in fo2pdf looks not kosher:

AHCMD=/usr/XSLFormatterV42/run.sh
FOPCMD=`which /usr/local/fop/fop /usr/bin/fop | head -1 2> /dev/null`
XEPCMD=/usr/local/xep/xep

The check for this XSLFormatter run script and checking for stuff
installed in /usr/local looks not right. Also, are these XSLFormatter
and xep thingies non-libre stuff? If so, I'd rather drop all of this
and just call fop from the Makefile directly.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Warren Young
2013-07-19 19:36:53 UTC
Permalink
I addressed that in the first message: if you don't want the flexibility
fo2pdf provides -- which allows use of non-libre FO processors if
present, with a fallback to FOP -- you can just replace the fo2pdf call
with a direct call to fop.
Corinna Vinschen
2013-07-20 10:58:25 UTC
Permalink
Post by Warren Young
I addressed that in the first message: if you don't want the
flexibility fo2pdf provides -- which allows use of non-libre FO
processors if present, with a fallback to FOP -- you can just
replace the fo2pdf call with a direct call to fop.
My reading skills are detoriating, apparently. Ok, I'm going with the
simpler method of calling xsltproc|fop in Makefile.in directly, and for
symmetry I changed the cygwin-api.pdf rule accordingly. This seems to
work nicely now.

Except for an error message while building the PDFs:

SEVERE: Couldn't find hyphenation pattern en

The PDF's are built, but "SEVERE" so, but to no avail:

texlive-hyphen-english-svn25990.0-20.fc18.noarch
texlive-hyphen-base-svn29197.0-20.fc18.noarch
texlive-findhyph-bin-svn14758.0-20.20130321_r29448.fc18.noarch
hyphen-2.8.5-2.fc18.x86_64
texlive-hyph-utf8-svn29193.0-20.fc18.noarch
texlive-findhyph-svn28350.3.2-20.fc18.noarch
texlive-hyphenat-svn15878.2.3c-20.fc18.noarch
texlive-fixltxhyph-svn25832.0.4-20.fc18.noarch
hyphen-de-0.20060120-9.fc18.noarch
hyphen-en-2.8.5-2.fc18.noarch
texlive-hyphenex-svn29349.0-20.fc18.noarch


Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Warren Young
2013-07-20 12:04:18 UTC
Permalink
Post by Corinna Vinschen
SEVERE: Couldn't find hyphenation pattern en
You can either disable hyphenation by dropping this into fo.xsl:

<xsl:template name="set.flow.properties">
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:template>

...or you can download and install a hyphenation rule set. If Fedora
doesn't distribute such a package, see step 6 here: http://goo.gl/rleKB

FWIW, it seems Yaakov's FOP package includes a hyphenation rule set.
Corinna Vinschen
2013-07-21 10:16:35 UTC
Permalink
Post by Warren Young
Post by Corinna Vinschen
SEVERE: Couldn't find hyphenation pattern en
<xsl:template name="set.flow.properties">
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:template>
Adding this makes no difference.
Post by Warren Young
...or you can download and install a hyphenation rule set. If
http://goo.gl/rleKB
FWIW, it seems Yaakov's FOP package includes a hyphenation rule set.
Installing Yaakov's fop-hyph.jar doesn't work for me either. I have no
idea if I installed it into the right spot of course. I tried
/usr/share/java (that's where fop.jar is), /usr/share/fop,
/usr/share/fop/lib, and /usr/share/fop/hyph.

Well, I'm not too keen to install external dependencies and the
error message is SEVERE, but not fatal. The output looks ok,
so I leave it at that for now.


Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Yaakov (Cygwin/X)
2013-07-21 10:32:41 UTC
Permalink
Post by Corinna Vinschen
Post by Warren Young
FWIW, it seems Yaakov's FOP package includes a hyphenation rule set.
Installing Yaakov's fop-hyph.jar doesn't work for me either. I have no
idea if I installed it into the right spot of course. I tried
/usr/share/java (that's where fop.jar is), /usr/share/fop,
/usr/share/fop/lib, and /usr/share/fop/hyph.
Try placing it in /usr/share/java, and adding "fop-hyph" just before
"fop" in the set_classpath call of /usr/bin/fop.


Yaakov
Corinna Vinschen
2013-07-21 18:55:52 UTC
Permalink
Post by Yaakov (Cygwin/X)
Post by Corinna Vinschen
Post by Warren Young
FWIW, it seems Yaakov's FOP package includes a hyphenation rule set.
Installing Yaakov's fop-hyph.jar doesn't work for me either. I have no
idea if I installed it into the right spot of course. I tried
/usr/share/java (that's where fop.jar is), /usr/share/fop,
/usr/share/fop/lib, and /usr/share/fop/hyph.
Try placing it in /usr/share/java, and adding "fop-hyph" just before
"fop" in the set_classpath call of /usr/bin/fop.
Yes, that helps indeed. However, the next updat to fop will break this
again. Do you happen to know of a way to set this without changing fop?


Thanks,
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Warren Young
2013-07-22 22:27:50 UTC
Permalink
the next updat to fop will break this again.
FWIW, FOP updates happen on about a 2-year basis, and even then, new
versions tend to focus on features for users generating output from
within Java programs. For the Cygwin docs, you could probably fall back
to the epochal 0.20.5 release from 2003 and still be okay.

I don't mean to minimize the problem. You're just more likely to need
to deal with it when commissioning new build machines than when new FOP
releases come out.
Corinna Vinschen
2013-07-23 08:42:48 UTC
Permalink
Post by Warren Young
the next updat to fop will break this again.
FWIW, FOP updates happen on about a 2-year basis, and even then, new
versions tend to focus on features for users generating output from
within Java programs. For the Cygwin docs, you could probably fall
back to the epochal 0.20.5 release from 2003 and still be okay.
I don't mean to minimize the problem. You're just more likely to
need to deal with it when commissioning new build machines than when
new FOP releases come out.
Fedora, every 6 months :)

Anyway, the problem is not fatal and I have Yaakov's fop.hyph.jar
which works nicely, so, never mind.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Warren Young
2013-07-22 22:22:37 UTC
Permalink
Post by Corinna Vinschen
Post by Warren Young
Post by Corinna Vinschen
SEVERE: Couldn't find hyphenation pattern en
<xsl:template name="set.flow.properties">
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:template>
Adding this makes no difference.
Try this variation:

<xsl:attribute-set name="root.properties">
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:attribute-set>

Same thing, it just disables the flag at a higher level.
Corinna Vinschen
2013-07-23 08:41:50 UTC
Permalink
Post by Warren Young
Post by Corinna Vinschen
Post by Warren Young
Post by Corinna Vinschen
SEVERE: Couldn't find hyphenation pattern en
<xsl:template name="set.flow.properties">
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:template>
Adding this makes no difference.
<xsl:attribute-set name="root.properties">
<xsl:attribute name="hyphenate">false</xsl:attribute>
</xsl:attribute-set>
Same thing, it just disables the flag at a higher level.
When I tried it, I also search the net and came up with this solution,
but it didn't avoid the message either for some reason. I just tried
it again, just to be sure.


Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
Loading...