I also tried editing ghc's package.conf file to place the other library's HTML doc right into haddockHTMLs, replacing the pointer to my local copy. Then Haddock says:<br><br><div style="margin-left: 40px;"><span style="font-family: courier new,monospace;">
Warning: cannot use package phooey-0.1:</span><br style="font-family: courier new,monospace;"><span style="font-family: courier new,monospace;"> HTML directory <a href="http://darcs.haskell.org/packages/phooey/doc">http://darcs.haskell.org/packages/phooey/doc
</a> does not exist.</span><br></div><br>and I don't get any links. The directory does exist, though of course not on my machine. Why would Haddock care whether it can find a haddockHTMLs directory?<br><br> - Conal
<br><br><br><div><span class="gmail_quote">On 1/9/07, <b class="gmail_sendername">Conal Elliott</b> <<a href="mailto:conal@conal.net">conal@conal.net</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I fiddled with --read-interface to link to other-library docs at URLs. I'm trying to go through cabal and use --haddock-arg (a flag I recently added) to get additional flags to haddock. What seems to be happening is that --use-package wins over --read-interface for the same package, regardless of the order in which they're listed. The only way I can get the other-library links to point to web-documentation instead of local versions is to add --read-interface and *remove* the corresponding --use-package. Is that behavior what you intend? Given the use-package bias, I can't figure a way to get my web links via cabal. Using haddock manually would be quite a pain also, since I'm relying on cabal to preprocess all of my modules with -D__HADDOCK__ before passing them on to Haddock. The preprocessed versions come & go invisibly.
<br><br>Are you aware of the use-package bias? Can you think of a work-around?<br><span class="sg"><br> - Conal<br><br></span><div><span class="q"><span class="gmail_quote">On 12/15/06, <b class="gmail_sendername">Simon Marlow
</b> <<a href="mailto:simonmarhaskell@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
simonmarhaskell@gmail.com</a>> wrote:</span></span><div><span class="e" id="q_11009e0142175cdc_4"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Conal Elliott wrote:<br>> My library uses others (including base & wxHaskell), and so references
<br>> to types & identifiers from those libraries show up in my Haddock docs.<br>> When I put the docs on the web, the links are bogus. How can I get<br>> those links to be web-accessible versions instead of my local versions?
<br>><br>> Similarly, I want to package up my library so that others can build on<br>> top of it and have their published haddock documentation contain<br>> web-accessible pointers to my doc.<br>><br>> Have these issues been thought through? Thanks,
<br><br>I'm not suggesting that this is a long-term solution, but Haddock does let you<br>link to docs at an arbitrary URL, using the --read-interface flag. This isn't<br>exposed through Cabal, but you can always find out the Haddock command that
<br>Cabal is executing and run a modified version by hand.<br><br>Ultimately I expect as part of the Hackage project we should automatically<br>generate Haddock docs for all the packages and link them together. This needs
<br>some thought, perhaps it's something we can talk about at Hac.<br><br>Another thing we could consider doing is putting a public Haddock URL in the<br>.cabal file, and propagating this into the package configuration. Then when you
<br>generate Haddock docs there could be an option to link to either local or<br>external docs for other packages.<br><br>Cheers,<br> Simon<br></blockquote></span></div></div><br>
</blockquote></div><br>