garamondSwashStrings = #'( "A" "Á" "Ă" "Â" "Ä" "À" "Ā" "Ą" "Å" "Ã" "B" "C" "Ć" "Č" "Ç" "D" "Ď" "Đ" "E" "É" "Ě" "Ê" "Ë" "Ė" "È" "Ē" "Ę" "Đ" "_" "_" "F" "G" "Ǧ" "Ģ" "H" "I" "Í" "Î" "Ï" "İ" "Ì" "Ī" "Į" "J" "K" "Ķ" "L" "Ĺ" "Ľ" "Ļ" "Ł" "M" "N" "Ń" "Ň" "Ņ" "Ñ" "O" "Ó" "Ô" "Ö" "Ò" "Ő" "Ō" "Ø" "Õ" "P" "Q" "R" "Ŕ" "Ř" "Ŗ" "S" "Ś" "Š" "Ş" "Ș" "T" "_" "_" "Ťh" "Ţh" "_" "Th" "Ť" "Ţ" "Þ" "U" "Ú" "Û" "Ü" "Ù" "Ű" "Ū" "Ų" "Ů" "V" "W" "X" "Y" "Ý" "Ÿ" "Z" "Ź" "Ž" "Ż" ) caslonSwashStrings = #'( "A" "Æ" "Á" "Ă" "Â" "Ä" "À" "Ā" "Ą" "Å" "Ã" "B" "C" "Ć" "Č" "Ç" "D" "Ď" "Đ" "E" "É" "Ĕ" "Ě" "Ê" "Ë" "Ė" "È" "Ē" "Ę" "Đ" "F" "G" "Ǧ" "Ģ" "H" "I" "Í" "Î" "Ï" "İ" "Ì" "Ī" "Į" "J" "K" "Ķ" "L" "Ĺ" "Ľ" "Ļ" "Ł" "M" "N" "Ń" "Ň" "Ņ" "Ñ" "O" "Œ" "Ó" "Ŏ" "Ô" "Ö" "Ò" "Ő" "Ō" "Ø" "Õ" "P" "Q" "R" "Ŕ" "Ř" "Ŗ" "S" "Ś" "Š" "Ş" "Ș" "T" "_" "_" "Ťh" "_" "Ţh" "Th" "Ť" "Ţ" "Þ" "U" "Ú" "Ŭ" "Û" "Ü" "Ù" "Ű" "Ū" "Ų" "Ů" "Ũ" "V" "W" "X" "Y" "Ý" "Ÿ" "Z" "Ź" "Ž" "Ż" ) #(define (make-swash-list l) (define (helper l idx sofar) (if (null? l) sofar (helper (cdr l) (+ idx 1) (cons* (car l) (ly:wide-char->utf-8 idx) sofar)))) (helper l #xe000 '())) #(define (applySwash str swashstrs) (apply string-append (replace-subr (list str) (make-swash-list swashstrs)))) #(define (applySwashC str) (applySwash str caslonSwashStrings)) #(define-markup-command (makeSwashMarkupC layout props str) (markup?) " " (interpret-markup layout props (applySwashC str))) #(define (applySwashG str) (applySwash str garamondSwashStrings)) #(define-markup-command (makeSwashMarkupG layout props str) (markup?) " " (interpret-markup layout props (applySwashG str)))