commit fca938a6a5c6441ed46f6b4991bbd6f6a3711425 Author: Janne Rohn Date: Tue Sep 15 15:59:32 2026 +0200 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ec41096 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +# ---> Lilypond +*.pdf +*.ps +*.midi +*.mid +*.csv +*.log +*~ + diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..b067281 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "lilypond-common-includes"] + path = lilypond-common-includes + url = ssh://git@git.zahlenlabyrinth.de:9922/Notenbund/lilypond-common-includes.git +[submodule "lilypond-song-includes"] + path = lilypond-song-includes + url = ssh://git@git.zahlenlabyrinth.de:9922/Notenbund/lilypond-song-includes.git diff --git a/lieder/00vorlage_light/00vorlage_light.ly b/lieder/00vorlage_light/00vorlage_light.ly new file mode 100644 index 0000000..5fd3668 --- /dev/null +++ b/lieder/00vorlage_light/00vorlage_light.ly @@ -0,0 +1,14 @@ +\version "2.25.27" + +\include "../../lilypond-custom-includes/base_config.ily" +\include "../../lilypond-song-includes/liedbausteine/00_vorlage_light.ly" + +HEADER = \bookpart { + \header { + \basicSongInfo + %infotext = "" + categories = "" + } +} + +\include "public_includes/layout_bottom.ily" \ No newline at end of file diff --git a/lieder/authors_sandbox/authors_sandbox.ly b/lieder/authors_sandbox/authors_sandbox.ly new file mode 100644 index 0000000..ff8a2d1 --- /dev/null +++ b/lieder/authors_sandbox/authors_sandbox.ly @@ -0,0 +1,124 @@ +\version "2.25.8" + +\include "../../lilypond-custom-includes/base_config.ily" + +#(set! paper-alist (cons '("testformat" . (cons (* 176 mm) (* 15 mm))) paper-alist)) +\paper { + #(set-paper-size "testformat") +} + +\bookpart { + \header { + authors = #'( + ("kumpelerbe" text melody)) + year_text = "1600" + year_melody = "1600" + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" text melody)) + year_text = "1600" + year_melody = "1800" + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" text melody)) + year_melody = "1800" + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + year_text = "1500" + authors = #'( + ("kumpel" text)) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" melody)) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" melody) + ("dude" text composition melody)) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" (verse 1)) + ("dude" melody (voice 1) (voice 2))) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" text (verse 2)) + ("dude" (verse 2) (verse 3))) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" text (voice 2) (voice 3)) + ("dude" (voice 2) (voice 3)) + ("nocheiner" (voice 4))) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + year_composition = "2001" + year_melody = "1901" + authors = #'( + ("kumpel" text composition) + ("dude" composition)) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + authors = #'( + ("kumpel" interlude) + ("dude" bridge) + ("" melody)) + } + \markup { \print-songinfo } +} + +\bookpart { + \header { + year_melody = "1800" + year_translation = "2010" + authors = #'( + ("kumpel" translation) + ("dude" text (meloverse 1)) + ("" melody)) + } + \markup { \print-songinfo } +} \ No newline at end of file diff --git a/liederbuecher/beispiel_liederbuch/beispiel_liederbuch.ly b/liederbuecher/beispiel_liederbuch/beispiel_liederbuch.ly new file mode 100644 index 0000000..a22e6ad --- /dev/null +++ b/liederbuecher/beispiel_liederbuch/beispiel_liederbuch.ly @@ -0,0 +1,175 @@ +\version "2.26.0" + +% point and click blows up the pdf +\pointAndClickOff + +imagePagePath = "categories" +songPath = "../../lieder" + +\include "../../lilypond-custom-includes/base_config.ily" +\include "public_includes/book_top.ily" + +% Brauchen wir jedes Lied als Einzelausgabe mit Midi und PDF? +#(define noStandaloneOutput #t) + +%Liedteil -> hier werden alle Lieder inkludiert +%Reihenfolge im Liederbuch: Von oben nach unten +\blankpage +\includeSong "00vorlage_light" +\imagepage #125 "see.eps" + +%Zur Übersichtlichkeit: +%A +%B +%C +%D +%E +%F +%G +%H +%I +%J +%K +%L +%M +%N +%O +%P +%Q +%R +%S +%T +%U +%V +%W +%X +%Y +%Z + + +\book { + % Dateiname + \bookOutputName "beispiel_liederbuch" + + \header { + pdfcomposer = "Irgendwer" + pdftitle = "Beispielliederbuch ♫" % Unicode is geil! + pdfsubject = "Ein anspruchsvolles Liederbuch mit Noten und etwas Hintergrundinformationen zu den Liedern." + pdfkeywords = "Liederbuch, Pfadfinder, bündisch" + } + + \paper { + first-page-number = 1 + } + + %Eine Seite mit dem Cover könnte so aussehen: + \bookpart { + \paper { + print-page-number = ##f + inner-margin = 0 + outer-margin = 0 + binding-offset = 0 + top-margin = 0 + bottom-margin = 0 + last-bottom-spacing = #'((basic-distance . 0) (minimum-distance . 0) (padding . 0)) + page-count = 1 + } + \markup { + \title-to-pdf-toc "Titelseite" + " " + %\epsfile #X #120 #"images/front.eps" + %\fill-line { \center-column { \vspace #1 \pad-x #9 \customEps #95 #"Dateiname.dt" \vspace #1 } } + } + } + + % Seite + \bookpart { + \paper { print-page-number = ##f } + \markup { + \title-to-pdf-toc "Vorwort" + \vspace #2 + \fill-line { + \override #'(font-name . "Old Standard TT") + \fontsize #0.5 + \override #'(line-width . 115) + \left-column { + \justify-string #" +Hier steht lustiger Text" + " " + \fill-line { "blublub" } + } + } + } + % muss drinbleiben, damit die Kategoriebildchen alle reingeladen und referenziert werden können: + \markuplist { \embed-category-images } + } + + % die Liederausgabe + \songs + + %Kategorienverzeichnis + \bookpart { + \markuplist { + \index-in-columns-with-title #'categories \column { + \title-to-pdf-toc "Kategorienverzeichnis" + \fontsize #5 \sans \bold \fill-line { \null "Inhaltsverzeichnis nach Kategorien" \null } + \vspace #1 + } + } + } + + \bookpart { + \markuplist { + \index-in-columns-with-title #'authors \column { + \title-to-pdf-toc "Autor*innenverzeichnis" + \fontsize #5 \sans \bold \fill-line { \null "Autor*innenverzeichnis" \null } + \vspace #1 + } + } + } + + % Inhaltsverzeichnis + \bookpart { + \indexSection #"A" \markup { "A" } + \indexSection #"B" \markup { "B" } + \indexSection #"C" \markup { "C" } + \indexSection #"D" \markup { "D" } + \indexSection #"E" \markup { "E" } + \indexSection #"F" \markup { "F" } + \indexSection #"G" \markup { "G" } + \indexSection #"H" \markup { "H" } + \indexSection #"I" \markup { "I" } + \indexSection #"J" \markup { "J" } + \indexSection #"K" \markup { "K" } + \indexSection #"L" \markup { "L" } + \indexSection #"M" \markup { "M" } + \indexSection #"N" \markup { "N" } + \indexSection #"O" \markup { "O" } + \indexSection #"P" \markup { "P" } + \indexSection #"Q" \markup { "Q" } + \indexSection #"R" \markup { "R" } + \indexSection #"S" \markup { "S" } + \indexSection #"T" \markup { "T" } + \indexSection #"U" \markup { "U" } + \indexSection #"V" \markup { "V" } + \indexSection #"W" \markup { "W" } + \indexSection #"X" \markup { "X" } + \indexSection #"Y" \markup { "Y" } + \indexSection #"Z" \markup { "Z" } + \markuplist { + \index-in-columns-with-title #'alphabetical \column { + \title-to-pdf-toc "Inhaltsverzeichnis" + \fontsize #5 \sans \bold \fill-line { \null "Inhaltsverzeichnis" \null } + \vspace #.5 + \justify { + Da die allermeisten Lieder unter verschiedenen Namen bekannt sind, + wollen wir euch ein Inhaltsverzeichnis an die Hand geben, mit dem ihr hoffentlich auf verschiedene Arten fündig werdet. + Die Liedtitel, die auch die Überschriften sind, findet ihr normal gedruckt. + Alle weiteren Alternativtitel oder Liedanfänge sind zur Unterscheidung kursiv gedruckt. + } + \vspace #1 + } + \write-toc-csv %gibt eine csv Datei mit allen Liedern aus + } + } +} diff --git a/liederbuecher/beispiel_liederbuch/categories/see.eps b/liederbuecher/beispiel_liederbuch/categories/see.eps new file mode 100644 index 0000000..a6659e3 --- /dev/null +++ b/liederbuecher/beispiel_liederbuch/categories/see.eps @@ -0,0 +1,343 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.11.2 (http://cairographics.org) +%%CreationDate: Tue Apr 16 19:23:36 2019 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 0 -1 444 435 +%%EndComments +%%BeginProlog +/cairo_eps_state save def +/dict_count countdictstack def +/op_count count 1 sub def +userdict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 0 -1 444 435 +%%EndPageSetup +q 0 -1 444 436 rectclip q +0 434.4 444 -435 re W n +0 g +1.031 210.599 m 1.031 326.431 0.797 424.17 0.516 427.798 c 0 434.4 l 443.438 + 434.4 l 443.438 0.002 l 1.039 0.002 l h +435.039 217.599 m 435.039 425.201 l 222.836 425.4 l 10.637 425.603 l 10.637 + 9.595 l 222.836 9.798 l 435.039 10.002 l h +126.637 44.056 m 115.063 45.084 102.223 47.072 98.547 48.408 c 96.617 49.111 + 92.879 50.42 90.238 51.322 c 81.727 54.22 75.328 57.752 71.93 61.423 c +67.242 66.482 66.699 67.755 66.664 73.693 c 66.602 85.502 74.73 95.568 84.566 + 95.865 c 86.285 95.92 88.832 96.337 90.223 96.795 c 97.484 99.193 106.762 + 90.607 108.016 80.334 c 108.395 77.236 108.27 76.998 105.605 75.732 c 104.059 + 75.002 102.242 74.4 101.563 74.4 c 100.887 74.4 100.137 74.087 99.902 73.705 + c 99.664 73.322 98.473 72.806 97.254 72.56 c 96.035 72.314 94.477 71.896 + 93.789 71.63 c 93.094 71.361 91.715 71.865 90.668 72.775 c 89.637 73.67 + 88.461 74.4 88.059 74.4 c 87.102 74.4 85.406 76.111 84.875 77.615 c 84.246 + 79.384 85.68 81.599 87.457 81.599 c 88.316 81.599 91.379 82.545 94.266 +83.701 c 99.199 85.673 99.414 85.865 97.895 86.931 c 96.48 87.92 95.855 +87.869 92.859 86.533 c 90.977 85.689 88.145 84.771 86.566 84.49 c 82.117 + 83.693 77.301 79.08 75.859 74.228 c 74.563 69.861 74.832 68.974 78.215 +66.4 c 82.828 62.888 99.277 58.193 110.238 57.259 c 112.879 57.033 118.277 + 56.494 122.238 56.064 c 126.195 55.63 132.137 55.502 135.438 55.779 c 138.738 + 56.056 146.027 56.209 151.637 56.115 c 157.535 56.021 161.836 56.263 161.836 + 56.697 c 161.836 57.107 164.086 57.685 166.836 57.986 c 169.586 58.283 +173.109 58.853 174.664 59.248 c 176.219 59.642 181.438 60.337 186.262 60.791 + c 191.09 61.24 196.602 61.767 198.512 61.955 c 200.422 62.142 202.402 62.806 + 202.91 63.427 c 204.094 64.869 212.344 66.959 220.879 67.974 c 224.535 +68.408 228.676 69.279 230.082 69.908 c 232.789 71.119 253.113 77.599 254.199 + 77.599 c 254.813 77.599 260.602 80.002 268.238 83.42 c 271.984 85.095 272.547 + 85.271 283.035 88.045 c 286.555 88.974 289.824 90.06 290.305 90.459 c 291.414 + 91.377 306.367 96.002 308.238 96.002 c 309.012 96.002 310.859 96.509 312.352 + 97.13 c 313.844 97.755 320.531 98.877 327.215 99.627 c 338.75 100.92 339.66 + 100.92 345.203 99.584 c 348.41 98.81 352.008 97.689 353.199 97.087 c 354.387 + 96.49 356.098 96.002 357 96.002 c 357.906 96.002 360.512 95.099 362.789 + 94.002 c 365.07 92.9 367.41 92.002 367.988 92.002 c 368.566 92.002 369.039 + 91.654 369.039 91.232 c 369.039 90.81 369.688 89.818 370.488 89.033 c 372.172 + 87.369 372.641 83.451 371.34 81.884 c 370.105 80.396 368.09 80.525 364.059 + 82.345 c 359.398 84.451 347.832 87.826 343.438 88.365 c 341.457 88.607 +334.617 88.478 328.238 88.076 c 316.582 87.341 308.367 85.646 301.039 82.462 + c 292.594 78.791 286.582 76.798 283.949 76.798 c 282.398 76.798 280.926 + 76.466 280.676 76.06 c 280.426 75.654 279.055 75.072 277.629 74.763 c 276.203 + 74.459 272.023 72.806 268.336 71.091 c 264.648 69.38 260.691 67.771 259.535 + 67.513 c 258.383 67.259 255.637 66.377 253.438 65.556 c 240.918 60.88 229.484 + 57.591 215.836 54.748 c 212.758 54.107 208.797 52.904 207.039 52.072 c +205.277 51.244 201.496 50.369 198.637 50.134 c 195.777 49.9 192.355 49.502 + 191.039 49.255 c 189.719 49.009 185.578 48.279 181.836 47.63 c 178.098 +46.982 173.059 46.107 170.637 45.685 c 168.219 45.263 164.867 44.564 163.195 + 44.134 c 161.523 43.705 159.184 43.49 157.996 43.662 c 155.223 44.06 146.203 + 44.095 139.039 43.736 c 135.957 43.58 130.379 43.724 126.637 44.056 c h +201.438 92.857 m 180.465 93.56 171.824 94.568 167.316 96.837 c 162.215 +99.404 161.039 100.701 161.039 103.755 c 161.039 108.173 156.668 116.716 + 149.871 125.599 c 146.598 129.877 136.438 139.197 134.102 140.056 c 133.199 + 140.392 132.242 141.236 131.973 141.931 c 131.707 142.63 130.938 143.201 + 130.262 143.201 c 129.59 143.201 129.039 143.732 129.039 144.384 c 129.039 + 145.689 128.367 145.877 119.039 147.197 c 92.586 150.935 78.941 154.087 + 68.445 158.884 c 66.48 159.783 65.461 159.853 64.215 159.189 c 61.926 157.962 + 59.633 158.904 58.211 161.65 c 56.75 164.478 57.395 167.752 59.551 168.435 + c 61.539 169.068 66.363 168.306 73.438 166.24 c 76.516 165.341 80.656 164.13 + 82.637 163.556 c 84.617 162.978 90.379 161.935 95.438 161.24 c 100.496 +160.545 108.418 159.384 113.039 158.67 c 120.051 157.58 124.867 157.462 +142.238 157.951 c 166.824 158.638 167.438 158.67 167.438 159.224 c 167.438 + 159.462 166.719 161.705 165.836 164.209 c 164.957 166.712 164.238 169.447 + 164.238 170.283 c 164.238 171.119 163.664 173.177 162.965 174.849 c 161.445 + 178.482 160.273 183.646 156.613 202.798 c 153.863 217.201 l 153.852 242.599 + l 153.84 259.744 153.566 268.002 153 268.002 c 152.539 268.002 151.551 +266.923 150.801 265.603 c 150.051 264.287 149.184 263.209 148.875 263.205 + c 148.566 263.201 147.238 261.638 145.926 259.728 c 143.535 256.255 l 143.469 + 237.127 l 143.418 222.408 143.707 216.435 144.723 211.201 c 145.449 207.459 + 146.211 200.904 146.414 196.63 c 146.73 189.982 146.996 188.795 148.254 + 188.396 c 150.094 187.81 150.957 184.15 149.91 181.392 c 148.641 178.056 + 143.316 177.724 122.773 179.712 c 119.828 179.998 116.98 179.853 115.973 + 179.369 c 115.02 178.912 112.258 177.923 109.836 177.177 c 103.164 175.119 + 99.094 173.15 96.125 170.556 c 94.648 169.263 92.176 167.959 90.637 167.654 + c 89.098 167.353 87.023 166.705 86.031 166.216 c 83.281 164.857 76.727 +167.064 76.379 169.466 c 76.234 170.455 75.426 171.693 74.578 172.224 c +70.988 174.466 73.148 179.834 84.289 196.345 c 88.219 202.173 91.438 207.361 + 91.438 207.873 c 91.438 208.38 91.758 208.798 92.152 208.798 c 92.547 208.798 + 93.988 210.509 95.355 212.599 c 96.723 214.689 99.188 217.869 100.84 219.658 + c 102.488 221.451 106.176 225.552 109.039 228.771 c 111.898 231.994 114.977 + 235.384 115.879 236.314 c 116.785 237.24 118.945 239.795 120.68 241.982 + c 122.418 244.173 126.629 248.795 130.039 252.248 c 133.445 255.701 136.246 + 258.767 136.262 259.064 c 136.273 259.357 137.711 261.209 139.461 263.17 + c 141.207 265.134 142.637 266.978 142.637 267.267 c 142.637 267.556 145.336 + 271.17 148.633 275.295 c 154.633 282.798 l 154.625 288.798 l 154.617 296.021 + 156.563 310.806 158.676 319.599 c 159.523 323.119 160.441 327.619 160.711 + 329.599 c 161.191 333.087 165.266 346.162 166.758 349.002 c 167.871 351.115 + 169.582 350.681 170.5 348.048 c 171.094 346.345 171.023 344.587 170.25 +341.65 c 169.184 337.599 l 172.91 337.627 l 180.219 337.685 191.434 341.584 + 196.637 345.877 c 199.773 348.462 199.039 349.037 194.605 347.459 c 192.645 + 346.759 188.313 346.013 184.98 345.798 c 178.867 345.408 175.699 346.255 + 172.914 349.033 c 172.32 349.623 170.828 350.767 169.594 351.572 c 167.93 + 352.662 167.414 353.572 167.594 355.119 c 167.758 356.529 168.223 357.087 + 169.039 356.849 c 172.238 355.916 185.152 355.9 186.27 356.826 c 186.922 + 357.369 189.133 358.123 191.188 358.505 c 193.238 358.892 197.211 360.322 + 200.012 361.685 c 205.91 364.56 209.621 365.123 211.855 363.486 c 214.047 + 361.88 213.855 355.396 211.52 352.115 c 210.594 350.814 209.836 349.404 + 209.836 348.974 c 209.836 347.548 205.73 339.201 205.031 339.201 c 204.656 + 339.201 204.117 338.482 203.836 337.603 c 203.168 335.49 197.211 331.451 + 193.328 330.47 c 191.629 330.041 188.617 329.259 186.637 328.732 c 184.656 + 328.205 180.359 327.712 177.086 327.638 c 171.133 327.502 l 170.965 324.224 + l 170.871 322.42 170.57 319.916 170.293 318.658 c 169.867 316.72 170.148 + 316.162 172.137 314.986 c 175.098 313.236 183.293 313.154 188.09 314.826 + c 189.988 315.486 191.852 315.837 192.227 315.607 c 193.289 314.951 202.105 + 317.478 202.746 318.627 c 203.063 319.189 205.598 320.72 208.379 322.025 + c 211.16 323.33 213.617 324.58 213.836 324.798 c 215.09 326.052 219.285 + 327.806 220.797 327.712 c 222.746 327.587 227.359 322.962 228.891 319.599 + c 229.656 317.92 229.672 315.912 228.957 310.533 c 227.852 302.244 228.375 + 294.705 230.559 287.4 c 231.445 284.431 233.246 278.22 234.555 273.599 +c 238.262 260.525 239.379 257.798 244.785 248.693 c 247.563 244.013 249.836 + 239.837 249.836 239.412 c 249.836 238.986 250.996 237.056 252.418 235.119 + c 253.836 233.185 255.777 229.978 256.73 228.002 c 257.684 226.021 259.02 + 223.681 259.703 222.798 c 260.859 221.306 260.898 221.416 260.246 224.4 + c 258.191 233.802 256.277 246.119 255.77 253.201 c 254.809 266.634 255.484 + 320.533 256.637 322.396 c 257.25 323.396 257.461 324.423 258.18 330.002 + c 258.836 335.064 260.242 340.888 261.32 342.998 c 261.938 344.209 262.711 + 346.459 263.035 348.002 c 263.359 349.541 264.305 352.216 265.133 353.951 + c 266.973 357.798 266.977 357.599 265.059 357.599 c 264.191 357.599 261.809 + 359.271 259.766 361.314 c 256.551 364.529 256.23 365.134 257.391 365.783 + c 258.129 366.197 259.254 366.334 259.887 366.091 c 260.52 365.849 261.039 + 365.923 261.039 366.255 c 261.039 366.587 261.668 366.896 262.438 366.943 + c 263.207 366.99 268.262 367.267 273.672 367.564 c 284.48 368.15 293.656 + 370.173 297.129 372.74 c 298.363 373.654 299.582 374.4 299.836 374.4 c +300.609 374.4 305.199 377.795 309.406 381.474 c 313.074 384.685 313.621 +384.912 316.605 384.443 c 320.578 383.818 324.168 380.646 322.789 378.982 + c 322.141 378.201 322.102 377.072 322.652 375.142 c 323.836 371.025 323.605 + 368.798 321.551 364.384 c 319.719 360.451 315.262 355.201 313.754 355.201 + c 313.336 355.201 311.172 353.849 308.941 352.201 c 306.711 350.548 304.574 + 349.287 304.188 349.392 c 303.801 349.498 303.125 348.908 302.684 348.084 + c 302.242 347.259 300.602 346.345 299.035 346.052 c 297.473 345.759 295.031 + 344.841 293.613 344.009 c 288.742 341.154 283.176 339.728 276.641 339.666 + c 270.246 339.599 l 270.238 323.373 l 274.594 322.392 l 276.988 321.857 + 280.313 321.435 281.984 321.459 c 285.535 321.505 294.637 324.056 294.637 + 325.005 c 294.637 325.763 308.828 332.798 310.355 332.798 c 310.922 332.798 + 312.758 333.513 314.43 334.388 c 316.105 335.259 319.441 336.345 321.844 + 336.802 c 325.629 337.517 326.473 337.439 328.137 336.193 c 331.215 333.896 + 333.066 326.654 333.504 315.201 c 334.066 300.525 334.414 296.384 335.754 + 288.4 c 337.535 277.802 337.793 276.732 339.488 272.9 c 340.34 270.974 +341.039 268.869 341.039 268.22 c 341.039 267.576 341.566 266.091 342.211 + 264.923 c 342.859 263.755 343.949 261.541 344.633 260.002 c 346.082 256.748 + 347.148 254.927 349.637 251.459 c 350.629 250.08 351.438 248.459 351.438 + 247.853 c 351.438 247.252 351.984 245.974 352.652 245.021 c 353.32 244.064 + 353.875 242.275 353.879 241.041 c 353.887 239.81 354.094 236.693 354.344 + 234.119 c 354.625 231.189 354.465 229.107 353.914 228.56 c 353.434 228.076 + 353.039 227.216 353.039 226.646 c 353.039 224.81 349.848 221.877 345.996 + 220.162 c 343.93 219.244 339.176 217.193 335.438 215.599 c 326.672 211.873 + 324.199 210.513 322.238 208.345 c 320.254 206.15 315.82 203.935 309.039 + 201.736 c 304.004 200.111 302.184 199.67 296.238 198.654 c 294.695 198.392 + 292.832 197.869 292.09 197.49 c 291.352 197.111 287.301 196.728 283.09 +196.642 c 278.883 196.556 275.449 196.283 275.465 196.041 c 275.48 195.798 + 276.648 191.099 278.066 185.599 c 280.289 176.959 280.871 175.568 282.352 + 175.357 c 283.297 175.22 287.438 176.259 291.551 177.666 c 295.668 179.068 + 299.758 180.318 300.637 180.443 c 303.891 180.896 311.328 183.103 313.652 + 184.306 c 314.973 184.986 320.324 186.498 325.543 187.658 c 330.766 188.822 + 335.59 190.259 336.266 190.857 c 338.043 192.423 343.074 194.4 345.281 +194.4 c 348.098 194.4 349.141 191.521 347.762 187.556 c 347.156 185.822 +346.656 183.595 346.648 182.615 c 346.645 181.63 345.406 178.209 343.898 + 175.013 c 342.395 171.814 340.02 166.138 338.625 162.4 c 335.863 155.013 + 335.777 154.802 330.336 142.306 c 328.301 137.63 326.637 133.369 326.637 + 132.83 c 326.637 132.287 325.879 130.783 324.953 129.482 c 324.027 128.181 + 323.156 125.904 323.02 124.42 c 322.684 120.806 320.605 116.587 317.547 + 113.322 c 314.004 109.541 304.711 104.744 299.438 103.978 c 297.016 103.627 + 292.121 102.255 288.555 100.931 c 283.73 99.138 280.059 98.392 274.199 +98.013 c 269.871 97.732 266.086 97.353 265.789 97.17 c 265.496 96.99 262.496 + 96.787 259.129 96.72 c 255.762 96.654 252.813 96.287 252.574 95.9 c 252.336 + 95.517 250.625 95.201 248.766 95.201 c 246.91 95.201 239.652 94.478 232.637 + 93.599 c 225.621 92.72 219.512 92.064 219.059 92.146 c 218.605 92.224 210.676 + 92.545 201.438 92.857 c h +231.438 106.349 m 251.926 107.943 279.266 111.072 280.637 111.982 c 281.078 + 112.275 285.219 113.334 289.836 114.334 c 294.457 115.337 300.398 117.107 + 303.039 118.267 c 309.469 121.091 316.238 125.56 316.238 126.974 c 316.238 + 129.021 323.535 149.962 324.703 151.263 c 325.328 151.959 325.836 152.787 + 325.836 153.107 c 325.836 153.427 326.535 155.224 327.391 157.099 c 328.879 + 160.365 329.684 162.412 332.625 170.4 c 333.352 172.38 334.285 174.341 +334.691 174.759 c 335.102 175.177 335.438 176.002 335.438 176.587 c 335.438 + 177.392 335.059 177.455 333.914 176.841 c 333.074 176.392 328.98 175.513 + 324.816 174.888 c 320.652 174.263 316.137 173.177 314.781 172.474 c 313.426 + 171.775 311.793 171.201 311.156 171.201 c 310.52 171.201 308.07 170.302 + 305.715 169.209 c 303.363 168.111 300.406 167.212 299.145 167.209 c 297.883 + 167.205 295.184 166.666 293.145 166.009 c 291.105 165.357 288.16 164.634 + 286.602 164.404 c 285.043 164.177 281.883 162.775 279.582 161.295 c 277.281 + 159.81 273.695 158.166 271.617 157.642 c 269.539 157.115 266.219 155.951 + 264.238 155.052 c 259.074 152.705 255.746 152.252 224.238 149.599 c 218.738 + 149.134 212.078 148.416 209.438 147.998 c 206.797 147.58 190.652 147.076 + 173.559 146.873 c 156.465 146.673 142.313 146.341 142.105 146.134 c 141.898 + 145.931 142.332 145.275 143.066 144.681 c 149 139.88 158.152 129.38 161.668 + 123.345 c 163.895 119.525 167.078 114.162 168.746 111.431 c 171.777 106.459 + l 178.207 106.193 l 190.777 105.67 223.957 105.771 231.438 106.349 c h +199.039 159.99 m 225.5 161.498 237.363 162.291 239.836 162.716 c 259.332 + 166.052 273.723 170.619 273.805 173.49 c 273.824 174.091 273.137 175.892 + 272.277 177.49 c 271.422 179.091 269.828 183.763 268.738 187.873 c 267.648 + 191.986 266.563 195.541 266.324 195.779 c 266.086 196.017 262.551 195.47 + 258.465 194.564 c 254.379 193.662 249.059 192.693 246.637 192.416 c 244.219 + 192.138 240.391 191.377 238.137 190.728 c 235.879 190.076 231.02 189.232 + 227.336 188.849 c 223.652 188.47 219.195 187.791 217.438 187.345 c 215.676 + 186.9 211.176 186.095 207.438 185.556 c 200.266 184.529 188.41 180.322 +182.637 176.759 c 181.977 176.349 180.176 175.302 178.637 174.427 c 172.852 + 171.138 172.77 171.002 174.18 166.841 c 174.871 164.81 175.438 162.642 +175.438 162.029 c 175.438 159.759 177.961 158.236 180.965 158.689 c 182.547 + 158.927 190.676 159.513 199.039 159.99 c h +93.148 184.783 m 95.945 186.091 100.938 187.861 104.238 188.712 c 107.539 + 189.564 111.25 190.65 112.488 191.13 c 115.613 192.337 119.266 192.232 +129.219 190.658 c 133.938 189.908 138.031 189.525 138.313 189.81 c 138.594 + 190.091 138.199 193.49 137.434 197.361 c 136.469 202.236 135.922 209.966 + 135.648 222.502 c 135.43 232.459 134.953 241.091 134.586 241.685 c 134.09 + 242.49 132.969 241.701 130.172 238.58 c 128.109 236.283 125.988 234.4 125.453 + 234.4 c 124.102 234.4 121.582 231.462 122.148 230.545 c 122.59 229.83 113.383 + 216.666 110.016 213.201 c 109.164 212.322 106.258 208.541 103.563 204.798 + c 100.867 201.06 97.035 195.81 95.051 193.134 c 93.063 190.459 91.438 187.959 + 91.438 187.58 c 91.438 187.201 90.469 185.877 89.289 184.642 c 88.105 183.408 + 87.344 182.4 87.598 182.4 c 87.852 182.4 90.348 183.47 93.148 184.783 c + h +173.438 184.802 m 175.906 186.912 183.551 190.666 192.688 194.259 c 199.133 + 196.791 218.152 200.064 235.438 201.615 c 244.488 202.427 248.777 203.193 + 252.238 204.615 c 252.898 204.884 255.391 205.49 257.773 205.955 c 260.16 + 206.42 262.223 207.162 262.363 207.599 c 262.504 208.041 261.336 209.228 + 259.773 210.24 c 258.215 211.252 256.203 213.322 255.309 214.841 c 254.043 + 216.982 253.156 217.599 251.348 217.599 c 249.277 217.599 248.785 218.119 + 246.969 222.201 c 243.961 228.966 241.555 233.841 240.555 235.201 c 236.453 + 240.767 228.238 261.142 228.238 265.74 c 228.238 266.982 227.938 268.002 + 227.57 268.002 c 226.816 268.002 225.582 271.435 223.402 279.599 c 222.578 + 282.681 221.148 287.9 220.227 291.201 c 219.141 295.072 218.488 299.939 + 218.391 304.916 c 218.219 313.63 218.711 313.365 211.629 308.568 c 207.656 + 305.877 203.945 304.587 195.656 303.021 c 191.742 302.283 189.359 302.302 + 184.527 303.115 c 181.145 303.681 177.809 304.455 177.109 304.83 c 175.969 + 305.443 170.664 306.65 168.652 306.759 c 167.574 306.814 166.016 292.837 + 165.801 281.201 c 165.707 275.92 165.586 257.74 165.531 240.798 c 165.434 + 208.748 165.438 208.709 169.473 184.978 c 169.938 182.24 170.41 182.22 +173.438 184.802 c h +294.313 210.791 m 297.688 211.486 301.031 212.357 301.742 212.724 c 302.457 + 213.091 304.477 213.634 306.238 213.935 c 309.301 214.462 315.996 217.201 + 320.238 219.666 c 321.336 220.306 324.938 222.119 328.238 223.693 c 331.539 + 225.267 335.137 227.013 336.238 227.568 c 337.336 228.127 339.211 228.814 + 340.402 229.099 c 343.863 229.92 348.305 232.845 347.664 233.877 c 347.352 + 234.384 345.699 236.9 343.992 239.47 c 339.5 246.236 336.105 252.959 332.828 + 261.599 c 328.047 274.185 326.563 283.654 324.605 314.002 c 324.004 323.337 + 323.43 327.201 322.641 327.201 c 322.258 327.201 321.719 326.49 321.445 + 325.623 c 320.816 323.646 317.574 321.314 311.191 318.248 c 308.469 316.939 + 304.434 314.998 302.227 313.935 c 300.02 312.869 297.809 312.002 297.316 + 312.002 c 296.824 312.002 295.391 311.462 294.129 310.806 c 290.848 309.095 + 284.77 309.318 275.594 311.486 c 267.605 313.373 l 266.66 305.845 l 265.832 + 299.267 265.535 275.201 266.184 267.201 c 266.309 265.662 266.145 262.24 + 265.824 259.599 c 265.215 254.623 267.41 231.896 269.031 226.4 c 269.484 + 224.861 270.219 221.259 270.66 218.4 c 271.102 215.541 271.652 212.275 +271.883 211.142 c 272.301 209.084 l 280.234 209.302 l 284.602 209.423 290.934 + 210.091 294.313 210.791 c h +283.484 351.572 m 287.531 352.654 291.457 354.095 292.203 354.771 c 292.953 + 355.447 293.965 356.002 294.457 356.002 c 294.953 356.002 296.348 356.92 + 297.559 358.041 c 299.762 360.084 l 297.426 359.197 l 296.141 358.709 294.66 + 357.951 294.137 357.517 c 293.586 357.06 289.02 356.826 283.309 356.962 + c 277.211 357.111 273.348 356.896 273.199 356.4 c 272.672 354.615 274.039 + 349.599 275.051 349.599 c 275.641 349.599 279.434 350.486 283.484 351.572 + c h +347.746 137.416 m 347.512 138.177 346.965 139.459 346.531 140.263 c 346.008 + 141.24 346.023 142.06 346.586 142.736 c 347.047 143.291 347.23 143.939 +346.996 144.173 c 346.762 144.412 347.141 144.822 347.844 145.091 c 348.582 + 145.377 348.914 145.248 348.633 144.791 c 347.723 143.318 350.27 143.99 + 351.633 145.58 c 352.375 146.447 353.984 147.396 355.211 147.689 c 356.434 + 147.986 358.488 148.755 359.777 149.404 c 361.063 150.052 364.48 150.892 + 367.375 151.271 c 370.27 151.65 373.355 152.138 374.238 152.357 c 380.988 + 154.033 382.223 154.255 382.793 153.904 c 383.793 153.287 383.551 151.201 + 382.477 151.201 c 381.73 151.201 381.73 150.986 382.477 150.24 c 383.688 + 149.029 383.711 148.002 382.531 148.002 c 382.031 148.002 380.953 147.224 + 380.133 146.279 c 379.309 145.33 378.637 144.834 378.637 145.17 c 378.637 + 145.509 377.75 145.201 376.664 144.494 c 375.582 143.783 374.195 143.201 + 373.586 143.201 c 372.98 143.201 371.66 142.486 370.656 141.619 c 369.652 + 140.748 367.527 139.822 365.934 139.56 c 364.34 139.298 362.137 138.701 + 361.039 138.236 c 356.789 136.431 355.719 136.177 352.008 136.107 c 349.031 + 136.048 348.078 136.341 347.746 137.416 c h +f +Q Q +showpage +%%Trailer +count op_count sub {pop} repeat +countdictstack dict_count sub {end} repeat +cairo_eps_state restore +%%EOF diff --git a/lilypond-common-includes b/lilypond-common-includes new file mode 160000 index 0000000..92a129f --- /dev/null +++ b/lilypond-common-includes @@ -0,0 +1 @@ +Subproject commit 92a129f3464b0b973621c3f9ba813fa3a0da64c9 diff --git a/lilypond-custom-includes/base_config.ily b/lilypond-custom-includes/base_config.ily new file mode 100644 index 0000000..6f58271 --- /dev/null +++ b/lilypond-custom-includes/base_config.ily @@ -0,0 +1,14 @@ +#(ly:set-option 'relative-includes #t) +#(define include-path-unextended (if (defined? 'include-path-unextended) include-path-unextended #t)) +#(if include-path-unextended + (let* ((custom-include-dir (dirname (current-filename))) + (project-dir (dirname custom-include-dir)) + (pool-dir (string-append project-dir file-name-separator-string "lilypond-song-includes"))) + (ly:parser-append-to-include-path custom-include-dir) + (ly:parser-append-to-include-path pool-dir)) + (set! include-path-unextended #f)) + +customStyleOverridesFile = "custom_style_overrides.ily" + +\include "categories.ily" +\include "../lilypond-common-includes/public_includes/layout_top.ily" \ No newline at end of file diff --git a/lilypond-custom-includes/categories.ily b/lilypond-custom-includes/categories.ily new file mode 100644 index 0000000..84bb5d5 --- /dev/null +++ b/lilypond-custom-includes/categories.ily @@ -0,0 +1,9 @@ +#(define category-names '( + (see "See und\nPiraten") + ;(categoriekey "Titel der Kategorie") + )) + +%% Path to Category images +#(define-public (category-image-path category) + (string-append "../../liederbuecher/beispiel_liederbuch/categories/" + category ".eps")) \ No newline at end of file diff --git a/lilypond-custom-includes/custom_style_overrides.ily b/lilypond-custom-includes/custom_style_overrides.ily new file mode 100644 index 0000000..084fee3 --- /dev/null +++ b/lilypond-custom-includes/custom_style_overrides.ily @@ -0,0 +1,28 @@ +songFormatAndSize = "a5" +songMargin = 5 +songInfoFontSize = 0 +songInfoLineWidthFraction = 0.9 +songTitleSize = 6 +songTitleFont = "Liberation Sans" +songChordFont = "Liberation Sans" +songLyricFont = "Liberation Sans" +songChordFontSeries = #'bold +songTextChordAlignment = #'left +songScoreChordFontSize = 2 +songTextChordFontSize = \songScoreChordFontSize +songTextChordDistance = 2.8 +songTextLineHeigth = 5.8 +songTocColumns = 3 +globalSize = 15 +lyricSize = 1.6 +stanzaFormat = "~a." +romanStanzaFormat = "~@r." +refString = "Ref.:" +refStringWithNumbers = "Ref. ~a:" +% hübsche Wiederholungszeichen für den Liedtext +repStart = "𝄆" +repStop = "𝄇" + +customChordPrintings = { + -\markup { \super "4" } +} diff --git a/lilypond-song-includes b/lilypond-song-includes new file mode 160000 index 0000000..bd0897e --- /dev/null +++ b/lilypond-song-includes @@ -0,0 +1 @@ +Subproject commit bd0897ee5cc6f109e79913d4200b477f4460f8f0 diff --git a/snippets_20240110_DE.xml b/snippets_20240110_DE.xml new file mode 100644 index 0000000..f5fb3ca --- /dev/null +++ b/snippets_20240110_DE.xml @@ -0,0 +1,988 @@ + + + + + +Abstand + +%\vspace(#2) + + + +Abstand Seitenrand/oberstes Notensystem + +HEADER = \bookpart { + \paper { + top-system-spacing.padding = 6 %Abstand zwischen Seitenrand und obersten Notensystem (wenn was anderes da steht wie z.B. Titel/ Text, greift das nicht) gut um z.B. noten auf der zweiten Seite runter zu machen + } + + + +Abstand Titel/Noten + +% nach HEADER = \bookpart { + \paper { + markup-system-spacing.padding = 2 + } + + + +Abstand Titel/oberer Seitenrand + +%titletopspace = 1 % nach titlesize + + + +Auswahl der Groß-/Kleinschreibung des Titels + +-*- python; selection: yes, keep; +text = text.title() + + + + +Auswahl zu Großbuchstaben + +Ctrl+U + +-*- python; selection: yes, keep; +text = text.upper() + + + + +Auswahl zu Kleinbuchstaben + +Ctrl+Shift+U + +-*- python; selection: yes, keep; +text = text.lower() + + + + +Basis-Leadsheet + +-*- template; template-run; +\version "$LILYPOND_VERSION" + +\header { + title = "" +} + +global = { + \time 4/4 + \key c \major + \tempo 4=100 +} + +chordNames = \chordmode { + \global + c1 + +} + +melody = \relative c'' { + \global + c4 d e f + $CURSOR +} + +words = \lyricmode { + + +} + +\score { + << + \new ChordNames \chordNames + \new FretBoards \chordNames + \new Staff { \melody } + \addlyrics { \words } + >> + \layout { } + \midi { } +} + + + + +Blank Music Sheet + +-*- template; indent: no; template-run; +\version "${LILYPOND_VERSION}" + +{ + \repeat unfold 12${CURSOR} + { + s1 + \break + } +} + +\layout { + \context { + \Score + \remove "Bar_number_engraver" + } + \context { + \Staff + \remove "Clef_engraver" + \remove "Time_signature_engraver" + \remove "Bar_engraver" + } +} + +\paper { + indent = 0 + ragged-last-bottom = ##f + top-system-spacing = #'((minimum-distance . 10)) + last-bottom-spacing = #'((minimum-distance . 10)) +} + +\header { + tagline = ##f +} + + + + + +Chor-Hymnus + +-*- template; template-run; +\version "$LILYPOND_VERSION" + +\header { + title = "" +} + +global = { + \time 4/4 + \key c \major + \tempo 4=100 +} + +soprano = \relative c'' { + \global + $CURSORc4 + +} + +alto = \relative c' { + \global + c4 + +} + +tenor = \relative c' { + \global + c4 + +} + +bass = \relative c { + \global + c4 + +} + +verseOne = \lyricmode { + \set stanza = "1." + hi + +} + +verseTwo = \lyricmode { + \set stanza = "2." + ha + +} + +verseThree = \lyricmode { + \set stanza = "3." + ho + +} + +\score { + \new ChoirStaff << + \new Staff \with { + midiInstrument = "choir aahs" + instrumentName = \markup \center-column { S A } + } << + \new Voice = "soprano" { \voiceOne \soprano } + \new Voice = "alto" { \voiceTwo \alto } + >> + \new Lyrics \with { + \override VerticalAxisGroup #'staff-affinity = #CENTER + } \lyricsto "soprano" \verseOne + \new Lyrics \with { + \override VerticalAxisGroup #'staff-affinity = #CENTER + } \lyricsto "soprano" \verseTwo + \new Lyrics \with { + \override VerticalAxisGroup #'staff-affinity = #CENTER + } \lyricsto "soprano" \verseThree + \new Staff \with { + midiInstrument = "choir aahs" + instrumentName = \markup \center-column { T B } + } << + \clef bass + \new Voice = "tenor" { \voiceOne \tenor } + \new Voice = "bass" { \voiceTwo \bass } + >> + >> + \layout { } + \midi { } +} + + + + +Einzelne typografische Anführungszeichen + +Ctrl+' + +-*- menu: text; python; +import lasptyqu +left, right = lasptyqu.preferred().secondary +if text: + text = left + text + right +else: + text = [left, CURSOR, right] + + + + +Entkommentieren + +Ctrl+Alt+C, Ctrl+Alt+U + +-*- python; indent: no; menu: comment; +import re + +def main(): + text = globals()['text'] + # determine state + for s in state[::-1]: + if s in ('lilypond', 'html', 'scheme'): + break + else: + s = 'lilypond' + + def html(text): + if text: + text = text.replace('<!-- ', '') + text = text.replace(' -->', '') + text = text.replace('<!--', '') + text = text.replace('-->', '') + return text + + def lilypond(text): + if text.lstrip().startswith('%{'): + if text.lstrip().startswith('%{ '): + text = text.lstrip()[3:] + else: + text = text.lstrip()[2:] + if text.rstrip().endswith('%}'): + text = text.rstrip()[:-2] + else: + if not text: + cursor.select(cursor.BlockUnderCursor) + text = cursor.selection().toPlainText() + text = re.compile(r'^(\s*)%+ ?', re.M).sub(r'\1', text) + return text + + def scheme(text): + return re.compile(r'^(\s*);+', re.M).sub(r'\1', text) + + if s == 'lilypond': + text = lilypond(text) + elif s == 'html': + text = html(text) + elif s == 'scheme': + text = scheme(text) + + if text != cursor.selection().toPlainText(): + cursor.insertText(text) + + + + + +Farbe + +-*- name: col; python; icon: applications-graphics; + +# Insert a color from a dialog + + +import inputdialog +colors = { + (0, 0, 0): "black", + (255, 255, 255): "white", + (255, 0, 0): "red", + (0, 255, 0): "green", + (0, 0, 255): "blue", + (0, 255, 255): "cyan", + (255, 0, 255): "magenta", + (255, 255, 0): "yellow", + (128, 128, 128): "grey", + (128, 0, 0): "darkred", + (0, 128, 0): "darkgreen", + (0, 0, 128): "darkblue", + (0, 128, 128): "darkcyan", + (128, 0, 128): "darkmagenta", + (128, 128, 0): "darkyellow", +} + +color = inputdialog.getColor(view) +if color is not None: + rgb = color.getRgb()[:-1] + + if rgb in colors: + text = '#' + colors[rgb] + else: + rgb = tuple(map(lambda v: format(v / 255.0, ".4"), rgb)) + text = "#(rgb-color {0} {1} {2})".format(*rgb) + + + + +Fretchord bauen + +\group-verses { + \vspace #2 + \nochordverse #"5." + #" " + \fret-chord #"x;o;1;2;1;2;" #"a:dim7" + } + + + +Katergorien + +categories = "fahrt geschunkel ost" + +% abend anti fahrt feier geschunkel herz irisch jahr jiddisch kanon medi morgen nord ost reisser russisch satz see trist volk Wandern + % bis zu drei Kategorien + + + +Keine Tagline + +-*- name: nt; python; menu: properties; +text = 'tagline = ##f' +if state[-1] != 'header': + text = '\\header {\n%s\n}' % text + + + + +Keine Taktzahlen + +-*- name: nb; python; menu: properties; +text = r'\remove "Bar_number_engraver"' +if state[-1] not in ('context', 'with'): + text = '\\context {\n\\Score\n%s\n}' % text + if state[-1] != 'layout': + text = '\\layout {\n%s\n}' % text + + + + +Letzte Note oder Akkord + +Ctrl+; + +-*- python; menu: music; symbol: note_ellipsis; +# This snippet reads back the last entered note or chord and +# inserts it again. It removes the octave mark from a note of the first +# note of a chord if the music is in relative mode. + +import lydocument +import ly.lex.lilypond as lp + +# space needed before cursor? +block = cursor.document().findBlock(cursor.selectionStart()) +beforecursor = block.text()[:cursor.selectionStart()-block.position()] +spaceneeded = bool(beforecursor and beforecursor[-1] not in "\t ") + +chordstart, chordend = None, None +notestart = None +relative = False +found = False + +c = lydocument.cursor(cursor) +runner = lydocument.Runner.at(c, True) + +for t in runner.backward(): + if t == '\\relative': + relative = True + break + elif isinstance(t, (lp.Score, lp.Book, lp.BookPart, lp.Name)): + break + if found: + continue + if chordend is not None: + if isinstance(t, lp.ChordStart): + chordstart = runner.position() + found = True + continue + if isinstance(t, lp.ChordEnd): + chordend = runner.position() + len(t) + elif isinstance(t, lp.Note) and t not in ('R' ,'q', 's', 'r'): + notestart = runner.position() + found = True + +if found: + if chordstart is not None: + text = [] + removeOctave = 1 if relative else 0 + c.start, c.end = chordstart, chordend + for t in lydocument.Source(c): + # remove octave from first pitch in relative + if isinstance(t, lp.Note): + removeOctave -= 1 + elif isinstance(t, lp.Octave) and removeOctave == 0: + continue + text.append(t) + text = ''.join(text) + elif notestart is not None: + text = [] + c.start, c.end = notestart, None + for t in lydocument.Source(c): + if isinstance(t, lp.Note): + text.append(t) + elif not relative and isinstance(t, lp.Octave): + text.append(t) + else: + break + text = ''.join(text) + if spaceneeded: + text = " " + text + + + + +MIDI-Tempo + +-*- name: mt; python; +text = ['tempoWholesPerMinute = #(ly:make-moment ', CURSOR, '100 4)'] +if state[-1] not in ('context', 'with'): + text = ['\\context {\n\\Score\n'] + text + ['\n}'] + if state[-1] != 'midi': + text = ['\\midi {\n'] + text + ['\n}'] + + + + +Moderne Taktart + +-*- name: 22; +\numericTimeSignature +\time 2/2 + + + +N-Tolen + +Ctrl+3 + +-*- menu: blocks; selection: strip; +\tuplet 3/2 { $SELECTION } + + + +Note in Klammern + +\parenthesize d + + + +Notenzeilen-Größe + +-*- name: ss; python; +if state[-1] == 'music': + text = ( + "\\set Staff.fontSize = #-1\n" + "\\override Staff.StaffSymbol #'staff-space = #(magstep -1)\n") +else: + text = ( + "fontSize = #-1\n" + "\\override StaffSymbol #'staff-space = #(magstep -1)") + if state[-1] == 'new': + text = '\\with {\n%s\n}' % text + elif state[-1] not in ('context', 'with'): + text = '\\context {\n\\Staff\n%s\n}' % text + if state[-1] != 'layout': + text = '\\layout {\n%s\n}' % text + + + + +Nächste Leerzeile + +Alt+Down + +-*- python; indent: no; + +import cursortools + +def main(): + block = cursortools.next_blank(cursor.block()) + if block: + cursor.setPosition(block.position() + block.length() - 1) + return cursor + + + + + +Repeat unfold + +-*- menu: blocks; name: repunf; selection: strip; +\repeat unfold 2$CURSOR { $SELECTION } + + + +Tagline mit Datum und LilyPond-Version + +tagline = \markup { + Engraved at + \simple #(strftime "%Y-%m-%d" (localtime (current-time))) + with \with-url #"http://lilypond.org/" + \line { LilyPond \simple #(lilypond-version) (http://lilypond.org/) } +} + + + + +Taktart (Zahl mit Note) + +-*- name: tac; +\once \override Staff.TimeSignature #'style = #'() +\once \override Staff.TimeSignature #'stencil = #ly:text-interface::print +\once \override Staff.TimeSignature #'text = \markup { + \override #'(baseline-skip . 0.5) + \column { \number $CURSOR1$ANCHOR \tiny \note #"2" #-.6 } +} + + + + +Titelgröße + + titlesize = 8 + + + +Tonart + +\key c \major + % major=dur, minor=moll, + % 1# g-dur & e-moll, 2# d-dur und h-moll, 3# a-dur und fis-moll, 4# e-dur und cis-moll, 5# h-dur und gis-moll 6# fis-dur und dis-moll + % 1b f-dur und d-moll,2b b-dur und g-moll, 3b es-dur und c-moll, 4b as-dur und f-moll, 5b des-dur und b-moll, 6b ges-dur und es-moll + + + + +Unterstreichen textstrophe + +\\underline { } + + + +Wiederholung + +Ctrl+Shift+R + +-*- menu: blocks; name: rep; selection: strip; symbol: bar_repeat_start; +\repeat volta 2 { $SELECTION } + + + +Wiederholung textstrophe + +\\repStart \\repStop + + + +Wähle bis zur nächsten Leerzeile aus + +Alt+Shift+Down + +-*- python; indent: no; + +import cursortools + +def main(): + block = cursortools.next_blank(cursor.block()) + if block: + cursor.setPosition(block.position() + block.length() - 1, cursor.KeepAnchor) + return cursor + + + + + +Wähle bis zur vorherigen Leerzeile aus + +Alt+Shift+Up + +-*- python; indent: no; + +import cursortools + +def main(): + block = cursortools.previous_blank(cursor.block()) + if block: + cursor.setPosition(block.position() + block.length() - 1, cursor.KeepAnchor) + return cursor + + + + + +Zeile(n) löschen + +Ctrl+K + +-*- python; + +import cursortools + +def main(): + start = end = cursortools.block(cursor) + while end.position() + end.length() < cursor.selectionEnd(): + end = end.next() + cursor.setPosition(start.position()) + cursor.setPosition(end.position(), cursor.KeepAnchor) + cursor.movePosition(cursor.EndOfBlock, cursor.KeepAnchor) + cursor.movePosition(cursor.NextBlock, cursor.KeepAnchor) + cursor.removeSelectedText() + + + + + +\header-Vorlage + +-*- name: h; menu: blocks; +\header { + title = "$CURSOR" + composer = "" + tagline = \markup { + Engraved at + \simple #(strftime "%Y-%m-%d" (localtime (current-time))) + with \with-url #"http://lilypond.org/" + \line { LilyPond \simple #(lilypond-version) (http://lilypond.org/) } + } +} + + + + + +<shortcuts /> +<body>-*- name: oo; +\once \override </body> +</snippet> + +<snippet id="1voice"> +<title /> +<shortcuts> +<shortcut>Alt+0</shortcut> +</shortcuts> +<body>-*- name: 1v; +\oneVoice</body> +</snippet> + +<snippet id="score"> +<title /> +<shortcuts /> +<body>-*- menu: blocks; +\score { + $SELECTION + \layout {} + \midi {} +} +</body> +</snippet> + +<snippet id="stanza1"> +<title /> +<shortcuts /> +<body>-*- name: s1; +\set stanza = "1." +</body> +</snippet> + +<snippet id="stanza2"> +<title /> +<shortcuts /> +<body>-*- name: s2; +\set stanza = "2." +</body> +</snippet> + +<snippet id="stanza3"> +<title /> +<shortcuts /> +<body>-*- name: s3; +\set stanza = "3." +</body> +</snippet> + +<snippet id="stanza4"> +<title /> +<shortcuts /> +<body>-*- name: s4; +\set stanza = "4." +</body> +</snippet> + +<snippet id="stanza5"> +<title /> +<shortcuts /> +<body>-*- name: s5; +\set stanza = "5." +</body> +</snippet> + +<snippet id="stanza6"> +<title /> +<shortcuts /> +<body>-*- name: s6; +\set stanza = "6." +</body> +</snippet> + +<snippet id="voice4"> +<title /> +<shortcuts> +<shortcut>Alt+4</shortcut> +</shortcuts> +<body>-*- name: v4; +\voiceFour</body> +</snippet> + +<snippet id="voice1"> +<title /> +<shortcuts> +<shortcut>Alt+1</shortcut> +</shortcuts> +<body>-*- name: v1; +\voiceOne</body> +</snippet> + +<snippet id="voice3"> +<title /> +<shortcuts> +<shortcut>Alt+3</shortcut> +</shortcuts> +<body>-*- name: v3; +\voiceThree</body> +</snippet> + +<snippet id="voice2"> +<title /> +<shortcuts> +<shortcut>Alt+2</shortcut> +</shortcuts> +<body>-*- name: v2; +\voiceTwo</body> +</snippet> + +<snippet id="n597649"> +<title>anführungszeichen + +„ “ + + + +apostroph + +’ + + + +bridge noten + +bridge = \relative c'' { + \global + \repeat volta2{ + d2 a2 + \tuplet3/2{g4 a h} fis2 + d'2 a2 + d4 cis h r4^\markup{3x} + } + \bar "|." +} + + + +bridge noten + +bridge = \relative c'' { + \global + \repeat volta2{ + d2 a2 + \tuplet3/2{g4 a h} fis2 + d'2 a2 + d4 cis h r4^\markup{3x} + } + \bar "|." +} + + + + +bridge text + einbau in group-verses + + + \score { + << + \chords { g2 d2 fis2 h2:m g2 d2 fis2 h4:m} + \new Staff { \bridge } + \addlyrics { + \set stanza = "Bridge:" + Jo, ho, ho, ho, ho, ho. Jo, ho ho ho ho. } + >> \layout { \generalLayout } + } + + + +fermate + +\fermata + + + +fett in textstrophe + +\\bold { } + + + +klammern gepunktet + +\once \slurDotted c4 + + + +klammern gepunktet ignorieren: + + \set ignoreMelismata = ##t dei -- ner \unset ignoreMelismata + + + + +klammern um Akkord in textstrophe + +(jetzt,\\\\klamm{d:m}) + + + +klammern um textstrophe + +\\concat{\\char ##x28 Klammer} auf und Klammer \\concat{zu \\char ##x29 }" + + + +kursiv in textstrophe + +\\italic { } + + + +markup unter den Noten + +_\markup {\italic "čaj’ šukarije!"} + + + +markup über den Noten + +^\markup {\italic "čaj’ šukarije!"} + + + +page-count + +% nach HEADER = \bookpart { + \paper { + %page-count = #1 + } + + + +spalten + +\override #'(verse-hspace . 2) % horizontaler Abstand zwischen den Spalten + \override #'(verse-vspace . 2) % vertikaler Abstand zwischen den Zeilen + \override #'(verse-cols . 2) % Anzahl der Spalten + % vspace funktioniert hier nicht mehr! + \group-verses { + \chordverse #"8." + #" " + + \chordverse #"9." + #" " + + \chordverse #"10." + #" " + } + + + +taktwechsel + +\time 4/4 + + + +trennstrich + +– + + + +triolen + +\tuplet 3/2{cis4 d e} + + + +wiederholung mit klammer 1 und 2 + +\repeat volta 2 { + c4 g'8 g4 g8 + g4 d8 d4 d8 + f4 f8 f (g) f } + \alternative { + {g es4~es4 es8} + {g4 d8 d d4} + } + + + +zweite Stimme in die Notenzeile + +{ "noten einzelstimme" << { \voiceOne "noten" + } \new Voice { \voiceTwo \secondVoiceStyle "noten" + }} >> \oneVoice + + +