Thanks Bob, It occurs to me that I preprocess before generating straight DocBook too, so I should be ok interoperability-wise if I just strip the link text in my preprocess.xsl.
My thinking in doing it this way is that generally I want olinks to behave like xrefs so the link text is always fresh, but that it's nice to have the title of the target there when you're editing, even if the title text is potentially stale if the target has changed since you inserted the olink. Another option would be to have the editor's olink insertion mechanism by default insert the olink link text as a comment, so it would be visible in the editor but not used in rendering. Anyway, the high-level goal is to have olinks that behave like xrefs, but still give the writer some information about the what the target is (beyond the targetdoc and targetptr values). I'll have to ponder more what the ideal way to achieve that would actually be. Thanks, David From: Bob Stayton [mailto:[email protected]] Sent: Monday, August 30, 2010 10:28 PM To: Cramer, David W (David); DocBook Apps Subject: Re: [docbook-apps] Changing default olink behavior Hi, There is no parameter option to do that. You could customize the template named "olink.hottext" in common/olink.xsl, which generates the link text. That template has grown to be quite large to handle all the options for generating the link text, so you would be copying a big template to your customization layer. In that template is a big xsl:choose, with the first option being to process the content: <xsl:choose> <!-- If it has elements or text (not just PI or comment) --> <xsl:when test="child::text() or child::*"> <xsl:apply-templates/> </xsl:when> ... You would need to add a condition to that xsl:when's test attribute to get finer control. Bob Stayton Sagehill Enterprises [email protected]<mailto:[email protected]> ----- Original Message ----- From: Cramer, David W (David)<mailto:[email protected]> To: DocBook Apps<mailto:[email protected]> Sent: Sunday, August 29, 2010 10:53 AM Subject: [docbook-apps] Changing default olink behavior Hi there, I would like to change the behavior of olinks so that by default the default olink text from the olink database is used instead of the link text (the contents of the olink element). However, I would like the writer to be able to specify individual cases that the link text should be used. I can think of easy ways to do this (e.g. I already preprocess the source, so I could just prune the link text unless it has some flag like xrefstyle="use.olink.text"), but I was wondering if there's a supported or better way. Thanks, David
