Autor Thema: Barresniplet unter 2.15.41  (Gelesen 3024 mal)

barrio

  • Gast
Barresniplet unter 2.15.41
« am: Freitag, 13. Juli 2012, 17:23 »
Wäre jemand so nett, den Code von Nick manuell upzudaten, convert-ly packt das nicht:

\version "2.15.40"

% Parameters:
% fretnum: the fret number for the barre - eg "VII"
% osp: outside staff priority, in case this needs altering from the default
% dirn: #UP or #DOWN
% vdrop: height of vertical line at LH end
% shorten: pair indicating left & right padding of TextSpanner

% adjBreak: adjust LH end of TextSpanner line when it has wrapped to following stave

% adjEnd: adjustment of line end when it wraps to following stave

barre = #(define-music-function (parser location fretnum osp dirn vdrop shorten adjBreak adjEnd)

    (string? number? number? number? pair? number? number?)
#{
    \once \override TextSpanner #'outside-staff-priority = #osp
    \once \override TextSpanner #'bound-details #'left #'text =
    \markup\small\bold { \concat {
        \postscript #(string-append
            "0.1 setlinewidth 0.7 -0.5 moveto 0 -"
            (number->string vdrop)
            " rlineto 0.5 0 rlineto stroke")
        $fretnum " "
    } }
    \once \override TextSpanner #'style = #'line
    \once \override TextSpanner #'font-shape = #'upright
    \once \override TextSpanner #'direction = #dirn
    %draw a bracket edge on RHS

\once \override TextSpanner #'bound-details #'right #'text = \markup { \draw-line #(cons 0 (/ dirn -1)) }

    % set alignment of line with reference to left text

\once \override TextSpanner #'bound-details #'left #'stencil-align-dir-y = #CENTER

    % change X pos of LH and RH end as desired

\once \override TextSpanner #'bound-details #'left #'padding = #(car shorten) \once \override TextSpanner #'bound-details #'right #'padding = #(cdr shorten)

    % allow adjustment of line end when it wraps to following stave

\once \override TextSpanner #'bound-details #'right-broken #'padding = #adjEnd % adjust LH end of line when it wraps to following stave so that it doesn't

    % extend to the left of the notes on the stave

\once \override TextSpanner #'bound-details #'left-broken #'X = #adjBreak

    % override to remove text and bracket edge at line breaks
    \once \override TextSpanner #'bound-details #'left-broken #'text = ##f
    \once \override TextSpanner #'bound-details #'right-broken #'text = ##f
#})

% \relative c'' {

% \barre "III" #0 #UP #4 #'(-1.5 . -1) #10 #0.5 f4.\startTextSpan f8 b4. d8\stopTextSpan

% }


%{
convert-ly (GNU LilyPond) 2.15.41  convert-ly: »« wird verarbeitet...
Anwenden der Umwandlung: 2.15.16, 2.15.17, 2.15.18, 2.15.19, 2.15.20,
2.15.25, 2.15.32, 2.15.39, 2.15.40
%}

Und hier die Fehler:

Starting lilypond 2.15.41 [Bach - Prelude - Cello Suite 1 11-07-12.ly]...
»/home/barrios/Dokumente/Lily/Bach - Prelude - Cello Suite 1 11-07-12.ly« wird verarbeitet
Analysieren...
/home/barrios/Dokumente/Lily/vbarre.ly:18:60: Fehler: GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck
    \once \override TextSpanner #'outside-staff-priority = #
                                                            $osp
/home/barrios/Dokumente/Lily/vbarre.ly:21:21: Fehler: GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck
        \postscript #
                     (string-append
/home/barrios/Dokumente/Lily/vbarre.ly:21:20: Fehler: falscher Typ für Argument 1; string erwartet, #<unspecified> gefunden
        \postscript
                    #(string-append
Unbound variable: $osp
Unbound variable: $vdrop
/usr/local/share/lilypond/2.15.41/scm/parser-ly-from-scheme.scm:70:22: In procedure reverse! in expression (ly:parse-string-expression clone lily-string ...):
/usr/local/share/lilypond/2.15.41/scm/parser-ly-from-scheme.scm:70:22: Wrong type argument in position 1: (#<unspecified> . #f)
Exited with return code 1.

Schonmal vielen Dank vorab!

harm6

  • Gast
Re: Barresniplet unter 2.15.41
« Antwort #1 am: Freitag, 13. Juli 2012, 19:04 »
Hallo barrio,
Zitat
Wäre jemand so nett, den Code von Nick manuell upzudaten, convert-ly packt das nicht
Hier irrst Du Dich. concert-ly hat das file korrekt umgewandelt. Möglicherweise mußt Du noch die Kommentare entfernen. Aber bei mir ist das file (aus Deinem post herauskopiert) mit einem Beispiel absolut problemlos durchgelaufen (allerdings mit selbst-kompilierter 2.15.42-Fassung, das sollte aber keinen Unterschied machen)

Zitat
Und hier die Fehler:
Wenn Du genau ins log schaust siehst Du z.B.:
/home/barrios/Dokumente/Lily/vbarre.ly:18:60: Fehler: GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck
    \once \override TextSpanner #'outside-staff-priority = #
                                                            $osp
In Zeile 18 der konvertierten Fassung steht aber:
\once \override TextSpanner #'outside-staff-priority = #ospalso ohne $-Zeichen.

Es scheint so , daß Du nicht die konvertierte, sondern noch die alte Fassung benutzt.

Gruß,
  Harm