Autor Thema: Kapitelüberschrift in Fußzeilen  (Gelesen 1895 mal)

Manuela

  • Member
Kapitelüberschrift in Fußzeilen
« am: Sonntag, 20. November 2016, 10:31 »
Nachdem das Problem mit den Kopf- bzw. Fußzeilen geklärt wäre, hätte ich noch ein Problem. Wahrscheinlich schlage ich mehrmals mit dem Kopf gegen die Wand, wenn ich die Lösung erfahre, weil ich wieder mal irgend eine Kleinigkeit übersehe...

Ich hätte gerne die Kapitelüberschrift in der Fußzeile stehen, aber es klappt nicht. Was mache ich falsch, die Fußzeile ist leer

\version "2.19.42"

tocAct =
#(define-music-function (text) (markup?)
   (add-toc-item! 'tocActMarkup text))

\paper {
  evenFooterMarkup = \markup {
    \fill-line {
      \null \fromproperty #'toc:text
      \null
    }
  }
  oddFooterMarkup = \markup {
    \fill-line {
      \null \fromproperty #'toc:text
      \null
    }
  }
}

\tocAct \markup "Kirchenlieder"

\new Staff { \repeat unfold 3 { c'1 \pageBreak } }
« Letzte Änderung: Sonntag, 20. November 2016, 10:49 von Manuela »

harm6

  • Member
Re: Kapitelüberschrift in Fußzeilen
« Antwort #1 am: Dienstag, 22. November 2016, 00:34 »
Hallo Manuela,

Zitat
Was mache ich falsch, die Fußzeile ist leer

Gar nichts. Die gewünschte Information ist zum Zeitpunkt, da Du sie haben willst einfach noch nicht da.

Zur Überprüfung nehme ich häufig ein markup-command, hier fromproperty, kopiere es in mein file, benenne es neu, wende es mit dem neuen Namen an und laß mir diverse Dinge anzeigen:

\version "2.19.42"

tocAct =
#(define-music-function (text) (markup?)
   (add-toc-item! 'tocActMarkup text))

#(define-markup-command (my-fromproperty layout props symbol)
  (symbol?)
  (let ((m (chain-assoc-get symbol props)))
 
;(pretty-print props)
;(display-scheme-music (ly:module->alist (ly:output-def-scope layout)))
(display (ly:output-def-lookup layout 'label-page-table))
    (if (markup? m)
        ;; prevent infinite loops by clearing the interpreted property:
        (interpret-markup layout (cons (list (cons symbol `(,property-recursive-markup ,symbol))) props) m)
        empty-stencil)))

\paper {
  evenFooterMarkup = \markup {
    \fill-line {
      \null \my-fromproperty #'toc:text
      \null
    }
  }
  oddFooterMarkup = \markup {
    \fill-line {
      \null \my-fromproperty #'toc:text
      \null
    }
  }
}

\tocAct \markup "Kirchenlieder"

\new Staff { \repeat unfold 3 { c'1 \pageBreak } }

Die Daten sind nicht da!

Aber...
Du könntest ein header-field verwenden:

\version "2.19.42"

\paper {
  evenFooterMarkup = \markup {
    \fill-line {
      \null \fromproperty #'header:section
      \null
    }
  }
  oddFooterMarkup = \markup {
    \fill-line {
      \null \fromproperty #'header:section
      \null
    }
  }
}

\bookpart {
  \header { section = "Kirchenlieder" }
  \new Staff { \repeat unfold 3 { c'1 \pageBreak } }
}
\bookpart {
  \header { section = "Trinklieder" }
  \new Staff { \repeat unfold 3 { c'1 \pageBreak } }
}



HTH,
  Harm

Manuela

  • Member
Re: Kapitelüberschrift in Fußzeilen
« Antwort #2 am: Dienstag, 22. November 2016, 06:15 »
Danke Harm.

Ich bin deswegen im Kreis gerannt.

Leider kann ich meine Scores nicht in bookparts einsperren (wegen der Variablendefinitionen), mal sehen, ob ich es so hinkriege.

Manuela

  • Member
Re: Kapitelüberschrift in Fußzeilen
« Antwort #3 am: Mittwoch, 23. November 2016, 15:29 »
Wie ich gedacht hatte, header wirkt sich auf das ganze Dokument aus, daher enthalten alle Fußzeilen den gleichent Text.

Bis mir etwas anderes einfällt, bleiben die Fußzeilen auf den linken Seiten halt leer.

harm6

  • Member
Re: Kapitelüberschrift in Fußzeilen
« Antwort #4 am: Mittwoch, 23. November 2016, 22:46 »
Zitat
Wie ich gedacht hatte, header wirkt sich auf das ganze Dokument aus, daher enthalten alle Fußzeilen den gleichent Text.
Natürlich, deshalb die bookparts. ;)
Wenn Du die nicht haben willst oder kannst, könntest Du versuchen die page-header/footer-Definitionen auszuweiten.
Das LSR-snippet zu page-range könnte man vielleicht verändern, um auf ausgewählten Seiten Text zu drucken.
Außerdem gibt es ja on-page (->titling-init.ly)

Ich kann das momentan aber nicht alles selbst kodieren, bin sehr beschäftigt:
http://lilypond.1069038.n5.nabble.com/guile-2-0-and-debian-tt196306.html
und hab nur dann Zeit wenn mein computer gerade dabei ist einen neuen build/regtest-comparison/make-doc/etc zu berechnen

Gruß,
  Harm

Manuela

  • Member
Re: Kapitelüberschrift in Fußzeilen
« Antwort #5 am: Donnerstag, 24. November 2016, 09:32 »
Danke Harm für deine Bemühungen  :)

Wenn ich früher gewusst hätte, dass man Variablendefinitionen nirgends inkludieren kann, wo sie zwischen geschwungenen Klammern stehen, hätte ich meinen Code anders organisiert. Mir war klar, dass ich in einen Musikausdruck keine Variablendefinitionen einfügen kann, aber dass das auch für book/bookpart gilt, war dann doch einigermaßen überraschend.

Wie gesagt, diese Fußzeilen mit den Kapitelüberschriften wären "nice-to-have" gewesen, aber momentan sind für mich andere Themen vordringlicher, daher möchte ich meine Zeit momentan anderswo investieren. Außer es drängt sich plötzlich eine einfach umzusetzende Lösung auf  ;)