Overview
| Comment: | Add image-link tag |
|---|---|
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA3-256: |
41875538b421ca585e09a962a065de79 |
| User & Date: | joel on 2019-06-16 17:41:30 |
| Other Links: | manifest | tags |
Context
|
2019-06-16
| ||
| 19:08 | Fix dependency bug in makefile check-in: eafa8b45 user: joel tags: trunk | |
| 17:41 | Add image-link tag check-in: 41875538 user: joel tags: trunk | |
| 17:08 | Fix smallcaps tag (HTML output) check-in: 64f3b580 user: joel tags: trunk | |
Changes
Modified code-docs/pollen.scrbl from [6a861144] to [9c115120].
| ︙ | ︙ | |||
144 145 146 147 148 149 150 151 152 153 154 155 156 157 |
Insert a block-level image. The @racket[_image-file] should be supplied as a filename only, with no
folder names. It is assumed that the image is located inside an @racket[images-folder] within the
same folder as the source document.
For web output, using @racket[figure-@2x] will produce an image hard-coded to display at half its
actual size, or the width of the text block, whichever is smaller.
@deftogether[(@defproc[(fn [fn-id stringish?]) txexpr?]
@defproc[(fndef [fn-id stringish?] [elements xexpr?] ...) txexpr?])]
As with hyperlinks, footnotes are specified reference-style. In the output, footnotes will be
numbered according to the order in which their identifiers are referenced in the source document.
| > > > > > > | 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 |
Insert a block-level image. The @racket[_image-file] should be supplied as a filename only, with no
folder names. It is assumed that the image is located inside an @racket[images-folder] within the
same folder as the source document.
For web output, using @racket[figure-@2x] will produce an image hard-coded to display at half its
actual size, or the width of the text block, whichever is smaller.
@defproc[(image-link [image-file string?] [link-text xexpr?] ...) txexpr?]
Adds a hyperlink to @racket[_image-file], supplied as a filename only with no folder names. It is
assumed that the image is located inside an @racket[images-folder] within the same folder as the
source document.
@deftogether[(@defproc[(fn [fn-id stringish?]) txexpr?]
@defproc[(fndef [fn-id stringish?] [elements xexpr?] ...) txexpr?])]
As with hyperlinks, footnotes are specified reference-style. In the output, footnotes will be
numbered according to the order in which their identifiers are referenced in the source document.
|
| ︙ | ︙ |
Modified pollen.rkt from [122879ec] to [5b4c5fa4].
| ︙ | ︙ | |||
95 96 97 98 99 100 101 102 103 104 105 106 107 108 | (poly-branch-tag subsection) (poly-branch-tag code) (poly-branch-tag dialogue) (poly-branch-tag say) (poly-branch-kwargs-tag index) (poly-branch-tag figure) (poly-branch-tag figure-@2x) (poly-branch-kwargs-tag blockcode) (poly-branch-kwargs-tag verse) ; [#:title ""] [#:italic "no"] (poly-branch-tag link) (poly-branch-tag url) (poly-branch-tag fn) (poly-branch-tag fndef) | > | 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | (poly-branch-tag subsection) (poly-branch-tag code) (poly-branch-tag dialogue) (poly-branch-tag say) (poly-branch-kwargs-tag index) (poly-branch-tag figure) (poly-branch-tag figure-@2x) (poly-branch-tag image-link) (poly-branch-kwargs-tag blockcode) (poly-branch-kwargs-tag verse) ; [#:title ""] [#:italic "no"] (poly-branch-tag link) (poly-branch-tag url) (poly-branch-tag fn) (poly-branch-tag fndef) |
| ︙ | ︙ |
Modified tags-html.rkt from [2b372a09] to [e503dfd4].
| ︙ | ︙ | |||
61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
html-center
html-strike
html-block
html-blockcode
html-index
html-figure
html-figure-@2x
html-dialogue
html-say
html-verse
html-link
html-url
html-fn
html-fndef
| > | 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
html-center
html-strike
html-block
html-blockcode
html-index
html-figure
html-figure-@2x
html-image-link
html-dialogue
html-say
html-verse
html-link
html-url
html-fn
html-fndef
|
| ︙ | ︙ | |||
153 154 155 156 157 158 159 160 161 162 163 164 165 166 |
(define (html-figure . elems)
(define src (string-append web-root (image-source (car elems))))
(define alt-text (tx-strs `(span ,@(cdr elems))))
`(figure [[class "fullwidth"]]
(img [[alt ,alt-text] [src ,src]])
(figcaption ,@(cdr elems))))
;; There is no way in vanilla CSS to create a selector for “p tags that contain
;; a span of class ‘newthought’”. So we can handle it at the Pollen processing level.
(define (detect-newthoughts block-xpr)
(define (is-newthought? tx) ; Helper function
(and (txexpr? tx)
(eq? 'span (get-tag tx))
(attrs-have-key? tx 'class)
| > > > > > > | 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
(define (html-figure . elems)
(define src (string-append web-root (image-source (car elems))))
(define alt-text (tx-strs `(span ,@(cdr elems))))
`(figure [[class "fullwidth"]]
(img [[alt ,alt-text] [src ,src]])
(figcaption ,@(cdr elems))))
;; Simple link to an image
(define (html-image-link . elems)
(define src (image-source (car elems)))
(define title (tx-strs `(span ,@(cdr elems))))
`(a [[href ,(string-append web-root src)] [title ,title]] ,@(cdr elems)))
;; There is no way in vanilla CSS to create a selector for “p tags that contain
;; a span of class ‘newthought’”. So we can handle it at the Pollen processing level.
(define (detect-newthoughts block-xpr)
(define (is-newthought? tx) ; Helper function
(and (txexpr? tx)
(eq? 'span (get-tag tx))
(attrs-have-key? tx 'class)
|
| ︙ | ︙ |