diff --git a/scribble-lib/scribble/html-render.rkt b/scribble-lib/scribble/html-render.rkt index 2a91f35ea8..b4f2667959 100644 --- a/scribble-lib/scribble/html-render.rkt +++ b/scribble-lib/scribble/html-render.rkt @@ -1592,6 +1592,7 @@ [(smaller) '([class "Smaller"])] [(larger) '([class "Larger"])] [(hspace) '([class "hspace"])] + [(hidden) '([style "display: none"])] [(newline) '()] [else (error 'html-render "unrecognized style symbol: ~e" name)])] [(string? name) (if style null `([class ,name]))] diff --git a/scribble-lib/scribble/latex-render.rkt b/scribble-lib/scribble/latex-render.rkt index a176a24f81..9f7cfa01af 100644 --- a/scribble-lib/scribble/latex-render.rkt +++ b/scribble-lib/scribble/latex-render.rkt @@ -452,6 +452,9 @@ [(superscript) (wrap e "textsuper" #f)] [(smaller) (wrap e "Smaller" #f)] [(larger) (wrap e "Larger" #f)] + [(hidden) + (check-render) + (void)] [(hspace) (check-render) (let ([s (content->string e)]) diff --git a/scribble-lib/scribble/markdown-render.rkt b/scribble-lib/scribble/markdown-render.rkt index 58847f743b..8b0aa64926 100644 --- a/scribble-lib/scribble/markdown-render.rkt +++ b/scribble-lib/scribble/markdown-render.rkt @@ -227,6 +227,9 @@ (display str))) (cond + [(and (element? i) (eq? (element-style i) 'hidden)) + (super render-content "" part ri)] + [(and (code? i) (not (in-code?))) (recurse-wrapped "`" in-code?)] diff --git a/scribble-lib/scribble/text-render.rkt b/scribble-lib/scribble/text-render.rkt index 45686e6ab2..eb0833dfbc 100644 --- a/scribble-lib/scribble/text-render.rkt +++ b/scribble-lib/scribble/text-render.rkt @@ -259,14 +259,19 @@ null) (define/override (render-content i part ri) - (if (and (element? i) - (let ([s (element-style i)]) - (or (eq? 'hspace s) - (and (style? s) - (eq? 'hspace (style-name s)))))) - (parameterize ([current-preserve-spaces #t]) - (super render-content i part ri)) - (super render-content i part ri))) + (cond + [(and (element? i) (eq? (element-style i) 'hidden)) + (super render-content "" part ri)] + + [(and (element? i) + (let ([s (element-style i)]) + (or (eq? 'hspace s) + (and (style? s) + (eq? 'hspace (style-name s)))))) + (parameterize ([current-preserve-spaces #t]) + (super render-content i part ri))] + + [else (super render-content i part ri)])) (define/override (render-nested-flow i part ri starting-item?) (define s (nested-flow-style i))