Perhaps look up template overrides? Bobs site again.
Hth

On Tue, 15 Jun 2021 at 16:07, Kevin Dunn <kd...@hsc.edu> wrote:

> Thanks. Changing the default worked for both xref and link. I could not
> make a custom "mystyle" style work with either of them. That's fine. I
> would prefer to have the same style throughout a document, except when I
> don't want a page reference. "nopage" works for both xrefs and links, so
> now I'm able to do everything I want to do.
>
> FYI, when I tried to use a custom "mystyle", both xref and link gave me
> the default style. xref recognizes page, Page, pageabbrev, pagenumber, and
> nopage. Anything else (including "mystyle") gives the default. link
> recognizes only nopage. Anything else gives the default.
> ------------------------------
> *From:* Bob Stayton <b...@sagehill.net>
> *Sent:* Tuesday, June 15, 2021 2:25 AM
> *To:* Kevin Dunn <kd...@hsc.edu>; docbook-apps@lists.oasis-open.org <
> docbook-apps@lists.oasis-open.org>
>
> *Subject:* Re: [docbook-apps] insert.link.page.number in xsl stylesheets
>
>
> Hi Kevin,
>
> Indeed, it looks like the "select:" mechanism in @xrefstyle was never
> implemented for link element page references, only for xrefs.  This will
> require customizing the generated text instead.  See
> http://www.sagehill.net/docbookxsl/CustomGentext.html#CustomGenText
>
>
> You can change the default (unspecified) style by adding this to your
> customization layer:
>
>
> <xsl:param name="local.l10n.xml" select="document('')"/>
> <l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0";
> <http://docbook.sourceforge.net/xmlns/l10n/1.0>>
>   <l:l10n language="en">
>     <l:context name="xref">
>       <l:template name="page.citation" text=" (page %p)"/>
>     </l:context>
>   </l:l10n>
> </l:i18n>
>
>
> If you don't want to alter the default style, the named style mechanism
> does work, so you could add a this  instead (note the @style attribute):
>
> .
>
> <xsl:param name="local.l10n.xml" select="document('')"/>
> <l:i18n xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0";
> <http://docbook.sourceforge.net/xmlns/l10n/1.0>>
>   <l:l10n language="en">
>     <l:context name="xref">
>       <l:template name="page.citation" style="mystyle" text=" (page %p)"/>
>     </l:context>
>   </l:l10n>
> </l:i18n>
>
>
> Then you would get your style if you specify <link xrefstyle="mystyle">,
> otherwise you get the default.
>
> Bob staytonb...@sagehill.net
>
> On 6/14/2021 8:27 PM, Kevin Dunn wrote:
>
> Putting "'yes'" (single in double quotes) in the param statement got the
> links to put out page numbers. I guess that's what I get for reading
> Chapter 15 before Chapter 1. But links put out the "unspecified" page
> style, no matter what xrefstyle is set to. I tried:
>
> <link xrefstyle="select: page" linkend="source">A Chapter link</link>
>
> <link xrefstyle="select: 'page'" linkend="source">A Chapter link</link>
>
> <link xrefstyle="'select: page'" linkend="source">A Chapter link</link>
>
> <link xrefstyle='select: page' linkend="source">A Chapter link</link>
>
> <link xrefstyle='"select: page"' linkend="source">A Chapter link</link>
>
> In all five cases, the rendering was:
> A Chapter link [15]
>
> Interestingly, xref and link behave differently when it comes to quotes,
> and I can see that they are treated differently in xref.xsl.
> ------------------------------
> *From:* Bob Stayton <b...@sagehill.net> <b...@sagehill.net>
> *Sent:* Monday, June 14, 2021 5:00 PM
> *To:* docbook-apps@lists.oasis-open.org
> <docbook-apps@lists.oasis-open.org> <docbook-apps@lists.oasis-open.org>
> *Subject:* Re: [docbook-apps] insert.link.page.number in xsl stylesheets
>
>
> I think the problem is in the param statement, where the string yes is
> being interpreted as an element name.
>
>
> <xsl:param name="insert.link.page.number" select="'yes'"/>
>
>
> (I added single quotes around the word yes).
>
> Bob staytonb...@sagehill.net
>
> On 6/14/2021 12:05 PM, Kevin Dunn wrote:
>
> I'm customizing xrefs to render page numbers in pdf files for print.
> Setting insert.xref.page.number to yes, and using an xrefstyle attribute, I
> can get the desired output, e.g. "See Appendix B (page 127)."
>
> Page number for links do not work as I would expect from reading
> http://www.sagehill.net/docbookxsl/CustomXrefs.html.
>
> In my custom xsl, I have both:
> <xsl:param name="insert.xref.page.number" select="yes"/>
> <xsl:param name="insert.link.page.number" select="yes"/>
>
> My xml file contains both:
> <xref xrefstyle="select: label title page" linkend="source"/>
> <link xrefstyle="select: page" linkend="source">A Chapter link</link>
>
> The fo from xsltproc renders page numbers for the xref, but not for the
> link. The behavior is the same using version 1.79.1 stylesheet and the
> snapshot/2020-06-03. Fop, xep, and axf produce PDFs with working links, but
> rendered page numbers only for the xrefs.
>
> I may be misreading the documentation or misunderstanding the xsl (very
> possible). The xsl is different for xref and link in xref.xsl, but to my
> untrained eye, both look reasonable.
>
> Any suggestions?
>
> --
Dave Pawson
XSLT XSL-FO FAQ.
Docbook FAQ.

Reply via email to