From: Jan Nieuwenhuizen Date: Wed, 17 Sep 1997 08:26:22 +0000 (+0200) Subject: patch::: 0.1.14.jcn1: Re: mf in redhat spec? X-Git-Tag: release/0.1.15~1 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=64e929d5cdbad03f79efb2b6bbce63eaf8f15d61;p=lilypond.git patch::: 0.1.14.jcn1: Re: mf in redhat spec? pl 14.jcn1 - lily's own music bolletjes (font-en-tja*.mf) - {table,paper}* and taupindefs adaptions (when are we moving?) - fp, sf, sfz dynamics - font.ly - bf: dist mudela-mode --- diff --git a/NEWS b/NEWS index 34ebe729b2..8f004c6166 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,10 @@ +pl 14.jcn1 + - lily's own music bolletjes (font-en-tja*.mf) + - {table,paper}* and taupindefs adaptions (when are we moving?) + - fp, sf, sfz dynamics + - font.ly + - bf: dist mudela-mode + pl 14 - Simple but nifty mudela-mode.el for Emacs - slightly better syntax for single-note-repeat, now default kept in diff --git a/VERSION b/VERSION index b32b21946e..67ef9c7c00 100644 --- a/VERSION +++ b/VERSION @@ -3,4 +3,4 @@ TOPLEVEL_MINOR_VERSION = 1 TOPLEVEL_PATCH_LEVEL = 14 # use to send patches, always empty for released version: -TOPLEVEL_MY_PATCH_LEVEL = +TOPLEVEL_MY_PATCH_LEVEL = .jcn1 diff --git a/bin/conflily b/bin/conflily index f63f8e972f..de2ce672f9 100755 --- a/bin/conflily +++ b/bin/conflily @@ -29,6 +29,7 @@ if [ "x$LILYINCLUDE" = "x" ]; then echo you should make add the following to your login script echo "export LILYINCLUDE=$lelie/current/init" echo "export PATH=$PATH:$lelie/current/bin/out/" + echo "export MFINPUTS=$MFINPUTS:$lelie/current/mf" fi configure --prefix=/usr --enable-debugging --enable-printing --enable-checking diff --git a/init/dynamic.ly b/init/dynamic.ly index 4dcaf783c2..aee95db89e 100644 --- a/init/dynamic.ly +++ b/init/dynamic.ly @@ -11,6 +11,10 @@ f = \absdynamic { 2 } % f is a notename too. ff = \absdynamic { 1 } fff = \absdynamic { 0 } +fp = \absdynamic { 8 } +sf = \absdynamic { 9 } +sfz = \absdynamic { 10 } + cr = \spandynamic { 1 1 } decr = \spandynamic { -1 1 } rc = \spandynamic { 1 2 } % stop a crescendo (worrks for decrescendo too) diff --git a/init/paper16.ly b/init/paper16.ly index 51aff437e8..17225ca0eb 100644 --- a/init/paper16.ly +++ b/init/paper16.ly @@ -16,8 +16,8 @@ paper_sixteen = \paper { rule_thickness = 0.4\pt; bar_size = 16.0 \pt; interline = 4.\pt; - notewidth = 5.0\pt; - wholewidth = 4.8\pt; + notewidth = 5.45\pt; % ugh, see table16 for sizes + wholewidth = 8.0\pt; unitspace = 22.\pt; %geometric = 1.414; basicspace = 4.\pt; diff --git a/init/paper20.ly b/init/paper20.ly index ff27bac5a8..7f21f0aa17 100644 --- a/init/paper20.ly +++ b/init/paper20.ly @@ -7,8 +7,8 @@ paper_twenty = \paper { rule_thickness = 0.4\pt; bar_size = 20.0 \pt; interline = 5.\pt; - notewidth = 6.0\pt; - wholewidth = 7.5\pt; + notewidth = 6.7\pt; % ugh see table20 for sizes + wholewidth = 10.0\pt; unitspace = 22.\pt; % basicspace = 4.\pt; % geometric = 1.414; diff --git a/init/table16.ly b/init/table16.ly index 265098ce17..6abe8df49c 100644 --- a/init/table16.ly +++ b/init/table16.ly @@ -53,6 +53,9 @@ table_sixteen= "p" "\dynp" "pp" "\dynpp" "ppp" "\dynppp" + "fp" "\dynfp" + "sf" "\dynsf" + "sfz" "\dynsfz" } "align" = \table { @@ -72,12 +75,13 @@ table_sixteen= "tenor_change" "\caltoclef" 0.0\pt 11.2\pt 0.0\pt 16.0\pt } + % dimens are ignored? "balls" = \table { "-2" "\longaball" 0.0\pt 6.0\pt -2.0\pt 2.0\pt "-1" "\breveball" 0.0\pt 6.0\pt -2.0\pt 2.0\pt - "0" "\wholeball" 0.0\pt 6.0\pt -2.0\pt 2.0\pt - "1" "\halfball" 0.0\pt 5.0\pt -2.0\pt 2.0\pt - "2" "\quartball" 0.0\pt 5.0\pt -2.0\pt 2.0\pt + "0" "\wholeball" 0.0\pt 8.0\pt 0.0\pt 4.4\pt + "1" "\halfball" 0.0\pt 5.4\pt 0.0\pt 4.4\pt + "2" "\quartball" 0.0\pt 5.5\pt 0.0\pt 4.4\pt } "slur" = \table { diff --git a/init/table20.ly b/init/table20.ly index 57f6c6305e..bc20a550ff 100644 --- a/init/table20.ly +++ b/init/table20.ly @@ -55,6 +55,9 @@ table_twenty = "p" "\dynp" "pp" "\dynpp" "ppp" "\dynppp" + "fp" "\dynfp" + "sf" "\dynsf" + "sfz" "\dynsfz" } "align" = \table { @@ -77,9 +80,9 @@ table_twenty = "balls" = \table { "-1" "\breveball" 0.0\pt 7.5\pt -2.5\pt 2.5\pt - "0" "\wholeball" 0.0\pt 7.5\pt -2.5\pt 2.5\pt - "1" "\halfball" 0.0\pt 6.0\pt -2.5\pt 2.5\pt - "2" "\quartball" 0.0\pt 6.0\pt -2.5\pt 2.5\pt + "0" "\wholeball" 0.0\pt 10.2\pt 0.0\pt 5.4\pt + "1" "\halfball" 0.0\pt 6.8\pt 0.0\pt 5.4\pt + "2" "\quartball" 0.0\pt 6.6\pt 0.0\pt 5.4\pt } "slur" = \table { diff --git a/input/font.ly b/input/font.ly new file mode 100644 index 0000000000..1cc2af59bb --- /dev/null +++ b/input/font.ly @@ -0,0 +1,30 @@ +\header{ +enteredby jcn +copyright PD +TestedFeatures font-en-tja +} + +\version "0.1.6"; + +\score{ + \melodic{ + \octave c'; + \meter 4/4; + c1 g c' a' + c2 g c' a' + c4 g c' a' + a\ppp a\pp a\p a\mp a\mf a\f a\ff a\fff + a\fp a\sf a\sfz + } + \paper{ + \paper_twenty + gourlay_maxmeasures =5.; + \output "lelie20.tex"; + } + \paper{ + gourlay_maxmeasures =5.; + } +% oeps + \midi{ } +} + diff --git a/lily/include/musical-request.hh b/lily/include/musical-request.hh index 4531ff82cf..48e4a80258 100644 --- a/lily/include/musical-request.hh +++ b/lily/include/musical-request.hh @@ -223,7 +223,7 @@ class Dynamic_req : public virtual Musical_req { public: /// for absolute dynamics enum Loudness { - FFF, FF, F, MF, MP, P, PP, PPP + FFF, FF, F, MF, MP, P, PP, PPP, FP, SF, SFZ }; static String loudness_str (Loudness); REQUESTMETHODS(Dynamic_req, dynamic); diff --git a/lily/musical-request.cc b/lily/musical-request.cc index f574813927..c7a4b8fe9b 100644 --- a/lily/musical-request.cc +++ b/lily/musical-request.cc @@ -440,6 +440,10 @@ Dynamic_req::loudness_str (Loudness l) case P: return "p"; case PP: return "pp"; case PPP: return "ppp"; + + case FP: return "fp"; + case SF: return "sf"; + case SFZ: return "sfz"; } assert (false); return ""; diff --git a/make/Toplevel.make.in b/make/Toplevel.make.in index aabc2e14d6..e472fde411 100644 --- a/make/Toplevel.make.in +++ b/make/Toplevel.make.in @@ -36,7 +36,7 @@ SUBDIRS = flower lib lily mf mi2mu \ SCRIPTS = configure configure.in install-sh aclocal.m4 README_FILES = BUGS DEDICATION ANNOUNCE COPYING ONEWS NEWS README TODO \ INSTALL.text AUTHORS.text -EXTRA_DISTFILES = .dstreamrc VERSION $(README_FILES) $(SCRIPTS) $(SYMLINKS) +EXTRA_DISTFILES = .dstreamrc mudela-mode.el VERSION $(README_FILES) $(SCRIPTS) $(SYMLINKS) # do not dist ./Makefile (is copied from make/Toplevel.make) DISTFILES:=$(EXTRA_DISTFILES)# Makefile $(ALL_SOURCES) diff --git a/mf/bolletjes.mf b/mf/bolletjes.mf new file mode 100644 index 0000000000..9980b05be6 --- /dev/null +++ b/mf/bolletjes.mf @@ -0,0 +1,150 @@ +% bolletjes.mf +% part of LilyPond's pretty-but-neat music font +% third try at bolletjes +% most beautiful bolletjes are not circular, and not even symmetric. + +interline#:=staffsize#/(stafflines-1)+stafflinethickness#; + +def ugh_grid = + makegrid(-5pt,-4pt,-3pt,-2pt,-1pt,0pt,1pt,2pt,3pt,4pt,5pt) + (-5pt,-4pt,-3pt,-2pt,-1pt,0pt,1pt,2pt,3pt,4pt,5pt); + makegrid(-4.8pt,-4.6pt,-4.4pt,-4.2pt,-4.0pt, + -3.8pt,-3.6pt,-3.4pt,-3.2pt,-3.0pt, + -2.8pt,-2.6pt,-2.4pt,-2.2pt,-2.0pt, + -1.8pt,-1.6pt,-1.4pt,-1.2pt,-1.0pt, + -0.8pt,-0.6pt,-0.4pt,-0.2pt,-0.0pt, + 0.0pt,0.2pt,0.4pt,0.6pt,0.8pt, + 1.0pt,1.2pt,1.4pt,1.6pt,1.8pt, + 2.0pt,2.2pt,2.4pt,2.6pt,2.8pt, + 3.0pt,3.2pt,3.4pt,3.6pt,3.8pt, + 4.0pt,4.2pt,4.4pt,4.6pt,4.8pt) + (-4.8pt,-4.6pt,-4.4pt,-4.2pt,-4.0pt, + -3.8pt,-3.6pt,-3.4pt,-3.2pt,-3.0pt, + -2.8pt,-2.6pt,-2.4pt,-2.2pt,-2.0pt, + -1.8pt,-1.6pt,-1.4pt,-1.2pt,-1.0pt, + -0.8pt,-0.6pt,-0.4pt,-0.2pt,-0.0pt, + 0.0pt,0.2pt,0.4pt,0.6pt,0.8pt, + 1.0pt,1.2pt,1.4pt,1.6pt,1.8pt, + 2.0pt,2.2pt,2.4pt,2.6pt,2.8pt, + 3.0pt,3.2pt,3.4pt,3.6pt,3.8pt, + 4.0pt,4.2pt,4.4pt,4.6pt,4.8pt); + enddef; + + +% a: x diameter +% b: y diameter +% err_x: drift of y axis at top +% err_y: drift of x axis at right +def distorted_ellipse(expr a,b,err_y,err_x,super) = + superellipse((a,err_x),(-err_y,b),(-a,-err_x),(err_y,-b),super); + enddef; + +% brr. +% def notehead(expr code,il,hdb,adb,adw,xda,s,alpha,cda,ddb,r) = +def notehead(expr code,interline,name) = + save a,b,h,w,ai,bi; + h#=interline; + 2b#=h#*b_h; + a#=b#*a_b; + w#=2a#/a_w; + ai#=a#*ai_a; + bi#=ai#/ai_bi; + define_pixels(a,b); + define_pixels(w,h); + define_pixels(ai,bi); +% save x; +% x1=-x3=a; x2=x4=0; y1=y3=0; y2=-y4=b; +% penlabels(1,2,3,4); +if test>0: + beginchar(code,w#,h#,0); name; + fill distorted_ellipse(a,b,a*err_y_a,0,super); + unfill distorted_ellipse(ai,bi,ai*err_y_ai,0,superi); +if test=1: + pickup pencircle; + draw (0,0)--(a,0) rotated alpha; + draw (0,0)--(-a,0) rotated alphai; +else: + ugh_grid; +fi +else: + beginchar(code,w#,h#,0); name; + path black,white; + black=distorted_ellipse(a,b,a*err_y_a,0,super); + black:=black rotated alpha; +% black:=black shifted (w/2,h/2); + black:=black shifted (w/2,0); + fill black; + white=distorted_ellipse(ai,bi,ai*err_y_ai,bi*err_x_bi,superi); + white:=white rotated alphai; +% white:=white shifted (w/2,h/2); + white:=white shifted (w/2,0); + unfill white; +fi + endchar; + enddef; + +% whole note +% a/b=1.7 +% h/b=1; +% a/w=1; +% x/a=1; +%notehead(incr code,interline#,1,1.7,1,1/20,0.707,0,1/2.2,1/1.3,0.74); +%notehead(incr code,interline#,1,1.7,1,1/20,0.707,0,5/11,3/4,0.74); + +%def notehead(expr code,il,hdb,adb,adw,xda,s,alpha,cda,ddb,r) = + +% whole note +% wanske, p.38 +save a_b,err_y_a,alpha,super; +save ai_a,ai_bi,err_y_ai,err_x_bi,alphai,superi; +save b_h,a_w; +a_b:=1.80; +err_y_a:=0; % no slant +alpha:=0; +super:=0.707; +ai_a:=0.508; +ai_bi:=1.23; +% err_y_ai:=0.0938; +% err_x_bi:=0; +err_y_ai:=0; +err_x_bi:=0.115; +alphai:=135; +superi:=0.68; +b_h:=1; %no rotate-> no height correction +a_w:=1; % no rotate-> no width correction +notehead(incr code,interline#,"Whole notehead"); + +% half note +% wanske, p.39 +a_b:=1.49; +err_y_a:=0.157; +alpha:=34; +super:=0.66; +ai_a:=0.863; +ai_bi:=3.41; +err_y_ai:=0; +err_x_bi:=-0.12; +alphai:=alpha; +superi:=0.80; +b_h:=0.935; +a_w:=1.12; +notehead(incr code,interline#,"Half notehead"); + +% quarter note +% wanske p.38 +a_b:=1.57; +err_y_a:=0.044; +alpha:=32; +super:=0.707; +ai_a:=0; +ai_bi:=1; +err_y_ai:=0; +err_x_bi:=0; +alphai:=0; +superi:=0.707; +b_h:=0.85; +a_w:=1.09; +notehead(incr code,interline#,"Quarter notehead"); + +end. + diff --git a/mf/font-en-tja16.mf b/mf/font-en-tja16.mf new file mode 100644 index 0000000000..92752fdf00 --- /dev/null +++ b/mf/font-en-tja16.mf @@ -0,0 +1,16 @@ +% font-en-tja16.mf +% part of LilyPond's pretty-but-neat music font + +mode_setup; + +test:=0; + +staffsize#:=16pt#; +stafflines:=5; +stafflinethickness#:=0.4pt#; +code:=-1; + +input bolletjes; + +end. + diff --git a/mf/font-en-tja20.mf b/mf/font-en-tja20.mf new file mode 100644 index 0000000000..526573948a --- /dev/null +++ b/mf/font-en-tja20.mf @@ -0,0 +1,17 @@ +% font-en-tja20.mf +% part of LilyPond's pretty-but-neat music font + +mode_setup; + +test:=0; + +staffsize#:=20pt#; +% staffsize#:=16pt#; +stafflines:=5; +stafflinethickness#:=0.4pt#; +code:=-1; + +input bolletjes; + +end. + diff --git a/tex/lilyponddefs.tex b/tex/lilyponddefs.tex index feff7b983e..f7b9191e5f 100644 --- a/tex/lilyponddefs.tex +++ b/tex/lilyponddefs.tex @@ -62,7 +62,7 @@ % set fonts and primary dimensions \def\musixtwentydefs{ \balkheight=20pt - \notewidth=6pt + \notewidth=6.7pt \noteheight=5pt \staffrulethickness=0.4pt \musixtwentyfonts @@ -73,7 +73,7 @@ \def\musixsixteendefs{ \balkheight=16pt \staffrulethickness=0.4pt - \notewidth=5pt + \notewidth=5.45pt \noteheight=4pt \musixsixteenfonts \font\textmusic=cmmi10 diff --git a/tex/taupindefs.tex b/tex/taupindefs.tex index 037b7a943d..0469356a63 100644 --- a/tex/taupindefs.tex +++ b/tex/taupindefs.tex @@ -14,6 +14,7 @@ \font\italicfont=cmti10 \font\dynfont=dyn10 scaled \magstep2 \font\musicmathfont=cmsy10 + \font\fontentja=font-en-tja20 } @@ -32,13 +33,21 @@ \font\dynfont=dyn10 scaled \magstep1 \font\musicdraw=musixsps \font\musicmathfont=cmsy8 + \font\fontentja=font-en-tja16 } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % provide interface to musixtex fonts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\musicdef\quartball{'007} -\musicdef\halfball{'010} -\musicdef\wholeball{'011} +% \def\fetdef#1#2{\def#1{\fetchar{#2}}} +% ugh, linewidth, ugh, tablexx.ly balldims not used! +\def\fetdef#1#2{\def#1{\lower.5\staffrulethickness\hbox{\fetchar{#2}}}} +\def\fetchar#1{\fontentja\char#1} +% \musicdef\quartball{'007} +% \musicdef\halfball{'010} +% \musicdef\wholeball{'011} +\fetdef\quartball{'002} +\fetdef\halfball{'001} +\fetdef\wholeball{'000} \musicdef\breveball{'040} \musicdef\longaball{'047} \musicdef\halfrest{'074}