Deutschsprachiges LilyPond-Forum

Allgemeine Fragen und Probleme => Fragen und Probleme aller Art => Thema gestartet von: Manuela am Freitag, 17. März 2023, 10:36

Titel: Seitennummer je bookpart neu einstellen: mit neueren Lilypond Versionen anders
Beitrag von: Manuela am Freitag, 17. März 2023, 10:36
Ich vermute, dass die Antwort irgendwo im Archiv begraben liegt, das leider momentan nicht zugänglich ist.

Mit
first-page-number = #3 kann ich offensichtlich nur für die Gesamtausgabe die Seitenzahl einmal einstellen, in einem neuen bookpart jedoch nicht ändern.
Titel: Antw:Seitennummer je bookpart neu einstellen - geht das?
Beitrag von: Manuela am Freitag, 17. März 2023, 11:53
Ich habe hier (https://lilypond-user.gnu.narkive.com/BOUcTiGD/problem-controlling-page-numbers-in-bookparts) eine Lösung gefunden

Hier die Kurzversion:
#(define-markup-command (bookpart-page-number layout props) ()
   (let ((first-page-number (ly:output-def-lookup layout 'first-page-number))
         (page-number (chain-assoc-get 'page:page-number props 0)))
     (interpret-markup layout props (format "~a" (1+ (- page-number
                                                       first-page-number))))))

In die Paper-Anweisung muss man dann etwa folgendes einfügen
\paper {
  oddHeaderMarkup = \markup \center-column
  {
    \fill-line {
      \null
      \abs-fontsize #10 \number \bookpart-page-number
    }
  }
  evenHeaderMarkup = \markup \center-column
  {
    \fill-line {
      \abs-fontsize #10
      \number \bookpart-page-number
      \null
    }
  }
}
Titel: Antw:Seitennummer je bookpart neu einstellen - geht das?
Beitrag von: Pusteblumi am Freitag, 17. März 2023, 20:57
Hallo Manuela,

witzigerweise gab es dazu gerade gestern einen Beitrag in der französischen Mailingliste:
https://lists.gnu.org/archive/html/lilypond-user-fr/2023-03/msg00180.html (https://lists.gnu.org/archive/html/lilypond-user-fr/2023-03/msg00180.html)

Seit Ly 2.23.12 geht's auch damit:
\paper {
  bookpart-level-page-numbering = ##t
}

Viele Grüße,
Klaus
Titel: Antw:Seitennummer je bookpart neu einstellen - geht das?
Beitrag von: Manuela am Freitag, 17. März 2023, 21:32
Danke für den Hinweis, Klaus. Leider hat mein Ubuntu Lilypond noch nicht upgedated, ich stehe bei 2.23.5
Titel: Antw:Seitennummer je bookpart neu einstellen - geht das?
Beitrag von: Manuela am Dienstag, 20. August 2024, 12:14
Mit den neuen Versionen (ich habe ab 2.25.15 getestet) funktioniert die Prozedur bookpart-page-number gar nicht mehr.

Ich habe eine Weile gebraucht, bis ich herausgefunden habe, wieso mein Code mit den neueren Versionen plötzlich nicht mehr kompiliert.

Hier ein Beispiel für die Anwendung der neuen Eigenschaft bookpart-level-page-numbering

\version "2.25.18"
\language "deutsch"

%% diese Prozedur ist obsolet und liefert eine Fehlermeldung
% #(define-markup-command (bookpart-page-number layout props) ()
%    (let
%     ((first-page-number
%       (ly:output-def-lookup layout 'first-page-number))
%      (page-number (chain-assoc-get 'page:page-number props 0)))
%     (interpret-markup layout props
%                       (format "~a"
%                               (1+ (- page-number
%                                      first-page-number))))))

mus = \relative { c'4 c c c}

\paper {
  bookpart-level-page-numbering = ##t
  #(include-special-characters)
  oddHeaderMarkup = \markup {
    \fill-line {
      \null
      \unless \on-first-page-of-part \if \should-print-page-number
      \concat
      \vcenter {
        "—— "
        \number \fromproperty #'page:page-number-string
        " ——"
      }
      \null
    }
  }
  evenHeaderMarkup = #oddHeaderMarkup
}

\bookpart {
  \markup "1. Bookpart"
  \mus
  \pageBreak
  \mus
}

\bookpart {
  \markup "2. Bookpart"
  \mus
  \pageBreak
  \mus
}