On Jun 9, 2014, at 9:20 PM, Matthew Butterick <m...@mbtype.com> wrote:
>> 2. I had a minor problem with the pollen 'server'. I run scribble to >> document code with for-label imports. I get this right with roughly this >> script, a poor man's pollen: >> >>> scribble --html ++xref-in setup/xref load-collections-xref \ >>> --dest Tmp/ \ >>> $1.scrbl >>> open ~/0Unison/0Web/OnHtDP/Source/Tmp/$1.html >> >> But with raco pollen I get cross references underlined in red. Is there a >> file (.pollenrc?) where I can specify scribble options? >> >> My quick read of the pollen docs didn't get me an answer. > > > Right, there's nothing in the docs about that, because so far, I'm not > exposing any configuration options for the Scribble rendering. > > I could, however. Under the hood, I'm just using (dynamic-require > 'scribble/render 'render) to create the output, which is where those > command-line options ultimately end up. [1] > > If you want to show me the .pollenrc you'd ideally be able to write, I can > try adding this capability. > > > > [1] > http://docs.racket-lang.org/scribble/renderer.html?q=render#%28def._%28%28lib._scribble%2Frender..rkt%29._render%29%29 Here is the relevant fragment from my own script that I have used for years to render HtDP/2e. I think you want to figure out how to invoke render here and what to give it as options: ;; String String Boolean String[URL] { [Class -> Class] } -> Void ;; the render-mixin implements render<%> (define (scribble-it stem destination draft? redirect? (renderer render-mixin)) (define stem.scrbl (string-append stem ".scrbl")) (define stem.html (string-append stem ".html")) ((dynamic-require "shared.ss" 'is-draft?) draft?) (define stem.doc (dynamic-require stem.scrbl 'doc)) (render (list stem.doc) (list stem) #:render-mixin renderer #:dest-dir destination #:xrefs (list (load-collections-xref)) #:quiet? #false #:redirect-main redirect?) ;; --- (parameterize ([current-directory destination]) (cleanup) (send-url/file (if (file-exists? stem.html) stem.html (build-path stem "index.html"))))) Ultimately you want a specification language that matches your Pollen language design and whatever people specify should end up in this call. BTW, instead of a .pollenrc file you probably want to run the server with a command-line flag where it absorbs the call. Thanks -- Matthias
smime.p7s
Description: S/MIME cryptographic signature
____________________ Racket Users list: http://lists.racket-lang.org/users