Hello Simon, On Sat, Dec 28, 2024 at 3:25 PM Simon Albrecht <simon.albre...@mail.de> wrote:
> I would like to obtain LilyPond output with black and white inverted > (black background, white music and text) for on-screen use and > projections. Does someone know how to achieve that through LilyPond > code, or has it been done before? Should absolutely be an LSR snippet IMO. > I, too, had this problem. Someone on the list helped me, but I can't find their name right now :-( Does the attached sample fit your purpose? It's best to split off (part of) this file into an color.ily file that you can include 'everywhere' you need it, so that you can avoid repetition of the color function. Please note that I tried my best to find all the relevant grob names, but I might have missed some :-( Regards, Christ van Willegen
% vim: set et autowriteall vsts=2,42,8: \version "2.24.1" color = #(define-music-function (parser location lily-color) (string?) #{ \override Score.StaffSymbol.color = #lily-color \override Score.BarNumber.color = #lily-color \override Score.Glissando.color = #lily-color \override Score.LyricExtender.color = #lily-color \override Score.LyricHyphen.color = #lily-color \override Score.LyricText.color = #lily-color \override Score.MetronomeMark.color = #lily-color \override Score.RehearsalMark.color = #lily-color \override Score.SectionLabel.color = #lily-color \override Score.SpanBar.color = #lily-color \override Score.StanzaNumber.color = #lily-color \override Score.SystemStartBar.color = #lily-color \override Score.SystemStartBrace.color = #lily-color \override Score.SystemStartBracket.color = #lily-color \override Score.VoltaBracket.color = #lily-color \override Staff.Accidental.color = #lily-color \override Staff.AccidentalCautionary.color = #lily-color \override Staff.BarLine.color = #lily-color \override Staff.Beam.color = #lily-color \override Staff.BreathingSign.color = #lily-color \override Staff.Clef.color = #lily-color \override Staff.Dots.color = #lily-color \override Staff.DynamicLineSpanner.color = #lily-color \override Staff.DynamicText.color = #lily-color \override Staff.DynamicTextSpanner.color = #lily-color \override Staff.Flag.color = #lily-color \override Staff.Hairpin.color = #lily-color \override Staff.InstrumentName.color = #lily-color \override Staff.KeyCancellation.color = #lily-color \override Staff.KeySignature.color = #lily-color \override Staff.LedgerLineSpanner.color = #lily-color \override Staff.LedgerLineSpanner.color = #lily-color \override Staff.MetronomeMark.color = #lily-color \override Staff.MultiMeasureRest.color = #lily-color \override Staff.MultiMeasureRestNumber.color = #lily-color \override Staff.MultiMeasureRestText.color = #lily-color \override Staff.NoteHead.color = #lily-color \override Staff.Parentheses.color = #lily-color \override Staff.PhrasingSlur.color = #lily-color \override Staff.Rest.color = #lily-color \override Staff.Script.color = #lily-color \override Staff.Slur.color = #lily-color \override Staff.Stem.color = #lily-color \override Staff.TextScript.color = #lily-color \override Staff.Tie.color = #lily-color \override Staff.TimeSignature.color = #lily-color \override Staff.TupletBracket.color = #lily-color \override Staff.TupletNumber.color = #lily-color #}) black = { \color "#ffffff" } \paper { oddHeaderMarkup = \markup { \score { \relative { % hides staff and notes so that only the grid lines are visible \hideNotes \hide Staff.BarLine \override Staff.StaffSymbol.line-count = #0 \hide Staff.TimeSignature \hide Staff.Clef s1 -\tweak layer #-1 -\markup { \with-dimensions #'(0 . 0) #'(0 . 0) % specify color \with-color #(rgb-color 0 0 0) % specify size \filled-box #'(-1000 . 1000) #'(-10000 . 4000) #0 } } \layout { #(layout-set-staff-size 1) } } } evenHeaderMarkup = \oddHeaderMarkup } \paper { #(set-paper-size "a4") % page-breaking = #ly:one-page-breaking } \header { title = \markup { \with-color #white { "White on black" } } arranger = \markup { \with-color #white { "" } } poet = \markup { \with-color #white { "" } } % Remove standard Lilypond tag line at the bottom of the score tagline = ##f } \layout { \context { \Voice \consists "Melody_engraver" } } global = { \black \key e \minor \time 4/4 } sopranoVoice = \relative c' { \global \dynamicUp % Music here. % \compressEmptyMeasures R1 * 4 r2^\markup { \italic Verse 1} r8 e8 e a |% 5 R1 * 250 c1 | d2 r2 | \bar "|." } verse = \lyricmode { % Lyrics here White on black Some more } \score { \new Staff \with { instrumentName = "S." } { \sopranoVoice } \addlyrics { \verse } \layout { } }