Overview
Comment: | Add title-plain for notes; small refactor of note title generation |
---|---|
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
286673cf6040b70dd137560ac89a47af |
User & Date: | joel on 2019-08-19 21:33:37 |
Other Links: | manifest | tags |
Context
2019-08-19
| ||
21:36 | Add RSS feed. Closes [5cca77420922765f] check-in: f06db447 user: joel tags: trunk | |
21:33 | Add title-plain for notes; small refactor of note title generation check-in: 286673cf user: joel tags: trunk | |
2019-08-18
| ||
20:06 | Add notice to index preprocess source check-in: 1346740b user: joel tags: trunk | |
Changes
Modified code-docs/snippets-html.scrbl from [841e7710] to [ca2f5449].
︙ | ︙ | |||
91 92 93 94 95 96 97 | Returns a string of HTML for an article as it would appear in a listing context in “short” form (date and title only, with link). @defproc[(html$-page-body-close) non-empty-string?] Returns a string containing the page’s @tt{<footer>} and closing tags. | < < < < < < < < < | 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | Returns a string of HTML for an article as it would appear in a listing context in “short” form (date and title only, with link). @defproc[(html$-page-body-close) non-empty-string?] Returns a string containing the page’s @tt{<footer>} and closing tags. @defproc[(html$-note-contents [disposition-mark string?] [elems (listof xexpr?)]) non-empty-string?] Returns a string containing the body-elements of a note converted to HTML. If @racket[_disposition-mark] is not empty, a @tt{<span>} containing it will be inserted as the first element of the first block-level element. @defproc[(html$-note-listing-full [pagenode pagenode?] |
︙ | ︙ |
Modified crystalize.rkt from [43b9fb1b] to [0131cbe3].
︙ | ︙ | |||
69 70 71 72 73 74 75 76 77 78 79 80 81 82 | listing_excerpt_html ; Not used for now listing_short_html)) ; Date and title only (define table_notes-fields '(pagenode note_id title_html_flow author author_url date disposition content_html series_pagenode listing_full_html | > | 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | listing_excerpt_html ; Not used for now listing_short_html)) ; Date and title only (define table_notes-fields '(pagenode note_id title_html_flow title_plain author author_url date disposition content_html series_pagenode listing_full_html |
︙ | ︙ | |||
316 317 318 319 320 321 322 | "must be in format \"[symbol] [past-tense-verb]\"" "disposition attr" disposition-attr)) ;; Parse out remaining columns (define author (maybe-attr 'author attrs default-authorname)) (define note-id (build-note-id note-tx)) | | > > > | 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 | "must be in format \"[symbol] [past-tense-verb]\"" "disposition attr" disposition-attr)) ;; Parse out remaining columns (define author (maybe-attr 'author attrs default-authorname)) (define note-id (build-note-id note-tx)) (define title-tx (make-note-title pagenode parent-title-plain)) (define title-html-flow (->html title-tx #:splice? #t)) (define title-plain (tx-strs title-tx)) (define author-url (maybe-attr 'author-url attrs)) (define-values (disp-mark disp-verb) (disposition-values disposition-attr)) (define content-html (html$-note-contents disp-mark disp-verb (get-elements note-tx))) (define listing-full-html (html$-note-listing-full pagenode note-id title-html-flow note-date content-html author author-url)) (define note-record (list pagenode note-id title-html-flow title-plain author author-url note-date disposition-attr content-html (symbol->string (series-pagenode)) listing-full-html |
︙ | ︙ | |||
348 349 350 351 352 353 354 355 356 357 358 359 360 361 | " AND `note_id` = ?2), ~a)") (list->sql-fields table_notes-fields) (list->sql-parameters table_notes-fields))) (apply query! save-note-query note-record) ;; return html$ of note (html$-note-in-article note-id note-date content-html author author-url)) (define (article-plain-title pagenode) (query-value (sqltools:dbc) "SELECT `title_plain` FROM `articles` WHERE `pagenode` = ?1" (symbol->string pagenode))) ;; ~~~ Keyword Index Entries ~~~ ;; (private) Convert an entry key into a list of at most two elements, | > > > > > | 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 | " AND `note_id` = ?2), ~a)") (list->sql-fields table_notes-fields) (list->sql-parameters table_notes-fields))) (apply query! save-note-query note-record) ;; return html$ of note (html$-note-in-article note-id note-date content-html author author-url)) (define (make-note-title pagenode parent-title-plain) `(note-title "Re: " (a [[class "cross-reference"] [href ,(format "~a~a" web-root pagenode)]] ,parent-title-plain))) (define (article-plain-title pagenode) (query-value (sqltools:dbc) "SELECT `title_plain` FROM `articles` WHERE `pagenode` = ?1" (symbol->string pagenode))) ;; ~~~ Keyword Index Entries ~~~ ;; (private) Convert an entry key into a list of at most two elements, |
︙ | ︙ |
Modified snippets-html.rkt from [1d57c14f] to [2b13836e].
︙ | ︙ | |||
17 18 19 20 21 22 23 | (provide html$-page-head html$-page-body-open html$-article-open html$-article-close html$-article-listing-short html$-page-body-close | < | 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | (provide html$-page-head html$-page-body-open html$-article-open html$-article-close html$-article-listing-short html$-page-body-close html$-note-contents html$-note-listing-full html$-note-in-article html$-notes-section html$-paginate-navlinks) (define (html$-page-head [title #f] [close-head? #t]) |
︙ | ︙ | |||
77 78 79 80 81 82 83 | (define (html$-page-body-close) ◊string-append{<footer>By Joel Dueck</footer> </main></body>}) ;; Notes ;; | < < < < < | 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | (define (html$-page-body-close) ◊string-append{<footer>By Joel Dueck</footer> </main></body>}) ;; Notes ;; (define (html$-note-contents disposition-mark disposition-verb elems) (define disposition (cond [(non-empty-string? disposition-mark) `(abbr [[class "disposition-mark-in-note"] [title ,(string-append "The original article is herewith considered " disposition-verb)]] ,disposition-mark)] |
︙ | ︙ |