Modify

Ticket #1166 (closed Feature Requests: fixed)

Opened 7 years ago

Last modified 5 years ago

[boostbook] paths relative to boost.root

Reported by: steven_watanabe Owned by: danieljames
Milestone: Boost 1.39.0 Component: Documentation
Version: Boost 1.35.0 Severity: Problem
Keywords: Cc:

Description

One of the thing that I find most annoying about the documentation tool chain is that I cannot write links that work both for builds of all of boost and builds of just one library. If boost://libs/mpl/index.html or something similar worked then I would be a lot happier. I am attaching a patch that allows this syntax.

Attachments

relative-href.xsl.patch Download (1.1 KB) - added by steven_watanabe 7 years ago.
xref.xsl.patch Download (621 bytes) - added by steven_watanabe 7 years ago.
links.patch Download (2.1 KB) - added by danieljames 6 years ago.
Updated implementation, that uses 'boost:/libs..' instead of 'boost://libs..', and works for links from sub-directories.
boost-links-1.patch Download (1.2 KB) - added by danieljames 5 years ago.
New implementation, which transforms the links in the boostbook to docbook stage. Currently only translates ulinks, not other links such as images.
boost-links-2.patch Download (6.9 KB) - added by danieljames 5 years ago.
Some examples of using the 'boost:/' style links.

Change History

Changed 7 years ago by steven_watanabe

Changed 7 years ago by steven_watanabe

comment:1 Changed 7 years ago by marshall

  • Component changed from None to Building Boost

comment:2 Changed 6 years ago by danieljames

  • Owner set to danieljames
  • Status changed from new to assigned
  • Version changed from Boost 1.34.1 to Boost 1.35.0
  • Component changed from Building Boost to Documentation
  • Severity changed from Not Applicable to Problem

Yes, this is definitely needed.

boost://libs/mpl/index.html is probably wrong, as the :// usually indicates that the first past part of the path is a server name. boost:/libs/mpl/index.html or perhaps boost:libs/mpl/index.html is better.

Another possibility is to just do this for paths starting with '/', as that does suggest the root of the distribution. I like this, as I'm not keen on inventing our own protocol name. But 'boost:' will work very well if $boost.root == ' http://www.boost.org' - so it'll be ideal for candidate libraries.

I'll attach an updated patch which implements what I described, and also fixes a small bug when the link is from a sub-directory.

I'll bring this up on the Boost Docs list soon, as someone might have a better idea.

Changed 6 years ago by danieljames

Updated implementation, that uses 'boost:/libs..' instead of 'boost://libs..', and works for links from sub-directories.

comment:3 Changed 6 years ago by danieljames

  • Milestone changed from To Be Determined to Boost 1.37.0

I've been trying something like this in the doc branch, but it still doesn't completely work. Beacuse it's done as part of the chunking mechanism it only works for chunked output (ie. html/xhtml) but not for other types such as fo (for generating pdfs) and html-single. The links should be dealt with in the initial boostbook to docbook conversion. I'll get back to this.

comment:4 Changed 6 years ago by steven_watanabe

Another thing, Would it be better to have a generic mechanism for specifying the root of a path as using an xsl parameter. so that this would become $(boost.root)/... Is this evan possible in xsl?

I'd also like to be able to specify the root of relative paths so that I can just specify paths relative to my quickbook sources rather than specifying the paths relative to the destination directory, since this is different for the standalone docs vs. the global boost doc build.

Changed 5 years ago by danieljames

New implementation, which transforms the links in the boostbook to docbook stage. Currently only translates ulinks, not other links such as images.

Changed 5 years ago by danieljames

Some examples of using the 'boost:/' style links.

comment:5 Changed 5 years ago by danieljames

  • Status changed from assigned to closed
  • Resolution set to fixed

(In [51261]) Implement the 'boost:' for links relative to boost root. Also, optionally replace links within the boost distribution with links to the the boost site, which is useful for generating pdfs and standalone documentation.

Implemented with John Maddock. Fixes #1166.

comment:6 Changed 5 years ago by danieljames

(In [51739]) Record another previous change:

Recorded merge of revisions 51261 via svnmerge from  https://svn.boost.org/svn/boost/trunk

........

r51261 | danieljames | 2009-02-15 19:31:37 +0000 (Sun, 15 Feb 2009) | 5 lines

Implement the 'boost:' for links relative to boost root. Also, optionally replace links within the boost distribution with links to the the boost site, which is useful for generating pdfs and standalone documentation.

Implemented with John Maddock. Fixes #1166.

........

comment:7 Changed 5 years ago by danieljames

  • Milestone changed from Boost 1.37.0 to Boost 1.39.0
View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
The resolution will be deleted. Next status will be 'reopened'
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.