LilyPond ver2.18.2 on Windows10

日本語(utf-8)での解説文書です(shft-jisではありません!).
LilyPond ver2.18.2 + W32TeX[based on TeX Live 2017 and Kpathsearch 6.2.3] + GhostScript(ver 9.25)を用いて作成しています(Editing in progress).
This book was produced with the ptex format,version 3.141592653 p1.0b.
3:07:55.89 2018/12/01 Yukio Yoshida


Next: , Previous: (dir), Up: (dirTop)


Next: , Previous: Top, Up: Top



Preface(Lilypond)
It must have been during a rehearsal of the EJE (Eindhoven Youth Orchestra), somewherein 1995 that Jan, one of the cranked violists told Han-Wen, one of the distorted French horn players, about the grand new project he was working on. It was an automated system for printing music (to be precise, it was MPP, a preprocessor for MusiXTeX. As it happened, Han-Wen accidentally wanted to print out some parts from a score, so he started looking at thesoftware, and he quickly got hooked. It was decided that MPP was a dead end. After lots of philosophizing and heated email exchanges, Han-Wen started LilyPond in 1996. This time, Jan got sucked into Han-Wen's new project.

In some ways, developing a computer program is like learning to play an instrument. In the beginning, discovering how it works is fun, and the things you cannot do are challenging. After the initial excitement, you have to practice and practice. Scales and studies can be dull, and if you are not motivated by others.teachers, conductors or audience. it is very tempting togive up. You continue, and gradually playing becomes a part of your life. Some days it comes naturally, and it is wonderful, and on some days it just does not work, but you keep playing, day after day.

Like making music, working on LilyPond can be dull work, and on some days it feels like plodding through a morass of bugs. Nevertheless, it has become a part of our life, and we keep doing it. Probably the most important motivation is that our program actually does something useful for people. When we browse around the net we find many people who use LilyPond, and produce impressive pieces of sheet music. Seeing that feels unreal, but in a very pleasant way.

Our users not only give us good vibes by using our program, many of them also help us by giving suggestions and sending bug reports, so we would like to thank all users that sent us bug reports, gave suggestions or contributed in any other way to LilyPond.

Playing and printing music is more than a nice analogy. Programming together is a lot of fun, and helping people is deeply satisfying, but ultimately, working on LilyPond is a way to express our deep love for music. May it help you create lots of beautiful music!
Han-Wen and Jan
Utrecht/Eindhoven, The Netherlands, July 2002.

Excerpt from LilyPond[ver1.6-lilypond.pdf-]


The command-line utility "LilyPond" is a tool for Music-sheet users.
LilyPond language 譜面原稿記述において
Lilypond のデフォルトは nederlands.ly(In Dutch=オランダ語表記)を読み込みで, 与え られたその原稿処理を行います.
音楽における Note Names , sharp , flat 等々の stringsには国(文化)間で差異がありますので的便に置き換えてください.
Lilypondが提供しているそれらは,
\include "english.ly" , \include "deutsch.ly" , \include "norsk.ly" , \include "svenska.ly" ,
\include "italiano.ly" , \include "catalan.ly" , \include "espanol.ly"
等々です.
これらは,譜面原稿ファイル一番最初に宣言項目(最初の行に記述)です.
\version "2.18.0"
\include italiano.ly

と記述(宣言)します.



このWeb解説文書(htmlテキスト)に書かれている内容の総ての情報は,
  See==>  http://lilypond.org/manuals.html  を参照ですが
[Other material]項目の[All](すべて)を選択し``Doc tarball for 2.18.2 (lilypond-2.18.2-1.documentation.tar.bz2)''
これをdownloadし展開するとご自分のパソコン内でLilyPondのすべての解説が閲覧できます.
notation.pdf, uasge.pdf, 等々も含んでいます(和語訳は皆無).

\ "エスケープ"は日本語キーボードではキーボードの or \で打ち込むことを意味しています.
LilyPondのversionは  2.18. ここまでがmajor番号で, それ以後の2-1等々はminer番号で,
miner番号は進行しても major番号が同じならrunningします.



原稿をコーデングしている時は,
日本語特有の全角空白, 全角文字は使用禁止(lyrics-歌詞-を除く)です.
LilyPondはその時点で処理を中止します. lyricTextはutf-8 codeで記述(組版には各国のフォントが必要)です.
原稿記述にはshift-jis(code)は絶対に使わない .
デフォルト組版は 四分音符・4/4拍子・ト音記号・ハ長調で組版出力されます.
midiは指定楽器がなければ, "acoustic grand"(ピアノ)で作成されます.
Windows版LilyPondは,歌詞(和語=msmincho,msgothic)にそのまま対応しています.




LilyPondプログラム設計の基幹設計理念は Han-Wen Nienhuys, Jan Nieuwenhuizenのお二人が
``Proceedings of the XIV Colloquium on Musical Informatics(XIV CIM 2003)''で 行った講演で明らかにされています(Firenze, Italy, May 8~10. 2003)
See==>  LILYPOND, A SYSTEM FOR AUTOMATED MUSIC ENGRAVING ( download!! pdf)
              [But; Commands in this are old's version(1.6), and Now days is version(2.18)]





Next: , Previous: Concept Index, Up: Top

LilyPond ver2.18.2 on windows10




context Voice

音符 音階(音の高さ)基本コード; c d e f g a b 音階(音の高さ明示記号)
1オクターブ下は c, 2オクターブ下は c,, ......
1オクターブ上は c' 2オクターブ上は c” ......
sheet-1.svg
\relative c'{c d e f g a b}等と括れば c' d' e' f' g' a' b'と同じ値.
\relative c,{c d e f g a b}等と括れば c, d, e, f, g, a, b,と同じ値.
\relative c''{c d e \relative c'{c d e}} nesting OK.
But! \relateve での記述は, 原稿編集中に自分が今どの階域にいるか不明になります.
NHK(ラジオ)の時報(告知)音=a'(440hz) a' a”(880HZ)= ピッ・ピッ・ポンー(長さは四分音・四分音符・二分音符?)



音符 音価(音の長さ)基本コード;
音階明記の c d e f g a b へ数値 1 2 4 8 16 32 64 128 ...の添え字で明記する.
音符記号として c4 , a'1 , g,2 等々の記述.
1 (Whole)⇒ 2 (Half)⇒ 4 (Quarter)⇒ 8 (Eigth)⇒ 16 (Sixteenth)
1=全音で, 全音を均等に割った数値, 以下図式 (休符も音符です).
sheet-1a.svg
これは, 演奏の楽譜化表現の初期時代のころ全音(音価)を基幹として成立が確立しそれに基づくものです.
今日ではその意味を逆算され, 楽譜の基幹意味は楽譜の音長さの一番短音から上記図階層上へと成立が一般的傾向です.
Lilypondでは音価の付いて無い音符は, その前その前のへと音符音価を検索しその音価を評価します.
例えば, a4 c8 d e f g c4 s1 = a4 c8 d8 e8 f8 g8 c4 s1 と解釈処理します.

Lilypondは音符処理として独自の``  s ''という音価を持った音符を持っています.
例えると, 幽霊音符で組版(楽譜)には現れることのない処理音符です.
音価は有りますので区切りの間の規則を無視して s音符 を使うことは出来ません.
使用例として,
sheet-1ab.svg
記述ソースコードは(\Staff setting...等々は省略).
           s4^\mf^\<
              _\markup {\italic play;free-notes} s2 s2. | s1. | s1. |
           g2^\ff\! c'1 * 2/3^\> s1 * 1/3\!^\markup {\italic\bold "f.o." } |
s 音符は音価を持っています. 上記の例えでは\time 3/2を超えて記述は出来ません,
s 音符は上記例えの如く主たる利用は組版(楽譜)専用パートにて幽霊音符の役目です.
s 音符綴りにて幽霊staffも可能である.

c'1 * 2/3^\> s1 * 1/3\!^\markup {\italic\bold "f.o." } | の部分も歴然と組版(楽譜)専用記述です.
midi-partなら  c1 = c8 c4\p c4\pp c4.\ppp c2\pppp の感じでしょう.
この意味するところは, 同一譜面コードを ``組版楽譜用出力 ・ midi用'' とLilyPondが備えている
\layout{.......} と \midi{.......} を利用する,
組版用をその中で先鋭化させれば譜面コード記述作業は楽になります.
そのmidiは楽譜先鋭化の参照聴感と思った方がgood!です
.
(曲や味覚等々は時代とともに流動しています, 曲に至っては18世紀に奏でていた音楽は聴けません.
江戸時代からの醤油の味覚は暖簾は今日へと受け継がれていても不可能です.)
(---LilyPondは他に, \skip <引数>(=do nothing! // unlike `` s '') もあります.---)

音価についてですが, 更に全音の上にLilypondにはlongaとbreveとい音符が有ります .
sheet-1b.svg
この今日的での意味はlonga[全音(1)×4], breve[全音(1)×2]なのですが(=brevis),
ヨーロッパ中世期では終止音を書くときに使われ(当時)通常演奏では決まった長さを持つことはない音価の研究報告があります.
---参照;日本語訳本[記譜法の歴史(モンテヴェルディからベートーヴェンへ)] 春秋社 2015/07/25---

また音価には従来の伝統的;全音均等分割から,
今日的な思考をもたらした`` 付点音符 ”と言う近世期が編み出した音符が有ります.
この指向(思考)が短音基準から全音へという楽譜としての原稿記述や既存楽譜の読みの変化を演奏家・作曲家に浸透始めています.
sheet-1c.svg
Lilypondでも a4. (付点四分音符), a4.. (複付点四分音符) 等々とペン書きと同じです.


音の長さ(duration)表現として音価には, 音楽界での“ タイ ( tie )” 記号 が有ります.

sheet-1d.svg
g4 + g4g2の音価(響き)を持つのですが, 注意が必要になります.
( LilyPondでは g4 ~ | g4 の記述になります. )
通常;曲は始めの一音に強のアクセントが置かれます,
タイは上図の様な感覚(区切りと区切り間で)で使われますのでアクセントの変化が生じます.
これは, ``Syncopation''(on rhythm)の発生を促します.

音のduration表現としてtupletsが有ります ,[— 3 —]の部分です数学的にはあり得ない!!
sheet-1e-a.svg
Tuplet(s)とは
音のリズミカルなグループ分け(Rhythmic groupings of notes)で
音の韻律分け(Metric groupings of notes)では有りません.
決められた一区切りの内でどうしても追加音が欲しいが, もっと語るなら二音も三音もその区切りの中で使いたい(奏でたい).
多くの作曲家がRhythmic groupings of notesとしてtuplets明記で実現しています(数学的には割り切れません).
Lilypondで記述は, \tuplet <引数> <基音> {codeing.....}で実現できます(基音;省略OK=自動計算されます.)
lilypondは全てにおいて自動計算されていることを忘れないで!!
例えば上記の譜面ですが
(四分音符を三個の八分音符,二分音符を三個の四分音符に分割=音価は四分音符,二分音符),
tenor = {
\autoBeamOff
r8 \tuplet 3/2 4 { fis'8 f' fis' f' fis' f' } fis2
e8[ d c] |
c4 e8 g a \tuplet 3/2 4 { b c' d' e' fis' g' } b'4. |
g2. \tuplet 3/2 4 { <g b>8 <a c'> <b d'> }
\tuplet 3/2 2 { fis4 f fis ~ } | \noBreak
fis4 <d a>2 <e g>4 ~ <b e>2\( | \time 4/1 e\longa\) | \break
}

\score { \context Voice = "tenor" { \clef tenor \key g\major \time 3/2
      \set Staff.instrumentName = "tenor " \tenor }
\layout { }
}






後に続く, おいおいの編集作業ですm(_ _)m


Next: , Previous: context Voice, Up: Top

LilyPond ver2.18.2 on Windows10




Formatting text

Lilypond 原稿記述でのテキスト(組版)出力は\markupが担っていますが.
これは, 絶えずバックグランドでrunningしているpango(1.6)が即座に反応して処理している構図です.
\markup や \Lyrics( 歌詞部分 ) の内では各国の活字(電子)フォントが使えます, 和語活字もOTF仕様で組版出力出来ます.
特にlyrics-partは完全に“ UTF-8 encoding ”なので,
LilyPond原稿記述はutf-8コード記述で作業が最良になります.
また, 組版に使う活字体仕様はOTF(OpenType//TTF-TrueTypeを含む)に限ります .

LilyPondはpsファイル仕様出力を念頭に置くと, 初心者でも簡単なps記述で以下のようなことが可能です.
5小節目の--- lilyPond ---がそうなのですが, この仕組みを明らかにすると
音楽標語・記号へ個人独自のobje合戦が始まり, 楽譜としての統一共有感覚はカオスになるかも?
sheet-my-epsbox.png

問題の5小節目の組版記述です,
此処ではmy-epsbox.psを作成記述—> epsファイルへ変換—> sheet-my-epsbox.lyへ貼り付けの明示です.


¶ my-epsbox.ps から sheet-my-epsbox.eps 作成バッチファイル.

gswin64c -sDEVICE=eps2write -sOutputFile=sheet-my-epsbox.eps -dNOPAUSE my-epsbox.ps -c quit

これは, windows10(64bit)+GhostScript-ver9.25での記述です.
(32bit)ならgswin32cの文言に書き換え,
-sDEVICE=eps2write-sDEVICE=epswriteにGhostScript-versionによっては書き換えが必要です.
いずれも, これらはPC環境 path値に書き込みがある場合です.
(LilyPond 環境内の gs関連(.exe)はwindows OSは認識しません.)

¶ my-epsbox.ps の内容です.
%!PS-Adobe-3.0 EPSF-3.0
/Helvetica-Bold findfont 48 scalefont setfont
20 40 moveto
1 0 0 setrgbcolor
(LilyPond) false charpath
2 setlinewidth stroke
showpage
%Trailer
これを, 前項のバッチファイルでrunningするとsheet-my-epsbox.epsが作成されます.

¶ sheet-my-epsbox.ly の内容です.
%% Yukio Yoshida; 8/7/2017 13:47
%% ly snippet: Coding: utf-8
\version "2.18.0"
\paper{
paper-height = 40.00\mm
paper-width = 160.00\mm
page-top-space = 0.00\mm
top-margin = 0.00\mm
bottom-margin = 0.00\mm
}
%% \header {tagline = \markup { \null } }
#(set-global-staff-size 16)
\score {
        \context Staff = "strings" { \clef treble \time 4/4
         \override Score.BarNumber.break-visibility = ##(#f #f #f)
         c''1\segno_\markup{"\\segno"} c''1\coda_\markup{"\\coda"}
         c''1\varcoda_\markup{"\\varcoda"} s1
         c''1^\markup{\epsfile #X #10 #"sheet-my-epsbox.eps" }
             _\markup{eps; my-box} | \break
         c''1\shortfermata_\markup{"\\shortfermata"} |
         c''1\fermata_\markup{"\\fermata"} |
         c''1\longfermata_\markup{"\\longfermata"} |
         c''1\verylongfermata_\markup{"\\verylongfermata"} | s1 | }
  \layout { indent = 0.00\mm }
}
% end ly snippet:

以上の如くなのですが, psファイルの作成は `文字' 程度なら上記のような感じでどなたでも記述できます.
PostScript マニュアル(和語)参照===> http://tutorial.jp/graph/ps/psman.pdf
小節番号はLilyPond default でstaff 2行目から行頭に組版ですが#t#fにして 全て無視設定です.





LilyPondは \markup  の内でもmusic記述は可能になっています .
例えは, 47小節目が \markup の中で記述です.
sheet-1f.svg
このソース記述です.


%% Yukio Yoshida: 8/10/2017 03:42
%% ly snippet: Coding: utf-8
\version "2.18.0"
\paper{
paper-height = 30.00\mm
paper-width = 160.00\mm
page-top-space = 0.00\mm
top-margin = 0.00\mm
bottom-margin = 0.00\mm }
\header {tagline = \markup { \null }}
#(set-global-staff-size 16)
bass = { \autoBeamOff \bar ""
     c16 d c8 b1 r4 | d16 c b8 c1 r4 | b16 c d1 r4. |
     c1.^\markup { \hspace #-10 \score {{
                 \set Staff.fontSize = #-4
                 \override Staff.StaffSymbol #'staff-space = #(magstep -4)
                 \override Staff.StaffSymbol #'thickness =#(magstep -4)
                 \override NoteHead #'color = #red
                 \override Stem #'color = #red
               \clef treble \key c\major \time 3/2
                   r2^\markup{\hspace #-4 "treble; G clef on 2nd line"}
                   < g'' c'' g' >1_\markup{\hspace #-8 ( \italic "Tutti" S A T
                                           \hspace #1 \bold \italic "mp" ) }}
                   \layout { indent = 0.00\mm line-width = 23.00\mm }}} | \break
         }
\score {
         \new Voice = "basso" { \clef bass \key c\major \time 3/2 \bass }
         \layout { \context { \Score {
             \override Score.BarNumber.break-visibility = ##(#f #t #t)
             \set Score.currentBarNumber=44 }}
                    }
       }
%% end ly snippet:

この譜面のmidi-outの方は, 同一譜面で各パート {r1. | r1. | r1. | r2 (各音符)1 |}
\midi{に記述すれば, 譜面通りの曲になります.
同じ譜面形態でもLilyPondには様々な記述方法が有ります, この例はその一つで著者の方法です,
(先に音符等々譜面を書き綴り.......最後に\score{.....で楽譜の形にする,
\bass の意味は bass=で記述したコードを呼び込め......の行動です
.

またこの記述方法は...バックグランドrunningしている\bookを明示化して
\book{ \bookpart{....} \bookpart{....}....}記述に入ると優れて利便性が発揮してきます
.






楽譜記述のサンプルです.          (this is mp3)         //      sheet-my-ave.mid


sheet-my-ave-page1.png
sheet-my-ave-page-2.svg
sheet-my-ave-page-3.svg
sheet-my-ave-page-4.svg
この譜面のすべての記述ソースコードです.
¶ #1)sheet-my.ave.ly ファイル.
%%%% make; Yukio Yoshida 8/16/2017 05:16
%%% Don't!! out-side; make-eps
%%% In here is maked it.
\version "2.18.2"
\include "ave-maria-2012.ly"
\book{
\bookpart{ %% #1 Here is Title Ave Maria(2012).
\markup{ \vspace #4 }
%% make sheet-my-epstitle
#(let* ((port (open-output-file "sheet-my-epstitle.eps")))
  (display "%!PS-Adobe-3.0 EPSF-3.0
%%BoundingBox: 10 10 900 230
%%Creator: Y.Yoshida
%%Title: LilyPond Sample
%%CreationData 8/14/2017 12:07
%%EndComments
/Times-Italic findfont 120 scalefont setfont 20 40 moveto 1 0 0 setrgbcolor
(Ave Maria) false charpath 3 setlinewidth stroke" port)

  (close port))
%Trailer
%% end make sheet-my-epstitle --------
\markup{ \hspace #28 \epsfile #X #80 #"sheet-my-epstitle.eps" }
\markup { \vspace #3 }
\markup{ \override #'(line-width . 80)
\hspace #6 \raise #50 {
   \column { \bold \italic
      \column {
\normal-text "   Prayer words"
" "
"Ave Maria, gratia plena,"
"Dominus tecum,"
"    benedicta tu in mulieribus,"
"    et benedictus fructus ventris tui Jesus."
" "
\teeny \normal-text "          (Posterity, additional statements by the Franciscan)"
"Sancta Maria mater Dei,"
"    ora pro nobis peccatoribus, nunc,"
"    et in hora mortis nostrae."
" "
"Amen."
" "
            } }
}
\hspace #10 \epsfile #X #40 #"Raphael_-_Madonna_dell_Granduca.eps" 
}
\markup { \hspace #76 \teeny \normal-text "[Grand St.Mary's]"}
\markup { \hspace #70 \teeny \normal-text "Painter; Raffaello Sanzio(1483--1520)"}
\markup { \vspace #4 }
\markup{
\epsfile #X #20 #"Raphael_-_Madonna_dell_Granduca.eps"
\hspace #-20 \epsfile #Y #10 #"Raphael_-_Madonna_dell_Granduca.eps"
      }
}%%End \bookpart { #1
%%% insert; ave-maria \score { 2012
\pageBreak
\bookpart{ %%#2 notes-body is `\include ave-maria-2012.ly'
\header{
 title = #(string-append "LilyPond version " (lilypond-version))
 subtitle = \markup{ { \bold \italic "d major; cis d e fis g a b" } }
 subsubtitle = \markup{\center-column {
                   "soprano; C clef on 1st line,       alto; C clef on 3rd line."
                   "       bass; F clef on 4th line,    tenor; C clef on 4th line."}}
 composer = \markup{ \line {\italic "Yukio Yoshida"}}
}
%% get sheet music ---------------------------------------------------------------
\score {
         <<
           \context ChoirStaff = "FourPartStaffaddchorus" <<
           \new Voice = "soprano" { \clef soprano \key d\major \time 3/2
                        \set Staff.instrumentName = "soprano" \soprano }
                        \new Lyrics = "mainSL" \lyricsto "soprano" { \sopranoL }

           \new Voice = "alto" { \clef alto \key d\major \time 3/2
                        \set Staff.instrumentName = "alto   " \alto }
                        \new Lyrics = "mainAL" \lyricsto "alto" { \altoL }

           \new Voice = "tenor" { \clef tenor \key d\major \time 3/2
                        \set Staff.instrumentName = "tenor  " \tenor }
                        \new Lyrics = "mainTL" \lyricsto "tenor" { \tenorL }

           \new Voice = "bass" { \clef bass \key d\major \time 3/2
                        \set Staff.instrumentName = "bass   " \bass }
                        \new Lyrics = "mainBL" \lyricsto "bass" { \bassL }
                                           >>
         >>
  \layout {
            \context { \RemoveEmptyStaffContext
                       \override VerticalAxisGroup #'remove-first = ##t }
           }
}

%% get midi music ----------------------------------------------------------------
\score {
         <<
           \new Staff { \clef soprano \key d\major \time 3/2 \tempo 4 = 58
                         \set Staff.midiInstrument = "pad 2 (warm)"
                                         \unfoldRepeats       \sopranoM }

           \new Staff { \clef alto \key d\major \time 3/2 \tempo 4 = 58
                         \set Staff.midiInstrument = "pad 2 (warm)"
                                         \unfoldRepeats          \altoM }

           \new Staff { \clef tenor \key d\major \time 3/2 \tempo 4 = 58
                         \set Staff.midiInstrument = "pad 2 (warm)"
                                         \unfoldRepeats       \tenorM }

           \new Staff { \clef bass \key d\major \time 3/2 \tempo 4 = 58
                        \set Staff.midiInstrument = "pad 2 (warm)"
                                         \unfoldRepeats          \bassM }
         >>

   \midi { tempoWholesPerMinute = #(ly:make-moment 58 4) }
}
\paper {
        %%ragged-last-bottom = ##f
}
}%% End \bookpart { #2

}%% close \book {
%% ----- To here, Finish all. -----------------
¶  1)ave-maria-2012.ly ファイル.
%%%% This is a spcial. Yukio Yoshida from; 2012//ave-maria
%%%%%%%%% soprano part %%%%%%%%%%%%%%%%%%%%%
soprano = {
    \autoBeamOff
%% 1-4
   fis'4( e' d') fis'2. ~ | fis'4 r8 g'4_( fis' e') g'4. |
   a'1 r2 | a'2.( g'4) a'2 | \break
%% 5-8
   b'2.. r8 a'2( | g'8 \stemDown fis'8 g' a') \stemNeutral b'1 | R1. | R1. | \break
%% 9-12
   e''1 e''4. r8 | d''2 fis''1 | R1. | R1. | \break
%% 13-16
   R1. * 4 | \break
%% 17-19
   fis'2 e'8 fis' g'2. | fis'4 e'8 fis'4 g' a'4. g'4 ~ | g'4 fis'1 r4 | \break
%% 20-22
   R1. * 3 | \break
%% 23-26
   g'2.. fis'2 ~ fis'8 ~ | fis'4. r8 g'1 | a'1. | R1.^\fermataMarkup | \break
%% 27-30
   cis''1 cis''4. r8 | d''4 e''2. cis''2 ~ | cis''2 r4. d''4. e''4( |
   fis''4.) r8 fis''1 | \break
%% 31-35
   cis'2 d'2. r4 | e'2 fis'2. g'4( | fis' e' d'4.) r4. cis'4 ~ |
   cis'4 cis'2 d'4 e' fis'( | fis'4.) r8 fis'1 | \break
%% 36-40
   fis'1 fis'4. r8 | fis'1  r4 g'4 ~ | g'2 a'1 | r2. b'2. |  b'1. | \break
%% 41-43
    \time 2/1 r1 fis'1^~ | fis'\breve |
         \override DynamicTextSpanner #'style = #'dotted-line
         \set decrescendoText = \markup { \teeny \italic "decresc" }
         \set decrescendoSpanner = #'text
    \time 4/1 e'\longa * 1/4^\>
                  s\longa * 2/4 s\longa * 1/4\! | \time 3/2 \bar "|."
}

sopranoL = \lyricmode {
    \override Score . LyricText #'font-shape = #'italic
    \tiny
A -- ve Ma -- ri -- a, gra -- ti -- a ple -- na,
Do -- minus te -- cum,
be -- ne -- di -- cta tu in mu -- li -- e -- ri -- bus,
%% et benedictus fructus ventris
tu -- i Je -- sus.
San -- cta Ma -- ri -- a ma -- ter Dei,
o -- ra pro no -- bis pec -- ca -- to -- ri -- bus, nunc,
et in hora mor -- tis nos -- trae.
A -- men.
}

sopranoM = {
    \autoBeamOff
%% 1-4
   fis'4( e' d') fis'2. ~ | fis'4 r8 g'4_( fis' e') g'4. |
   a'1 r2 | a'2.( g'4) a'2 | \break
%% 5-8
    b'2.. r8 a'2( | g'8 fis'8 g' a') b'1 | R1. | R1. | \break
%% 9-12
   e''1 e''4. r8 | d''2 fis''1 | R1. | R1. | \break
%% 13-16
   R1. * 4 | \break
%% 17-19
   fis'2 e'8 fis' g'2. | fis'4 e'8 fis'4 g' a'4. g'4 ~ | g'4 fis'1 r4 | \break
%% 20-22
   R1. * 3 | \break
%% 23-26
   g'2.. fis'2 ~ fis'8 ~ | fis'4. r8 g'1 | a'1. | R1.^\fermataMarkup | \break
%% 27-30
   cis''1 cis''4. r8 | d''4 e''2. cis''2 ~ | cis''2 r4. d''4. e''4( |
   fis''4.) r8 fis''1 | \break
%% 31-35
   cis'2 d'2. r4 | e'2 fis'2. g'4 | fis' e' d'4.) r4. cis'4 ~ |
   cis'4 cis'2 d'4 e' fis'( | fis'4.) r8 fis'1 | \break
%% 36-40
   fis'1 fis'4. r8 | fis'1  r4 g'4 ~ | g'2 a'1 | r2. b'2. |  b'1. | \break
%% 41-43
    \time 2/1 r1 fis'1^~ | fis'\breve | \time 4/1 e'\longa | \time 3/2 \bar "|."
}


%%%%%%%%%% alto part %%%%%%%%%%%%%%%%%%%%%%
alto = {
     \autoBeamOff
%% 1-4
   d'4.( b4) fis'2.. | r8 g'4.( e'4) a'2. | b'1 r2 | R1. | \break
%% 5-8
   R1. | R1. | b'4( a'8 g' fis' g') a'4 b'4. r8 | a'2 b'1 | \break
%% 9-12
   R1. * 4 | \break
%% 13-16
   fis'1 fis'4. r8 | g'2 b'1 | R1. | R1. | \break
%% 17-19
   R1. * 3 | \break
%% 20-22
   fis'8 r8 fis'2 e'8 fis' g'2 ~ | g'2 r8 fis'4. g'2 | a'2 fis'2.. r8 | \break
%% 23-26
   e'2.. d'2 r8 | r2 e'1 | fis'1. | R1.^\fermataMarkup | \break
%% 27-30
   r4. fis'2. fis'4. | r4 g'4( a') b'2. | fis'2.. r8 g'2 | a'2 b'1 | \break
%% 31-35
   b1 cis'2 | d'2 e'2. fis'4( | e' d' cis'4.) r4. b4 ~ |
   b4 b4. cis'4 d'4. e'4( | e'4.) r8 e'1 | \break
%% 36-40
   cis'1 cis'4. r8 | cis'1  r4 d'4 ~ | d'2 e'1 | r2. fis'2. |  fis'1. | \break
%% 41-43
    \time 2/1 r1 d'1 ~ | d'\breve |
         \override DynamicTextSpanner #'style = #'dotted-line
         \set decrescendoText = \markup { \teeny \italic "decresc" }
         \set decrescendoSpanner = #'text
    \time 4/1 b\longa * 1/4^\>
                  s\longa * 2/4 s\longa * 1/4\! | \time 3/2 \bar "|."
}

altoL = \lyricmode {
        \override Score . LyricText #'font-shape = #'italic
        \tiny
A -- ve Ma -- ri -- a, gra -- ti -- a ple -- na,
Do -- minus te -- cum,
%%benedicta tu in mulieribus,
et be -- ne -- di -- ctus fru -- ctus ven -- tris tu -- i Je -- sus.
San -- cta Ma -- ri -- a ma -- ter Dei,
o -- ra pro no -- bis pec -- ca -- to -- ri -- bus, nunc,
et in hora mor -- tis nos -- trae.
A -- men.
}

altoM = {
     \autoBeamOff
%% 1-4
   d'4.( b4) fis'2.. | r8 g'4.( e'4) a'2. | b'1 r2 | R1. | \break
%% 5-8
   R1. | R1. | b'4( a'8 g' fis' g') a'4 b'4. r8 | a'2 b'1 | \break
%% 9-12
   R1. * 4 | \break
%% 13-16
   fis'1 fis'4. r8 | g'2 b'1 | R1. | R1. | \break
%% 17-19
   R1. * 3 | \break
%% 20-22
   fis'8 r8 fis'2 e'8 fis' g'2 ~ | g'2 r8 fis'4. g'2 | a'2 fis'2.. r8 |
%% 23-26
   e'2.. d'2 r8 | r2 e'1 | fis'1. | R1. | \break
%% 27-30
   r4. fis'2. fis'4. | r4 g'4( a') b'2. | fis'2.. r8 g'2 | a'2 b'1 | \break
%% 31-35
   b1 cis'2 | d'2 e'2. fis'4( | e' d' cis'4.) r4. b4 ~ |
   b4 b4. cis'4 d'4. e'4( | e'4.) r8 e'1 | \break
%% 36-40
   cis'1 cis'4. r8 | cis'1  r4 d'4 ~ | d'2 e'1 | r2. fis'2. |  fis'1. | \break
%% 41-42
    \time 2/1 r1 d'1 ~ | d'\breve | \time 4/1 b\longa | \time 3/2 \bar "|."
}

%%%%%%%% tenor part %%%%%%%%%%%%%%%%%%%%%%%
tenor = {
     \autoBeamOff
%% 1-4
   b4.( g4) cis'2.. | r8 d'4.( b4) e'2. | fis'1 r2 | R1. | \break
%% 5-8
   R1. | R1. | fis'4( e'8 d' cis' d') e'4 fis'4. r8 | e'2 fis'1 | \break
%% 9-12
   R1. * 4 | \break
%% 13-16
   R1. | R1. | cis'1 cis'4. r8 | b2 d'1 | \break
%% 17-19
   R1. * 3 | \break
%% 20-22
   fis8 r8 fis2 e8 fis g2 ~ | g2 r8 fis4. g2 | a2 fis2.. r8 |
%% 23-26
   g2.. fis2 r8 | r2 g1 | a1. | R1.^\fermataMarkup | \break
%% 27-30
   r4. fis2. fis4. | r4 g4( a) b2. | fis2.. r8 g2 |
   a2 b1 | \break
%% 31-35
   cis'2 cis'2. r4 | r8 d'1 e'4. | fis'4.( fis'1) r8 | cis'4 cis'2 d'4 e' fis'( |
   fis'4.) r8 fis'1 | \break
%% 36-40
   cis'2. cis' | r4 cis'1 r4 | a1. | r2. b2. |  cis'1. | \break
%% 41-43
    \time 2/1 r1 b1 ~ | b\breve |
         \override DynamicTextSpanner #'style = #'dotted-line
         \set decrescendoText = \markup { \teeny \italic "decresc" }
         \set decrescendoSpanner = #'text
    \time 4/1 g\longa * 1/4^\>
                  s\longa * 2/4 s\longa * 1/4\! | \time 3/2 \bar "|."
}

tenorL = \lyricmode {
     \override Score . LyricText #'font-shape = #'italic
     \tiny
A -- ve Ma -- ri -- a, gra -- ti -- a ple -- na,
Do -- minus te -- cum,
%%Benedicta tu in mulieribus,
et be -- ne -- di -- ctus fru -- ctus ven -- tris tu -- i Je -- sus.
San -- cta Ma -- ri -- a ma -- ter Dei,
o -- ra pro no -- bis pec -- ca -- to -- ri -- bus, nunc,
et in hora mortis nos -- trae.
A -- men.
}

tenorM = {
     \autoBeamOff
%% 1-4
   b4.( g4) cis'2.. | r8 d'4.( b4) e'2. | fis'1 r2 | R1. | \break
%% 5-8
   R1. | R1. | fis'4( e'8 d' cis' d') e'4 fis'4. r8 | e'2 fis'1 | \break
%% 9-12
   R1. * 4 | \break
%% 13-16
   R1. | R1. | cis'1 cis'4. r8 | b2 d'1 | \break
%% 17-19
   R1. * 3 | \break
%% 20-22
   fis8 r8 fis2 e8 fis g2 ~ | g2 r8 fis4. g2 | a2 fis2.. r8 | \break
%% 23-26
   g2.. fis2 r8 | r2 g1 | a1. | R1.^\fermataMarkup | \break
%% 27-30
   r4. fis2. fis4. | r4 g4( a) b2. | fis2.. r8 g2 |
   a2 b1 | \break
%% 31-35
   cis'2 cis'2. r4 | r8 d'1 e'4. | fis'4.( fis'1) r8 | cis'4 cis'2 d'4 e' fis'( |
   fis'4.) r8 fis'1 | \break
%% 36-40
   cis'2. cis' | r4 cis'1 r4 | a1. | r2. b2. |  cis'1. | \break
%% 41-43
    \time 2/1 r1 b1 ~ | b\breve | \time 4/1 g\longa | \time 3/2 \bar "|."
}

%%%%%%% bass; part %%%%%%%%%%%%%%%%
bass = {
   \autoBeamOff
%% 1-4
   fis4( e d) fis2. ~ | fis4 r8 g4( fis e) g4. | a1 r2 | a2.( g4) a2 | \break
%% 5-8
    b2.. r8 a2( | g8 fis8 g a) b1 | R1. | R1. | \break
%% 9-12
   R1. | R1. | b,1 b,4. r8 | cis2 e1 | \break
%% 13-16
   R1. * 4 | \break
%% 17-19
   fis2 e8 fis g2. | fis4 e8 fis4 g a4. g4 ~ | g4 fis1 r4 | \break
%% 20-22
   R1. * 3 | \break
%% 23-26
   e2.. d2 ~ d8 ~ | d4. r8 e1 | fis1. | R1.^\fermataMarkup | \break
%% 27-30
   cis1 cis4. r8 | d4 e2. cis2 ~ | cis2 r4. d4. e4( | fis4.) r8 fis1 | \break
%% 31-35
   b1 b2 | r8 b1 b4. | cis'4.( cis'1) r8 | fis4 fis4. g4 a4. b4( |
   b4.) r8 cis'1 | \break
%% 36-40
   fis2. fis | r4 fis1 r4 | d1. | r2. e2. |  fis1. | \break
%% 41-43
    \time 2/1 r1 fis1 ~ | fis\breve |
         \override DynamicTextSpanner #'style = #'dotted-line
         \set decrescendoText = \markup { \teeny \italic "decresc" }
         \set decrescendoSpanner = #'text
    \time 4/1 e\longa * 1/4^\>
                  s\longa * 2/4 s\longa * 1/4\! | \time 3/2 \bar "|."
}

bassL = \lyricmode {
    \override Score . LyricText #'font-shape = #'italic
    \tiny
A -- ve Ma -- ri -- a, gra -- ti -- a ple -- na,
Do -- minus te -- cum,
be -- ne -- di -- cta tu in mu -- li -- e -- ri -- bus,
%%et benedictus fructus ventris
tu -- i Je -- sus.
San -- cta Ma -- ri -- a ma -- ter Dei,
o -- ra pro no -- bis pec -- ca -- to -- ri -- bus, nunc,
et in hora mortis nos -- trae.
A -- men.
}

bassM = {
   \autoBeamOff
%% 1-4
   fis4( e d) fis2. ~ | fis4 r8 g4( fis e) g4. | a1 r2 | a2.( g4) a2 | \break
%% 5-8
    b2.. r8 a2( | g8 fis8 g a) b1 | R1. | R1. | \break
%% 9-12
   R1. | R1. | b,1 b,4. r8 | cis2 e1 | \break
%% 13-16
   R1. * 4 | \break
%% 17-19
   fis2 e8 fis g2. | fis4 e8 fis4 g a4. g4 ~ | g4 fis1 r4 | \break
%% 20-22
   R1. * 3 | \break
%% 23-26
   e2.. d2 ~ d8 ~ | d4. r8 e1 | fis1. | R1.^\fermataMarkup | \break
%% 27
   cis1 cis4. r8 | d4 e2. cis2 ~ | cis2 r4. d4. e4( | fis4.) r8 fis1 | \break
%% 31-35
   b1 b2 | r8 b1 b4. | cis'4.( cis'1) r8 | fis4 fis4. g4 a4. b4( |
   b4.) r8 cis'1 | \break
%% 36-40
   fis2. fis | r4 fis1 r4 | d1. | r2. e2. |  fis1. | \break
%% 41-43
    \time 2/1 r1 fis1 ~ | fis\breve | \time 4/1 e\longa | \time 3/2 \bar "|."
}
%%%%%%%%%%%% End %%%%%%%%%%%%%%%%%%%%% Don't anything!! %%%%%%%%%%%%%%%%%%%
実行はこれら二つのファイル(sheet-my-ave.ly , ave-maria-2012.ly)が在る所で
lilypond --png --pdf sheet-my-ave.ly[Enter]
表示等々はマウスでクリックしてください(自動表示・演奏のバッチファイルは省いています[midも作成されています]).
running際しての問題は"Raphael_-_Madonna_dell_Granduca.eps"の 画像ですが, http://upload.wikimedia.org/wikipedia/commons/6/61/Raphael_-_Madonna_dell_Granduca.jpgから
downloadして===>jpg画像をご自分でeps画像にへ変換すれば良いのですが.

参照midi(mp3)曲; midi音源ソースはSD-20機器を使用(原稿;2012年作成当時のもの).
http://www.sheet-poem.com/poem/html/2012/ave-maria-2012.mp3
現在PCに於けるmid-playerはWindows OS添付のWindows Medis Playerのみです, midの音源
ファイルはMicrosoft商標ファイルです. Windows10でも(別途音源ファイルを使うことも可能です[deviceのインストール必要]).


sheet-my-ave.lyの中で Ave Maria のタイトル文字(ps記述)を処理しています,
前項紹介解説にあるwindows側処理は行っていません!

(See;[sheet-my-ave.ly]; "sheet-my-epstitle.ps"を前もってwindows側でeps処理し その%%Boundingの値を
貼り付けてsheet-my-epstitle.psを記述しています。)



以下の書き込みは, ヴァチカン美術館内再復元工事(受注-費用負担-;日本国内の某社) 後, 一般公開が再開されて
月日が経ってないときの印象(15,6年前)を今になっての書き込みです.
"Raphael_-_Madonna_dell_Granduca.jpg"に見られる絵画ですが,

Raphaelはこの絵画でのキリストを抱いていない同じ立像絵画が存在している はずです.
当時の教皇がその絵画の凄さにヴァチカンの奥倉庫に大事に隠してしまい,
一般には公開されませんでした約500年前.
でも, 教皇はVeneziaのガラス職人へ模造を作らせています. その作品が ヴァチカン美術館の入口正面(?)奥の
壁に展示されています. 一個10cm正方形をパッチワークした約w=2m;H=6mのこの"マドンナ立像"は凄いです.
まさかパッチワーク作りだとは思えない, 現代においても色あせも・その組み 合わせ間の色違いも一切無いです.
当時のVeneziaのガラス職人の技量は今日では皆無でしょうし制作も不可能です.
Veneziaの宝石と公称されている(深紅の)ワイングラスが数世紀経っても色あせていない 現象と同じですね
(どうやって色を出したかも).
不思議に, この"マドンナ立像"は 美術史(美術絵画)のどこにも記載無いです. もちろんweb上にも.
ヴァチカン美術館へ行ったら絶対に見るべきです, 回廊・システナ礼拝堂へと行く前に!!






後に続く, おいおいの編集作業ですm(_ _)m


Next: , Previous: Formatting text, Up: Top

LilyPond ver2.18.2 on Windows10




Important description

Lilypond 原稿記述で最も重要で絶えず念頭に置いておくことは,

\context Voice = ``ID-name'' { music notation ....} と言う記述と. 単に簡単に,
\new Voice { music notation ....} と言う記述の二通りあります.
これは,
\context Staff = ``ID-name'' { music notation ....}
\new Staff { music notation ....} にも当てはまります.

著者の書いている原稿譜面コードをLilyPondがrunning処理が行うとき,
一番根底で処理を行うのが``Voice Groups''の音符処理(schem=***.scm , ***.ly等々参照)で, その収検が.
``Staff Group''へ集合処理となり, 各Staffsの収検が``Score''へ集合と纏められて楽譜へと組版されます.
この処理呼び出しに二つの方式が用意されている点です.

例えば, Voice処理したコンピューター・メモリのスタックスに``ID-name(任意命名)''を付けて置くrunning方法と,
コンピューター・メモリのスタックスに名前を付けずにrunnigへと継続している方法です.

コンピューター処理・メモリのスタックスに``ID-name(任意命名)''を付けて置くrunning方法は,
この ID-name で原稿記述 \score{...}の中でいつでも呼び出せる事です
.


また留意・注意しておくことは
\context Staff{ or, \new Staff{ はVoice groupsをそのまま引き継ぐとあることですが.
これは引き継ぐことであって, 著者のVoice groupsへの変更をも作用する(受け継ぐ)ことではないです
.
Voice groupへの各種 \override は Voice 呼び出しで行う.
Staff groupへの各種 \override は Staff 呼び出しで行う.
Score groupへの各種 \override は Score 呼び出しで行う.
例えをば, 以下の如くにです.
\override Score.BarNumber #'font-size = #2
\override Staff.StaffSymbol #'color = #blue
\override Voice.NoteHead #'color = #blue
LilyPondのdefaultへ戻すのは,
\revert Staff.StaffSymbol #'color
\revert Voice.NoteHead #'color



知っておくことは,
LilyPondがTopレベルでのrunningは始めにbook環境がバックグランドで
runningしていおり(通常は)表に現れませんが, この\bookを明示化して
\book{ \bookpart{....} \bookpart{....}....}
記述方法があることを一義的に思慮に入れておくことは必要です
.
(前項の; Sheet-my-ave.lyの記述は明示化して記述してあります. また,
いきなり, Ghostscript処理記述をLetしていますがfindfontのLocationは
C:\Program Files (x86)\LilyPond\usr\share\ghostscript\8.70\Resource\Init\Fontmap.gs
を参照です. 決してWindows OS側GhostscriptのAPP内ではありません.)






後に続く, おいおいの編集作業ですm(_ _)m


Next: , Previous: Important description, Up: Top

LilyPond ver2.18.2 on Windows10




context Staff

Staff 記述で忘れてならないのは,
そのStaffで発信した情報はそのStaff系でしか受信できない.
定理です.

sheet-st-1.svg
このソース記述ですが,
`45-47小節目' の記述を読み解くとStaffの情報発信と受信の仕組みが理解できると思います.
s音符と幽霊staffでもって, 発信と受信を同一Staffにして実施しています.
%% 45-47
   \time 4/1
   << { s\breve ees'\breve ~ | ees'1 s1 s\breve } \\
      { <c' g'>\breve ~ c'\breve ~ | c'\longa ~ } >> |
   \time 3/2
    << { s1. } \\ { c'1 s2 } >> \bar "|." \break

LilyPond原稿記述に於いては直下型(コマンドの)作用での原稿記述進行よりも
むしろ, 応用型思考(コマンドの)作用での原稿記述を行うと, 美しき楽譜組版と
著者が導かれます.
LilyPondの原稿記述は人それぞれの正解の書き方が多様にあります, 上記の
原稿記述は絶対的ではありません, 著者(私)のそのヶ所での発想の処理記述です.
優れた方は全体を見渡した思考で書き出すでしょうし.






後に続く, おいおいの編集作業ですm(_ _)m


Next: , Previous: context Staff, Up: Top

LilyPond ver2.18.2 on Windows10




Lyric(Japan)

Windows版LilyPondは標準で, 歌詞(和語=msmincho,msgothic)にそのまま対応していますし, 通常は和語歌詞はmsgothic体で出力されます.
変更は、 \override Lyrics . LyricText #'font-name = "msmincho"
歌詞部分はutf-8コードでの記述が求められています.
それ故に, 楽譜記述はutf-8で書き綴った方が何かと便利の気軽さがあります.
LilyPondのmusic Sheetでの日本語対応はutf-8コードです. 他の和語, 例えば和語書体はsazanami(フリー・ライセンス)を使う場合です,
但し, 組版に使う活字体仕様はOTF(OpenType//TTF-TrueTypeを含む)に限ります.
     http://sourceforge.jp/projects/efont/     Lilypondへの組込みは(LilyPondデフォルト・インストールで; Windows 8(64bit)),
( 例:True Type = sazanami font )
     C:\Program Files (x86)\LilyPond\usr\share\lilypond\current\fonts\otf\sazanami-mincho.ttf
     C:\Program Files (x86)\LilyPond\usr\share\lilypond\current\fonts\otf\sazanami-gothic.ttf
へ格納するだけで自動認識します. 又は Windows OSのfonts格納場所(フォルダー)の中に置いても自動認識はします.
フォント名から====>LilyPond 和語指定コマンド書式は

Lyrics(歌詞パート)の中で
   明朝体組なら
  \override Lyrics . LyricText #'font-name = "sazanami mincho"
   ゴシック体組なら
  \override Lyrics . LyricText #'font-name = "sazanami gothic"
を指定してから, 和語本文(歌詞)を綴ります.

\markupの中なら
  \override #'(font-name . "sazanami gothic") "和語文字列"
  \override #'(font-name . "sazanami mincho") "和語文字列"


他の ttf, otf 仕様のフォントなら上記に準じて設定すれば対応するはずです,
私(著者)は和語は使わないので, 試していません.
明治の文明開化で西洋様式化はしましたが...??古来から日本文化様式化は存在していたと思っています.
邦楽の様式化は日本の場合は万人開放ではなく専門家系内の継承でしょうけど.
(歴史家や音楽家でないので...わかりません.)






後に続く, おいおいの編集作業ですm(_ _)m


Next: , Previous: Lyric(Japan), Up: Top

LilyPond ver2.18.2 on Windows10




context Score

始めに述べておきますが, Score {......}環境の中でcontext Voice(音符群類)を直に書かない(著者はです),
たとえ単一(楽器)パート譜面を描くにしてもです. 以下の A), B) 記述で例えを示します.

A); Scoreの中で, 直に context Voice を記述する.

%% Time-stamp: "11/30/2017 6:01"
%% -*- Coding: utf-8 -*-
\version "2.18.0"
#(set-global-staff-size 16)
\paper{
paper-height = 80.00\mm
paper-width = 160.00\mm
page-top-space = 0.00\mm
top-margin = 0.00\mm
bottom-margin = 0.00\mm
}
\header {
    title = \markup { \override #'(font-name . "sazanami gothic") "江戸の子守唄" }
    composer = \markup { \override #'(font-name . "sazanami gothic") "子守唄" }
    poet = \markup { \override #'(font-name . "sazanami gothic") "江戸地方民謡" }
        }

\score {
         \relative c' {\clef treble \key f\major \time 4/4
         \set Staff.midiInstrument = "synthstrings 2"
              a'2 a4 g~ | g8 a c4 a g | r8 e g[ a] c4 a | g2. r4 \bar "|" \break
              c,4. c8 d4 c~ | c8 d e4 a g | r8 c, d4 e c |  d2. r4 \bar "|." }

         \addlyrics { \set stanza = "1."
          \override Lyrics . LyricText #'font-name = "sazanami mincho"
                        し ば の お り ど の し ず - が や に \break
                        お き な と お う な が す ま い け り }

         \addlyrics { \set stanza = "2."
          \override Lyrics . LyricText #'font-name = "sazanami gothic"
                        おき な は や - ま へ し ば - か り に \break
                        お う な は か - わ へ き ぬ す す ぎ }

         \addlyrics { \set fontSize = #-3 \set stanza = "3."
          \override Lyrics . LyricText #'font-name = "sazanami mincho"
                        ぼう や は よ い こ だ ね ん - ね し な \break
                        ぼ う や の お も り は ど こ へ いっ た }

         \addlyrics { \set fontSize = #-3 \set stanza = "4."
          \override Lyrics . LyricText #'font-name = "sazanami gothic"
                        あ の や ま こ え て さ と へ い っ た \break
                        さ と の お み - や に な に も ろ た }

        \layout {}
        \midi {}
        }


•結果の譜面です.
Japan-1.svg

この例えは, Score {......}の中で直に context Voice (音符群)を書き綴っています. 他の解説などを紐解くと
多くはこのような方法で(差異はありますが)記述されています.
多くの方はこういう事柄からより複雑系へとLilyPond提供の解説書の理解へと入っていきます.


context Voice 部分を別途独立して専用に記述を行い,
その楽譜化は score {......}の中へ context Voice 専用での記述部分を読み込んで処理を行うが推薦です.
     B); context Voice をScoreの中へ呼び込む記述.
     %% -*- Coding: utf-8 -*-
     \version "2.18.0"
     #(set-global-staff-size 16)
     \paper{
     paper-height = 80.00\mm
     paper-width = 160.00\mm
     page-top-space = 0.00\mm
     top-margin = 0.00\mm
     bottom-margin = 0.00\mm
     }
     \header {
         title = \markup { \override #'(font-name . "sazanami gothic") "江戸の子守唄" }
         composer = \markup { \override #'(font-name . "sazanami gothic") "子守唄" }
         poet = \markup { \override #'(font-name . "sazanami gothic") "江戸地方民謡" }
             }
     
     japan = \relative c' { a'2 a4 g ~ | g8 a c4 a g | r8 e g[ a] c4 a | g2. r4 | \break
               c,4. c8 d4 c ~ | c8 d e4 a g | r8 c, d4 e c |  d2. r4 \bar "|." }
     
     japanM = \relative c' { a'2 a4 g ~ | g8 a c4 a g | r8 e g[ a] c4 a | g2. r4 | \break
               c,4. c8 d4 c ~ | c8 d e4 a g | r8 c, d4 e c |  d2. r4 \bar "|." }
     
     japanVoiceL = \lyricmode { \set stanza = "1."
               \override Lyrics . LyricText #'font-name = "sazanami mincho"
                             し ば の お り ど の し ず - が や に \break
                             お き な と お う な が す ま い け り }
     japanVoiceLII = \lyricmode { \set stanza = "2."
                             おき な は や - ま へ し ば - か り に \break
                             お う な は か - わ へ き ぬ す す ぎ }
     japanVoiceLIII = \lyricmode { \set fontSize = #-3  \set stanza = "3."
               \override Lyrics . LyricText #'font-name = "sazanami mincho"
                             ぼう や は よ い こ だ ね ん - ね し な \break
                             ぼ う や の お も り は ど こ へ いっ た }
     japanVoiceLIV = \lyricmode { \set fontSize = #-3 \set stanza = "4."
               \override Lyrics . LyricText #'font-name = "sazanami gothic"
                             あ の や ま こ え て さ と へ い っ た \break
                             さ と の お み - や に な に も ろ た }
     
     %%% get sheet %%%%%
     \score {
        <<
       \context Voice = "japanOne" { \clef treble \key f\major \time 4/4 \japan }
       \new Lyrics = "mainL" \lyricsto "japanOne" { \japanVoiceL }
       \new Lyrics = "mainL" \lyricsto "japanOne" { \japanVoiceLII }
       \new Lyrics = "mainL" \lyricsto "japanOne" { \japanVoiceLIII }
       \new Lyrics = "mainL" \lyricsto "japanOne" { \japanVoiceLIV }
        >>
             \layout { }
     }
     %%% get midi %%%%%
     \score {
       \context Staff { \clef treble \key f\major \time 4/4
              \set Staff.midiInstrument = "synthstrings 2" \japanM }
            \midi { }
     }
     %%%% End All


•結果の譜面です.
Japan-1b.svg

譜面はまったく同じです.
context Voice(new Voice)とcontext Staff(new Staff)の理解は容易でしょう.
\context Voice = "japanOne" { \clef treble \key f\major \time 4/4 \japan }

処理スタックスのID-nameの名前付け・呼び込むのも, その部分の記述をcontext Voiceで行うが理解できます.
楽譜組版へはcontext Staffで行ってもVoice記述でのID-nameは引継ぎされません.

また, context Voice記述を組版用とmidi用に同じ記述を行っています. これも, 他意はありません.
譜面記述を簡素にするためです.






後に続く, おいおいの編集作業ですm(_ _)m


Previous: context Score, Up: Top

LilyPond(URL)

At the moment(12/4/ 2017); WEB ページです.

http://lilypond.org/index.html or
( or );    https://web.archive.org/web/20180516024136/http://lilypond.org/
LilyPond-URL2b.png






   .....FootPrints....

TeXが公開され (1983年11月頃), やがて, それをコアにLaTeX, Texinfo, MusixTeX, PSTrics
等々が続々とヨーロッパやアメリカで開発されました. 日本では藤田先生によって
XyMTeXが化学者用に開発提供され世界へ発信されています.

MusixTeX用のプリプロセッサー(MPP)を開発していた, Mr.Jan Nieuwenhuizen が
EJE(Eindhoven Youth Orchestra) の Mr.Han-Wen へリハーサル中に話しかけた
(技術的問題の相談をした(1995)事がきっかけとなり, Mr.Han-Wen によって
LilyPond 開発が誕生しています(1996).

Mr.Jan も開発に加わり, やがて, Mr.Han-Wen and Mr.Jan は幾度となく挫折と希望の谷間
で戦いますが, とうとう, 失意の中で LilyPond 開発の断念寸前までに追いやられます.
その時, Gnuの仲間たちが彼らを勇気づけし技術的困難の解決に参加し始めます. 開発が
立ち上がってから6年後の 2002年 Web URLに LilyPond が Ver1.6.0 としてリリースされ
ました. --- c++ の約 4,000行以上に渡る拡張作業 ---

    May it help you create lots of beautiful music!

この言葉は, Mr.Han-Wen and Mr.Jan が挫折と失意の中でも持ち続けた 信仰なのかもしれません.

この期(始約1995年頃)は, ネットワーク fttp://にLaTeXの様な仕組みでのネットワークを
CERNの物理学者達によってHTMLとして試作され, 最終的にアメリカのキャンバスでHTMLを
見るためのMosaic と呼ばれた Webプラウザ が世に出て爆発的に http:// のインターネット
推移の時期にLilypond は静かに関係者によって進められていた!!.

            全終了.
(ちなみに, このドキュメント文書はTexinfo書式で記述, コンパイルでhtml文書,pdf文書を同時に作成しています.)