diff --git a/collects/scribble/base.rkt b/collects/scribble/base.rkt index 0f4a7f8e..98732fd0 100644 --- a/collects/scribble/base.rkt +++ b/collects/scribble/base.rkt @@ -276,6 +276,7 @@ (provide/contract [linebreak (-> element?)] + [nonbreaking elem-like-contract] [hspace (-> exact-nonnegative-integer? element?)] [elem (->* () (#:style element-style?) @@ -311,6 +312,9 @@ (define (linebreak) (make-element 'newline '("\n"))) +(define (nonbreaking . str) + (make-element 'no-break (decode-content str))) + (define (elem #:style [style plain] . str) (make-element style (decode-content str))) diff --git a/collects/scribble/latex-render.rkt b/collects/scribble/latex-render.rkt index 8dc4b046..c3647619 100644 --- a/collects/scribble/latex-render.rkt +++ b/collects/scribble/latex-render.rkt @@ -272,7 +272,7 @@ [(bold) (wrap e "textbf" tt?)] [(tt) (wrap e "Scribtexttt" #t)] [(url) (wrap e "nolinkurl" 'exact)] - [(no-break) (core-render e tt?)] + [(no-break) (wrap e "mbox" tt?)] [(sf) (wrap e "textsf" #f)] [(subscript) (wrap e "textsub" #f)] [(superscript) (wrap e "textsuper" #f)] diff --git a/collects/scribblings/scribble/base.scrbl b/collects/scribblings/scribble/base.scrbl index a9bc6551..16c008aa 100644 --- a/collects/scribblings/scribble/base.scrbl +++ b/collects/scribblings/scribble/base.scrbl @@ -346,6 +346,10 @@ See also @racket[verbatim].} Produces an element that forces a line break.} +@def-elem-proc[nonbreaking]{Like @racket[elem], but line breaks are +suppressed while rendering the content.} + + @defproc[(hspace [n exact-nonnegative-integer?]) element?]{ Produces an element containing @racket[n] spaces and style diff --git a/collects/scribblings/scribble/core.scrbl b/collects/scribblings/scribble/core.scrbl index a64b56de..2e30476f 100644 --- a/collects/scribblings/scribble/core.scrbl +++ b/collects/scribblings/scribble/core.scrbl @@ -646,6 +646,9 @@ recognized: @item{@racket['newline] --- Renders a line break independent of the @racket[content].} + @item{@racket['no-break] --- Prevents line breaks when rendering + @racket[content].} + ] The following @tech{style properties} are currently recognized: