\version "2.18.0" %%%%%%%%%%%% "fill-line-two" command created by David Nalesnik (2014) %%%%%%%%%%%%%%% %%%%%%%%%%%% after an idea by Mike Solomon %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% #(define-markup-command (fill-line-two layout props args) (markup-list?) #:category align #:properties ((text-direction RIGHT) (word-space 0.6) (line-width #f)) (let* ((orig-stencils (interpret-markup-list layout props args)) (stencils (map (lambda (stc) (if (ly:stencil-empty? stc) point-stencil stc)) orig-stencils)) (text-widths (map (lambda (stc) (if (ly:stencil-empty? stc) 0.0 (interval-length (ly:stencil-extent stc X)))) stencils)) (text-width (apply + text-widths)) (word-count (length stencils)) (line-width (or line-width (ly:output-def-lookup layout 'line-width))) (fill-space (cond ((= word-count 1) (list (/ (- line-width text-width) 2) (/ (- line-width text-width) 2))) ((= word-count 2) (list (- line-width text-width))) (else (make-list (1- word-count) (/ (- line-width text-width) (1- word-count)))))) (line-contents (if (= word-count 1) (list point-stencil (car stencils) point-stencil) stencils))) (if (null? (remove ly:stencil-empty? orig-stencils)) empty-stencil (begin (if (= text-direction LEFT) (set! line-contents (reverse line-contents))) (set! line-contents (stack-stencils-padding-list X RIGHT fill-space line-contents)) (if (> word-count 1) ;; shift s.t. stencils align on the left edge, even if ;; first stencil had negative X-extent (e.g. center-column) ;; (if word-count = 1, X-extents are already normalized in ;; the definition of line-contents) (set! line-contents (ly:stencil-translate-axis line-contents (- (car (ly:stencil-extent (car stencils) X))) X))) line-contents)))) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% Lettrine snippet created by Pierre Perol-Schneider (2014) %%%%%%%%%%%%%% #(set-default-paper-size "a5") \paper { top-margin = 15 right-margin = 20 left-margin = 20 } \markuplist { \override-lines #'(baseline-skip . 2.5) { \vspace #3 \fill-line { \null \huge\bold\auto-footnote "The Art of Reading Musick." \line\normal-text\teeny { " after" \concat{\italic "Compendium of a New Method of Music" ","} "by M. Bemetzrieder (London, 1783)." } \null } \vspace #1 \fill-line-two { %%%%% Lettrine vertical adjustment : { \raise#-2.5 \magnify#2.6 "T" } \column { \fill-line-two { %%%%%% 1st line horizontal adjustment : \hspace #3.3 \concat { H\hspace#.1 E } art of reading musick, consists in being able to pro- } \fill-line-two { %%%%%% 2nd line horizontal adjustment : \hspace #2.6 nounce the notes according to measure, either with the } } } %%%%%% 3rd line vertical adjustment \vspace #.1 \justify { voice or on an instrument, giving them their true intonation towards the sharp or grave sounds and observing the equality of the movements indicated by the words \concat{\italic "Allegro" ","} \concat{\italic "Andante" ","} \concat{\italic "Adagio" ","} &c. which indicate a greater or less, but always determined quickness which can neither be accelerated or retarded in the same piece. } \vspace #.1 \justify { There are two ways of doing this, either mechanically or by principles. } \vspace #.5 \justify { \hspace #3 The ear alone directs the first, as by it we are enable to pronounce musick, and even to read it with the eyes; but as the understanding which divides, distinguishes, compares, and sees what does not fall directly under the senses, has nothing to do in this operation; after fifteen or twenty years spent in this manner, the student can neither note an air he sings himself, nor those sung to him by \concat { "another" \hspace#.3 :} many think that being able to note down a little air from memory, is a part of composition and want to learn it, whereas a supplement of principles for reading musick would them suffice to be able to note every air as well from inspiration as from memory. } } } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% End of the Lettrine sippet %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%