Autor Thema: Voltenklammern ohne Trennung  (Gelesen 3849 mal)

chf

  • Member
Voltenklammern ohne Trennung
« am: Montag, 10. Juni 2013, 20:08 »
Liebe Freunde,

könnt ihr erklären, wie der Unterschied in den beiden Beispielen zustande kommt?
Und könnt ihr mir in dem kleineren Rastral zur korrekten Anordnung der Klammern verhelfen?

Gruß
chf

Be-3

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #1 am: Montag, 10. Juni 2013, 21:20 »
Hallo Christa,

der Unterschied besteht eigentlich nur in #(set-global-staff-size 10.5), also der globalen Systemgröße 10.5 statt 20.

Wenn LilyPond alles in eine Zeile bekommt, dann ist diese standardmäßig nicht auf die gesamte Satzbreite ausgedehnt (das passiert im kleinen Rastral).
Sobald Lilypond jedoch eine zweite Zeile anbricht, so reichen alle Zeilen bis zum rechten Rand.

Wenn Du möchtest, daß auch im kleinen Rastral die Zeile bis zum rechten Rand reicht, kannst Du

\layout {
  ragged-right = ##f
}


setzen.
Oder was ist Deiner Meinung nach an der Anordnung der Klammern nicht korrekt?

Viele Grüße
Torsten

chf

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #2 am: Montag, 10. Juni 2013, 22:14 »
Guten Abend Torsten,

im kleinen Rastral sind die Klammern nicht voneinander abgesetzt,
oder anders: die Klammer 1 ist quasi nicht beendet...

Christa


RobUr

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #3 am: Montag, 10. Juni 2013, 22:23 »
Zitat von: chf
im kleinen Rastral sind die Klammern nicht voneinander abgesetzt
Aber das sind sie doch!

Be-3

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #4 am: Montag, 10. Juni 2013, 22:34 »
Aber das sind sie doch!

Bei mir auch...

chf

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #5 am: Montag, 10. Juni 2013, 23:20 »
Donnerwetter! Ihr habt ja recht! Inder Vergrößerung sehe ich das auch...
ABER - da ist doch ein Problem: mein Beispiel zeigt nur eine Stimme von fünfen in der Partitur, und dort sind die Klammern bei gleicher Schreibweise in allen Stimmen nicht abgesetzt. Gibt es dafür einen vernünftigen Grund?

Christa

Be-3

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #6 am: Dienstag, 11. Juni 2013, 09:30 »
die Botschaft hör ich wohl, allein mir fehlt der Glaube. ;)

... das müßte man mal im Einzelfall sehen.
Mach doch mal einen Screenshot mit ausreichender Auflösung von der Problemstelle.

Ich habe Dein Beispiel mit roher Gewalt (mit system-count = #1 erzwungen, daß alles in eine Zeile gequetscht wird und dann die line-width immer kleiner gemacht) versucht, einen solchen Effekt zu erzielen - ohne Erfolg.
Die Voltenklammern sind bei mir immer voneinander abgesetzt, egal, wie eng es zugeht.

Viele Grüße
Torsten

chf

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #7 am: Dienstag, 11. Juni 2013, 19:29 »
Hallo Torsten,

es ist mir ein Rätsel - im Beispiel kannst du sehen, dass jede einzelne Stimme ordentlich aussieht.
Ich habe auch aus der  g a n z e n  Datei jede Stimme ausgeklammert, und das Partiturbild ist immer falsch (wie im Ausschnitt).
Es kann also keinen Schreibfehler geben... Oder?
Wie kann ich das richtige Bild bekommen? Und die Klammer 2 eine Spur nach rechts rücken?

Gruß
Christa

PS: Kann im paper-Block irgendwas Einfluss haben? Haltet die Frage meiner Ahnungslosigkeit zugute!
« Letzte Änderung: Dienstag, 11. Juni 2013, 19:35 von chf »

fugenkomponist

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #8 am: Dienstag, 11. Juni 2013, 19:40 »
Ich kann die Dateien nicht herunterladen, um sie anzuschauen:
Zitat
Ein Fehler ist aufgetreten!
Sie haben keinen Zugriff auf diesen Bereich!

harm6

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #9 am: Dienstag, 11. Juni 2013, 21:00 »
Hallo Christa,

das Problem sind die BarLines.

Es handelt sich um eine Beschränkung im Zusammenspiel von VoltaBracket und BarLine: Eine VoltaBracket wird in 2.16.2 nur dann immer geschlossen, wenn bestimmte, in C++ hard-coded BarLines benutzt werden.
\bar ":|:" gehört nicht dazu.
Allerdings gab es schon in 2.16.2 erste (Teil-)patches, die das neue 2.17.-BarLine-interface vorbereitet haben. Dazu gehört die Möglichkeit
\set Score.endRepeatType = #":|:"
zu setzen.
Allerdings wurde das Zusammenspiel mit den VoltaBrackets erst in 2.17.x vollständig geregelt.

Warum es mit einzelnen Stimmen in 2.16.2 funktioniert, weiß ich im Moment nicht, dazu müßte ich in 2.16.2 Zugriff auf die *.cc-Dateien haben.
Das geht aber nur wenn ich diese Version nochmal in der "Rohfassung" runterlade (und selbst kompiliere).
(Die entsprechenden Dateien gibt es zwar auch online, das ist aber noch mühsamer)
Wenn es Dich wirklich interessiert mache ich das, aber ohne selbst zu kompilieren hat man sowieso keinerlei Manipulationsmöglichkeiten für *.cc-files.

Dein Beispiel könnte mit 2.17.19 so aussehen (ich habe allerdings nicht weiter aufgeräumt):

\version "2.17.19"
#(set-global-staff-size 10.5)

\relative c'' {
  \repeat volta 2 {e8 (f16 g a b c d e4-.) r} \alternative
{{\override Script #'padding = #.3 c c c4. g8 a-. b4 a8-. g f g4 f f f4. c8 d-. e4 d8-. c b c4 \once \set Score.endRepeatType = #":..:" }
 { g' gis a4. bes8 b!-. c4 b8-. a g a4}}
}

\relative c' {
\repeat volta 2 {e1} \alternative
{{c'4\f c c4. g8 a-. b4 a8-. g f g4 f f f4. c8 d-. e4 d8-. c b c4 \once \set Score.endRepeatType = #":..:"}
 { g4 g g4. g8 b-. c4 b8-. a g a4}}
}

\relative c'' {
\repeat volta 2 {fis8 e16 (d cis b a g fis4) r} \alternative
{{d''4\f d d4. a8 b-. cis4 b8-. a g a4 g g g4. d8 e-. fis4 e8-. d cis d4 \once \set Score.endRepeatType = #":..:" }
 {  a as g4. g8 f1}}
}

\relative c' {
\repeat volta 2 {e2. e,4-.->} \alternative
{{c'4\f c c4. g'8 a-. b4 a8-. g f g4 f, f f4. c'8 d-. e4 d8-. c b c4 \once \set Score.endRepeatType = #":..:" }
{ g4 fis f4. e8 es1}}
}

\relative c' {
\repeat volta 2 {b2. r4} \alternative
{{g'4\f g g4. d8 e-. fis4 e8-. d c d4 c c c4. g8 a8-. b4 a8-. g fis g4 \once \set Score.endRepeatType = #":..:" }
{ d'4 d d4. d8 d1}}
}

\version "2.17.19"
#(set-global-staff-size 10.5)

#(set-default-paper-size "a4")

% Hier können die Ausnahmen eingetragen werden:
% Format: (<seite> . (<x-offset> <y-offset>)
#(define folio-offset '(
    (3 . (0 . 6))      ; Seite 3 um 2 nach links und 1 nach oben
    (4 . (0 . 6))
    (5 . (0 . 6))      ; Seite 3 um 2 nach links und 1 nach oben
    (6 . (0 . 6))
    (7 . (0 . 6))
    (8 . (0 . 6))
    (9 . (0 . 6))
  ))
#(define-markup-command (place-folio layout props folio) (markup?)
   (let* (
         (pageno (chain-assoc-get 'page:page-number props))
         (offs (assoc-get pageno folio-offset '(0 . 0)))
         (m (interpret-markup layout props  (markup folio)))
         (x-ext (ly:stencil-extent m X))
         (y-ext (ly:stencil-extent m Y)))
   (interpret-markup layout props
     (markup
         ; nur zum Test - dann auskommentieren!
        #:with-dimensions x-ext y-ext
        #:line (#:translate offs folio)
       ))))
   
\paper {
  %page-count = 6
        between-system-padding = #0.1
        top-margin = #10
        ragged-last-bottom = ##f
        top-margin = #14
        inner-margin = #13
        outer-margin = #18
        two-sided = ##t
        bottom-margin = #17
        tagline = ##t
        first-page-number = #3
        print-page-number = ##f
        print-first-page-number = ##t
       
 
        oddHeaderMarkup = \markup \fontsize #4 \fill-line { \null \null \on-the-fly #not-first-page \place-folio \fromproperty #'page:page-number-string }       
        evenHeaderMarkup = \markup \fontsize #4 \fill-line { \place-folio  \fromproperty #'page:page-number-string \null \null }
        oddFooterMarkup = \markup \column{
    \fill-line {
      \on-the-fly #first-page { \fromproperty #'header:copyright \null}
    }
    \fill-line {
      \on-the-fly #not-first-page { \fromproperty #'header:tagline  }
    }
  }
}

global = {
\override Score.BarNumber #'break-align-symbols = #'(clef)
\override Score.BarNumber #'font-size = #.5 
\override Score.BarLine #'hair-thickness = #1.425
\override Score.BarLine #'thick-thickness = #4.5
\override DynamicLineSpanner #'staff-padding = #1.5
\numericTimeSignature
%\once

}
Fl = \relative c'' {
  \repeat volta 2 {e8 (f16 g a b c d e4-.) r} \alternative
{{\override Script #'padding = #.3 c c c4. g8 a-. b4 a8-. g f g4 f f f4. c8 d-. e4 d8-. c b c4 \once \set Score.endRepeatType = #":..:" }
 { g' gis a4. bes8 b!-. c4 b8-. a g a4}}
}
Ob = \relative c' {
\repeat volta 2 {e1} \alternative
{{c'4\f c c4. g8 a-. b4 a8-. g f g4 f f f4. c8 d-. e4 d8-. c b c4 \once \set Score.endRepeatType = #":..:" }
 { g4 g g4. g8 b-. c4 b8-. a g a4}}
}
Klar = \relative c'' {
\repeat volta 2 {fis8 e16 (d cis b a g fis4) r} \alternative
{{d''4\f d d4. a8 b-. cis4 b8-. a g a4 g g g4. d8 e-. fis4 e8-. d cis d4 \once \set Score.endRepeatType = #":..:" }
 {  a as g4. g8 f1}}
}
Fag = \relative c' {
\repeat volta 2 {e2. e,4-.->} \alternative
{{c'4\f c c4. g'8 a-. b4 a8-. g f g4 f, f f4. c'8 d-. e4 d8-. c b c4 \once \set Score.endRepeatType = #":..:" }
 { g4 fis f4. e8 es1}}
}
Hr = \relative c' {
\repeat volta 2 {b2. r4} \alternative
{{g'4\f g g4. d8 e-. fis4 e8-. d c d4 c c c4. g8 a8-. b4 a8-. g fis g4 \once \set Score.endRepeatType = #":..:" }
 {  d'4 d d4. d8 d1}}
}

\score {
 
       
   \new StaffGroup <<
     \tag #'score \tag #'fl   \new Staff { << \global \Fl  >> }
     \tag #'score \tag #'ob   \new Staff { << \global \Ob  >> }
     \tag #'score \tag #'klar \new Staff { << \global \Klar  >> }
     \tag #'score \tag #'fag  \new Staff { << \global \Fag    >> }
     \tag #'score \tag #'hr   \new Staff { << \global \Hr     >> }
  >>
\layout {
        %indent = 0
    \context {
      \Score
      \override NonMusicalPaperColumn #'line-break-permission = ##f
    }
}
}

In der momentanen Situation sehe ich für Dich nur die Alternative auf \bar ":|:" zu verzichten oder ein upgrade auf eine der neueren devel-Versionen zu machen. Obiger Code funktioniert nicht in 2.16.2 !!



HTH,
  Harm

chf

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #10 am: Dienstag, 11. Juni 2013, 23:08 »
Hallo Harm,
danke für die Empfehlung! Mit "2.17.19" habe ich das gewünschte Bild.
Allerdings gibt es ein Nachfolgeproblem.

Wie muss ich den angezeigten Fehler korrigieren? Diese Aktion ist nötig... Es handelt sich doch wohl nur um eine Anpassung?

SchiefBläsQuint2.17.19.ly:99:19: Fehler: falscher Typ für Argument 1; symbol list erwartet, "Score.NonMusicalPaperColumn" gefunden
\overrideProperty
                  #"Score.NonMusicalPaperColumn"
SchiefBläsQuint2.17.19.ly:100:47: Warnung: Nicht-musikalischer Ausdruck wird ignoriert

Nachtgruß
Christa
                  #'line-break-system-details
                                              #'((Y-offset . 18)

harm6

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #11 am: Dienstag, 11. Juni 2013, 23:43 »
Zitat von: chf
Wie muss ich den angezeigten Fehler korrigieren?

Hast Du convert-ly benutzt?
Das sollte eigentlich funktionieren.
\overrideProperty ist geändert und hat jetzt eine andere Syntax. ->NR

Auch sind viele BarLines anders zu schreiben. Aber das wird auf jeden Fall durch \convert-ly abgedeckt.

Gruß,
  Harm

harm6

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #12 am: Mittwoch, 12. Juni 2013, 01:52 »
Hallo Christa,

das ganze geht noch einfacher.
Ersetze im Code
  \once \set Score.endRepeatType = #":..:"
überall durch
\bar ":..:"

Das reicht auch.


Gruß,
  Harm

chf

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #13 am: Donnerstag, 13. Juni 2013, 16:55 »
Hallo Harm,

das Wiederholungszeichen samt Klammern ist o.k.,
aber wo nehme ich den geänderten Befehl für
                  \overrideProperty  #"Score.NonMusicalPaperColumn" her?
Verrätst du ihn mir?

Gruß
Christa

harm6

  • Member
Re: Voltenklammern ohne Trennung
« Antwort #14 am: Donnerstag, 13. Juni 2013, 22:06 »
Hallo Christa,

warum verwendest Du nicht convert-ly?

Der alte Befehl.
          \overrideProperty #"Score.NonMusicalPaperColumn"
            #'line-break-system-details #'((Y-offset . 0))
wird absolut korrekt in die 2.17.19-Syntax:
          \overrideProperty Score.NonMusicalPaperColumn.line-break-system-details #'((Y-offset . 0))
umgewandelt.

Oder schaust in die NR 4.4.2 Explicit staff and system positioning


HTH,
  Harm
« Letzte Änderung: Freitag, 14. Juni 2013, 01:52 von harm6 »