Hi Shevek, 2012/2/9 Xavier Scheuer <x.sche...@gmail.com>: > On 9 February 2012 04:50, Shevek <s...@saultobin.com> wrote: >> >> I'm used to seeing repeat barlines with "wings" (like in the picture I've >> attached). Is there a way to do this in Lilypond? >> >> http://old.nabble.com/file/p33290846/reapetbarsci9.png > > Yeah, that would be nice. > You call it "wings" I think I call them "big ears", don't know why! ;D > > I can't remind somebody doing such request and find nothing related on > the LSR, in the doc or within the mailing lists archive, sorry. > > I think you could ask for it as a new feature request on the tracker, > that would be one thing at least. > > Cheers, > Xavier > > -- > Xavier Scheuer <x.sche...@gmail.com> > > _______________________________________________ > lilypond-user mailing list > lilypond-user@gnu.org > https://lists.gnu.org/mailman/listinfo/lilypond-user
this was discussed in the german forum some time ago: http://www.lilypondforum.de/index.php?topic=879.0 We developed the attached work-around. BTW in output-lib.scm you can find "brace" and "bracket" in the bar-glyph-alist. AFAIK they aren't used anywhere. So any work-around has to fiddle about the line-breaks. HTH, Harm P.S. Please note that the file uses 2.12.3.
\version "2.12.3" \layout { indent = 10 short-indent = 10 } \paper { ragged-right =##f } #(define-markup-command (lthskip layout props amount) (number?) ;; lthskip = "line-thickness skip" (let ((l-th (ly:output-def-lookup layout 'line-thickness))) (ly:make-stencil "" (cons 0 (* amount l-th)) '(0 . 0) ))) #(define my-bar-glyph-alist '((":|:" . (":|" . "|:")))) #(define (my-bar-line::calc-glyph-name grob) (let* ( ; inlined this from lily-library.scm, since it isn't public (index-cell (lambda (cell dir) (if (equal? dir 1) (cdr cell) (car cell)))) (glyph (ly:grob-property grob 'glyph)) (dir (ly:item-break-dir grob)) (result (assoc glyph my-bar-glyph-alist)) (glyph-name (if (= dir CENTER) glyph (if (and result (string? (index-cell (cdr result) dir))) (index-cell (cdr result) -1) #f))) ) glyph-name)) #(define (rotate-at-line-begin g) "Rotate an item, but only at the start of the line." (if (and (ly:item? g) (equal? (ly:item-break-dir g) RIGHT)) (ly:grob-set-property! g 'rotation (list 180 0 0)) )) startRepeatBracket = { \once \override Staff.BarLine #'stencil = #(lambda (grob) (ly:stencil-add (ly:stencil-combine-at-edge (ly:bar-line::print grob) Y UP (grob-interpret-markup grob (markup #:musicglyph "brackettips.up")) -0.1 0) (ly:stencil-combine-at-edge (ly:bar-line::print grob) Y DOWN (grob-interpret-markup grob (markup #:musicglyph "brackettips.down")) -0.1 0))) \bar "|:" } stopRepeatBracket = { \once \override Staff.BarLine #'stencil = #(lambda (grob) (ly:stencil-add (ly:stencil-combine-at-edge (ly:bar-line::print grob) Y UP (grob-interpret-markup grob (markup #:concat ( #:lthskip 6 #:right-align #:rotate 180 #:musicglyph "brackettips.down" ))) -0.1 0) (ly:stencil-combine-at-edge (ly:bar-line::print grob) Y DOWN (grob-interpret-markup grob (markup #:concat ( #:lthskip 6 #:right-align #:rotate 180 #:musicglyph "brackettips.up" ))) -0.1 0))) \bar ":|" } combinedRepeatBracket = { \once \override Staff.BarLine #'stencil = #(lambda (grob) (ly:stencil-add (ly:stencil-combine-at-edge (ly:bar-line::print grob) Y UP (grob-interpret-markup grob (markup #:concat ( #:lthskip 3 #:concat ( #:right-align #:vcenter #:rotate 180 #:musicglyph "brackettips.down" #:lthskip 3 #:vcenter #:musicglyph "brackettips.up")))) -0.1 0) (ly:stencil-combine-at-edge (ly:bar-line::print grob) Y DOWN (grob-interpret-markup grob (markup #:concat ( #:lthskip 3 #:concat ( #:right-align #:vcenter #:rotate 180 #:musicglyph "brackettips.up" #:lthskip 3 #:vcenter #:musicglyph "brackettips.down")))) -0.1 0))) \bar ":|:" } Break = { \once\override Staff.BarLine #'glyph-name = #my-bar-line::calc-glyph-name \once\override Staff.BarLine #'after-line-breaking = #rotate-at-line-begin \bar ":|:" \break } %------------------------- Test ------------------------------------------------ %#(set-global-staff-size 11.22) %% smallest recommended staff size #(set-global-staff-size 20) %% default staff size % #(set-global-staff-size 35.2) %% largest recommended staff size \score { \relative c' { \key cis\major \mark\markup { \with-color #red \fontsize #'3 "Beispiel I" } \grace s4 \startRepeatBracket b'1 \stopRepeatBracket \Break \time 2/2 e \stopRepeatBracket \bar "|." } \layout { ragged-right = ##t } } \relative c' { %\key cis\major %\override Staff.BarLine #'thick-thickness = #8 schlecht! %\override Staff.BarLine #'kern = #8 schlecht! %\override Staff.BarLine #'thin-kern = #8 schlecht! % \override Staff.BarLine #'bar-size = #8 klappt! % \override Staff.BarLine #'hair-thickness = #8 klappt! \mark\markup { \with-color #red \fontsize #'3 "Beispiel II" } \grace s4 \startRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket des1 \stopRepeatBracket \Break c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket des1 \stopRepeatBracket \Break c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \combinedRepeatBracket c1 \stopRepeatBracket } %{ Quellen: http://www.lilypondforum.de/index.php?topic=578.msg3212#msg3212 define-markup-command lthskip http://lists.gnu.org/archive/html/lilypond-user/2008-12/msg00307.html define my-bar-glyph-alist define (my-bar-line::calc-glyph-name grob) /scm/output-lib.scm define rotate-at-line-begin %}
<<attachment: barlineOmegaBild.png>>
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user