+1.3.98.jcn1
+===========
+
+* Some font-size fixes.
+
+* Added dynamics font in all staff-sizes.
+
+* Quick fix for regtest.
+
1.3.98
======
MAJOR_VERSION=1
MINOR_VERSION=3
PATCH_LEVEL=98
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=jcn1
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
# released version.
$(outdir)/my-lily-lexer.o: $(outdir)/parser.hh
$(outdir)/lexer.o: $(outdir)/parser.hh
$(outdir)/lily-version.o: $(outdir)/version.hh
+$(outdir)/lily-guile.o: $(outdir)/version.hh
char const* vs = "\'(" MAJOR_VERSION " " MINOR_VERSION " " PATCH_LEVEL " " MY_PATCH_LEVEL ")" ;
- return gh_eval_str (vs);
+ return gh_eval_str ((char*)vs);
}
static void
/*
- text: string | (markup sentence)
- markup: markup-symbol | (markup-symbol . parameter)
- sentence: text | sentence text
-
-
- Properties:
-
- * Font:
- ---* Type:
- ------* Series: medium, bold
- ------* Shape: upright, italic, slanted
- ------* Family: roman, music, orator, typewriter
-
- ---* Size:
- ------* size: ...,-2,-1,0,1,2,... (style-sheet -> cmrXX, fetaXX)
- ------* points: 11,13,16,20,23,26 (for feta)
- ------* magnification: UNSIGNED
-
- * Typesetting:
- ---* kern: INT (staff-space)
- ---* align: horizontal/vertical / lines / rows
+ TEXT : STRING | (MARKUP SENTENCE)
+ MARKUP: PROPERTY | ABBREV
+ SENTENCE: TEXT | SENTENCE TEXT
+ PROPERTY: (key . value)
+ ABBREV: rows lines roman music bold italic named super sub text, or any font-style
*/
Molecule
Text_item::text2molecule (Score_element *me, SCM text, SCM properties)
--- /dev/null
+% feta-din.mf
+%
+% from cmbxti10.mf
+%
+% feta dynamics
+% too easy now to use this copy from cm, but we might want to do ourselves
+%
+% 16pt staff: \font\dynfont=feta-din10 scaled \magstep1
+% 20pt staff: \font\dynfont=feta-din10 scaled \magstep2
+
+%
+% Computer Modern Bold Extended Text Italic 10 point
+%
+% font_identifier:="CMBXTI"; font_size 10pt#;
+%
+
+input cmbase;
+
+
+%
+% We bluntly multiply by font-size / 10pt#,
+% before we did plain scaling anyway.
+%
+
+M:=design_size/10;
+
+
+u#:=M*21.2/36pt#; % unit width
+width_adj#:=M*11/36pt#; % width adjustment for certain characters
+serif_fit#:=M*0pt#; % extra sidebar near lowercase serifs
+cap_serif_fit#:=M*7/36pt#; % extra sidebar near uppercase serifs
+letter_fit#:=M*11/36pt#; % extra space added to all sidebars
+
+body_height#:=M*270/36pt#; % height of tallest characters
+asc_height#:=M*250/36pt#; % height of lowercase ascenders
+cap_height#:=M*247/36pt#; % height of caps
+fig_height#:=M*232/36pt#; % height of numerals
+x_height#:=M*160/36pt#; % height of lowercase without ascenders
+math_axis#:=M*90/36pt#; % axis of symmetry for math symbols
+bar_height#:=M*85/36pt#; % height of crossbar in lowercase e
+comma_depth#:=M*70/36pt#; % depth of comma below baseline
+desc_depth#:=M*70/36pt#; % depth of lowercase descenders
+
+crisp#:=M*13/36pt#; % diameter of serif corners
+tiny#:=M*13/36pt#; % diameter of rounded corners
+fine#:=M*10/36pt#; % diameter of sharply rounded corners
+thin_join#:=M*10/36pt#; % width of extrafine details
+hair#:=M*20/36pt#; % lowercase hairline breadth
+stem#:=M*38/36pt#; % lowercase stem breadth
+curve#:=M*43/36pt#; % lowercase curve breadth
+ess#:=M*35/36pt#; % breadth in middle of lowercase s
+flare#:=M*42/36pt#; % diameter of bulbs or breadth of terminals
+dot_size#:=M*53/36pt#; % diameter of dots
+cap_hair#:=M*22/36pt#; % uppercase hairline breadth
+cap_stem#:=M*49/36pt#; % uppercase stem breadth
+cap_curve#:=M*52/36pt#; % uppercase curve breadth
+cap_ess#:=M*50/36pt#; % breadth in middle of uppercase s
+rule_thickness#:=M*.6pt#; % thickness of lines in math symbols
+
+dish#:=M*1/36pt#; % amount erased at top or bottom of serifs
+bracket#:=M*10/36pt#; % vertical distance from serif base to tangent
+jut#:=M*27/36pt#; % protrusion of lowercase serifs
+cap_jut#:=M*39/36pt#; % protrusion of uppercase serifs
+beak_jut#:=M*10/36pt#; % horizontal protrusion of beak serifs
+beak#:=M*70/36pt#; % vertical protrusion of beak serifs
+vair#:=M*13/36pt#; % vertical diameter of hairlines
+notch_cut#:=M*10pt#; % maximum breadth above or below notches
+bar#:=M*17/36pt#; % lowercase bar thickness
+slab#:=M*17/36pt#; % serif and arm thickness
+cap_bar#:=M*17/36pt#; % uppercase bar thickness
+cap_band#:=M*17/36pt#; % uppercase thickness above/below lobes
+cap_notch_cut#:=M*10pt#; % max breadth above/below uppercase notches
+serif_drop#:=M*3/36pt#; % vertical drop of sloped serifs
+stem_corr#:=M*2/36pt#; % for small refinements of stem breadth
+vair_corr#:=M*1.5/36pt#; % for small refinements of hairline height
+apex_corr#:=M*0pt#; % extra width at diagonal junctions
+
+o#:=M*6/36pt#; % amount of overshoot for curves
+apex_o#:=M*6/36pt#; % amount of overshoot for diagonal junctions
+
+slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
+fudge:=1; % factor applied to weights of heavy characters
+math_spread:=.5; % extra openness of math symbols
+superness:=8/11; % parameter for superellipses
+superpull:=1/8; % extra openness inside bowls
+beak_darkness:=.4; % fraction of triangle inside beak serifs
+ligs:=2; % level of ligatures to be included
+
+square_dots:=false; % should dots be square?
+hefty:=false; % should we try hard not to be overweight?
+serifs:=true; % should serifs and bulbs be attached?
+monospace:=false; % should all characters have the same width?
+variant_g:=true; % should an italic-style g be used?
+low_asterisk:=false; % should the asterisk be centered at the axis?
+math_fitting:=false; % should math-mode spacing be used?
+
+
+
+
+% "f" obviously has a _lot_ bigger slant than "p" (see Wanske p.239)
+% however; perhaps we need two f symbols:
+% - a super-slanted one used in "f" "mf" "sfz" "sf", and
+% - a more normal-slanted in "ff" "fff" "fp" "fp" (see Wanske p.241)
+%
+% looking at professionally typeset music reveals that typesetters
+% are somewhat unsure about slanting in "mf", "fp", "sfz"
+
+% "f" and "p" (in any combination) are a lot (factor two) fatter than
+% "s", "m", and "z". sometimes the "m" and "z" are a bit fatter than
+% "s".
+
+slant:=.68; % tilt ratio $(\Delta x/\Delta y)$
+crisp#:=M*19/36pt#; % diameter of serif corners
+tiny#:=M*19/36pt#; % diameter of rounded corners
+fine#:=M*20/36pt#; % diameter of sharply rounded corners
+thin_join#:=M*20/36pt#; % width of extrafine details
+stem#:=M*72/36pt#; % lowercase stem breadth
+flare#:=M*52/36pt#; % diameter of bulbs or breadth of terminals
+
+mode_setup;
+font_setup;
+
+num=-1;
+xbar:=M*u;
+
+save fcode;
+
+fcode = 101;
+input feta-ital-f;
+
+bar#:=M*17/36pt#; % lowercase bar thickness
+slant:=.38; % tilt ratio $(\Delta x/\Delta y)$
+stem#:=M*58/36pt#; % lowercase stem breadth
+font_setup;
+xbar:=M*.4u;
+
+save fcode;
+
+fcode = 102;
+
+input feta-ital-f;
+stem#:=M*54/36pt#; % lowercase stem breadth
+hair#:=M*12/36pt#; % lowercase hairline breadth
+vair#:=M*7/36pt#; % vertical diameter of hairlines
+
+font_setup;
+
+input feta-ital-p;
+
+slant:=.28; % tilt ratio $(\Delta x/\Delta y)$
+stem#:=M*32/36pt#; % lowercase stem breadth
+ess#:=M*28/36pt#; % breadth in middle of lowercase s
+hair#:=M*14/36pt#; % lowercase hairline breadth
+vair#:=M*9/36pt#; % vertical diameter of hairlines
+flare#:=M*36/36pt#; % diameter of bulbs or breadth of terminals
+
+crisp#:=M*13/36pt#; % diameter of serif corners
+tiny#:=M*13/36pt#; % diameter of rounded corners
+fine#:=M*10/36pt#; % diameter of sharply rounded corners
+thin_join#:=M*10/36pt#; % width of extrafine details
+curve#:=M*43/36pt#; % lowercase curve breadth
+
+% Chester, Breitkopf suggest smaller sizes of these other chars,
+% using the x-height as reference point.
+x_height#:=M*135/36pt#; % height of lowercase without ascenders
+
+font_setup;
+
+input feta-ital-m;
+input feta-ital-r;
+input feta-ital-s;
+input feta-ital-z;
+
+font_slant slant;
+font_x_height x_height#;
+font_quad 18u#; % to have a working em unit
+
+%%fet_endfont("feta-din");
+
--- /dev/null
+% feta-din.mf
+% part of LilyPond's pretty-but-neat music font
+
+test:=0;
+
+input feta-autometric;
+input feta-macros;
+input feta-params;
+
+fet_beginfont("feta-din", design_size);
+%mode_setup;
+
+input feta-din-code;
+
+fet_endfont("feta-nummer");
+
+end.
-% feta-din10.mf
-% from cmbxti10.mf
-%
-% feta dynamics
-% too easy now to use this copy from cm, but we might want to do ourselves
-%
-% 16pt staff: \font\dynfont=feta-din10 scaled \magstep1
-% 20pt staff: \font\dynfont=feta-din10 scaled \magstep2
-
-% Computer Modern Bold Extended Text Italic 10 point
-% if unknown cmbase: input cmbase fi
-
-% font_identifier:="CMBXTI"; font_size 10pt#;
-
-input cmbase;
-font_identifier:="FETA-DYN"; font_size 10pt#;
-
-u#:=21.2/36pt#; % unit width
-width_adj#:=11/36pt#; % width adjustment for certain characters
-serif_fit#:=0pt#; % extra sidebar near lowercase serifs
-cap_serif_fit#:=7/36pt#; % extra sidebar near uppercase serifs
-letter_fit#:=11/36pt#; % extra space added to all sidebars
-
-body_height#:=270/36pt#; % height of tallest characters
-asc_height#:=250/36pt#; % height of lowercase ascenders
-cap_height#:=247/36pt#; % height of caps
-fig_height#:=232/36pt#; % height of numerals
-x_height#:=160/36pt#; % height of lowercase without ascenders
-math_axis#:=90/36pt#; % axis of symmetry for math symbols
-bar_height#:=85/36pt#; % height of crossbar in lowercase e
-comma_depth#:=70/36pt#; % depth of comma below baseline
-desc_depth#:=70/36pt#; % depth of lowercase descenders
-
-crisp#:=13/36pt#; % diameter of serif corners
-tiny#:=13/36pt#; % diameter of rounded corners
-fine#:=10/36pt#; % diameter of sharply rounded corners
-thin_join#:=10/36pt#; % width of extrafine details
-hair#:=20/36pt#; % lowercase hairline breadth
-stem#:=38/36pt#; % lowercase stem breadth
-curve#:=43/36pt#; % lowercase curve breadth
-ess#:=35/36pt#; % breadth in middle of lowercase s
-flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
-dot_size#:=53/36pt#; % diameter of dots
-cap_hair#:=22/36pt#; % uppercase hairline breadth
-cap_stem#:=49/36pt#; % uppercase stem breadth
-cap_curve#:=52/36pt#; % uppercase curve breadth
-cap_ess#:=50/36pt#; % breadth in middle of uppercase s
-rule_thickness#:=.6pt#; % thickness of lines in math symbols
-
-dish#:=1/36pt#; % amount erased at top or bottom of serifs
-bracket#:=10/36pt#; % vertical distance from serif base to tangent
-jut#:=27/36pt#; % protrusion of lowercase serifs
-cap_jut#:=39/36pt#; % protrusion of uppercase serifs
-beak_jut#:=10/36pt#; % horizontal protrusion of beak serifs
-beak#:=70/36pt#; % vertical protrusion of beak serifs
-vair#:=13/36pt#; % vertical diameter of hairlines
-notch_cut#:=10pt#; % maximum breadth above or below notches
-bar#:=17/36pt#; % lowercase bar thickness
-slab#:=17/36pt#; % serif and arm thickness
-cap_bar#:=17/36pt#; % uppercase bar thickness
-cap_band#:=17/36pt#; % uppercase thickness above/below lobes
-cap_notch_cut#:=10pt#; % max breadth above/below uppercase notches
-serif_drop#:=3/36pt#; % vertical drop of sloped serifs
-stem_corr#:=2/36pt#; % for small refinements of stem breadth
-vair_corr#:=1.5/36pt#; % for small refinements of hairline height
-apex_corr#:=0pt#; % extra width at diagonal junctions
-
-o#:=6/36pt#; % amount of overshoot for curves
-apex_o#:=6/36pt#; % amount of overshoot for diagonal junctions
-
-slant:=.25; % tilt ratio $(\Delta x/\Delta y)$
-fudge:=1; % factor applied to weights of heavy characters
-math_spread:=.5; % extra openness of math symbols
-superness:=8/11; % parameter for superellipses
-superpull:=1/8; % extra openness inside bowls
-beak_darkness:=.4; % fraction of triangle inside beak serifs
-ligs:=2; % level of ligatures to be included
-
-square_dots:=false; % should dots be square?
-hefty:=false; % should we try hard not to be overweight?
-serifs:=true; % should serifs and bulbs be attached?
-monospace:=false; % should all characters have the same width?
-variant_g:=true; % should an italic-style g be used?
-low_asterisk:=false; % should the asterisk be centered at the axis?
-math_fitting:=false; % should math-mode spacing be used?
-
-% generate textit % switch to the driver file
-
-% mode_setup; font_setup;
-
-% "f" obviously has a _lot_ bigger slant than "p" (see Wanske p.239)
-% however; perhaps we need two f symbols:
-% - a super-slanted one used in "f" "mf" "sfz" "sf", and
-% - a more normal-slanted in "ff" "fff" "fp" "fp" (see Wanske p.241)
-%
-% looking at professionally typeset music reveals that typesetters
-% are somewhat unsure about slanting in "mf", "fp", "sfz"
-
-% "f" and "p" (in any combination) are a lot (factor two) fatter than
-% "s", "m", and "z". sometimes the "m" and "z" are a bit fatter than
-% "s".
-
-slant:=.68; % tilt ratio $(\Delta x/\Delta y)$
-crisp#:=19/36pt#; % diameter of serif corners
-tiny#:=19/36pt#; % diameter of rounded corners
-fine#:=20/36pt#; % diameter of sharply rounded corners
-thin_join#:=20/36pt#; % width of extrafine details
-stem#:=72/36pt#; % lowercase stem breadth
-%curve#:=64/36pt#; % lowercase curve breadth
-flare#:=52/36pt#; % diameter of bulbs or breadth of terminals
-mode_setup;
-font_setup;
-
-input feta-autometric;
-fet_beginfont("feta-din", 10);
-
-num=-1;
-xbar:=u;
-
-save fcode;
-
-fcode = 101;
-input feta-ital-f;
-
-bar#:=17/36pt#; % lowercase bar thickness
-slant:=.38; % tilt ratio $(\Delta x/\Delta y)$
-stem#:=58/36pt#; % lowercase stem breadth
-font_setup;
-xbar:=.4u;
-
-save fcode;
-
-fcode = 102;
-
-input feta-ital-f;
-stem#:=54/36pt#; % lowercase stem breadth
-hair#:=12/36pt#; % lowercase hairline breadth
-vair#:=7/36pt#; % vertical diameter of hairlines
-
-font_setup;
-
-input feta-ital-p;
-
-slant:=.28; % tilt ratio $(\Delta x/\Delta y)$
-%stem#:=38/36pt#; % lowercase stem breadth
-%stem#:=28/36pt#; % lowercase stem breadth
-stem#:=32/36pt#; % lowercase stem breadth
-% ess#:=35/36pt#; % breadth in middle of lowercase s
-ess#:=28/36pt#; % breadth in middle of lowercase s
-%hair#:=20/36pt#; % lowercase hairline breadth
-% hair#:=16/36pt#; % lowercase hairline breadth
-hair#:=14/36pt#; % lowercase hairline breadth
-%vair#:=13/36pt#; % vertical diameter of hairlines
-vair#:=9/36pt#; % vertical diameter of hairlines
-% flare#:=42/36pt#; % diameter of bulbs or breadth of terminals
-flare#:=36/36pt#; % diameter of bulbs or breadth of terminals
-
-crisp#:=13/36pt#; % diameter of serif corners
-tiny#:=13/36pt#; % diameter of rounded corners
-fine#:=10/36pt#; % diameter of sharply rounded corners
-thin_join#:=10/36pt#; % width of extrafine details
-curve#:=43/36pt#; % lowercase curve breadth
-
-% Chester, Breitkopf suggest smaller sizes of these other chars,
-% using the x-height as reference point.
-% x_height#:=160/36pt#; % height of lowercase without ascenders
-% x_height#:=145/36pt#; % height of lowercase without ascenders
-x_height#:=135/36pt#; % height of lowercase without ascenders
-
-font_setup;
+% feta-din10.mf
+% part of LilyPond's pretty-but-neat music font
-input feta-ital-m;
-input feta-ital-r;
-input feta-ital-s;
-input feta-ital-z;
+design_size:=10;
-font_slant slant;
-font_x_height x_height#;
-font_quad 18u#; % to have a working em unit
+input feta-din;
-fet_endfont("feta-din");
end.
+
--- /dev/null
+% feta-din10.mf
+% part of LilyPond's pretty-but-neat music font
+
+design_size:=12;
+
+input feta-din;
+
+end.
+
--- /dev/null
+design_size := 14.4;
+input feta-din;
--- /dev/null
+% feta-din4.mf
+% part of LilyPond's pretty-but-neat music font
+
+% size:=4;
+design_size:=16*3/15;
+
+input feta-din.mf;
+
+end.
+
--- /dev/null
+% feta-din4.mf
+% part of LilyPond's pretty-but-neat music font
+
+% size:=4;
+design_size:=16*4/15;
+
+input feta-din.mf;
+
+end.
+
--- /dev/null
+% feta-din5.mf
+% part of LilyPond's pretty-but-neat music font
+
+% size:=5;
+design_size:=20*4/15;
+
+input feta-din.mf;
+
+end.
+
--- /dev/null
+% feta-din5.mf
+% part of LilyPond's pretty-but-neat music font
+
+% size:=5;
+design_size:=20*6/15;
+
+input feta-din.mf;
+
+end.
+
--- /dev/null
+% feta-din5.mf
+% part of LilyPond's pretty-but-neat music font
+
+% size:=5;
+design_size:=26*4/15;
+
+input feta-din.mf;
+
+end.
+
--- /dev/null
+% feta-din8.mf
+% part of LilyPond's pretty-but-neat music font
+
+design_size:=8;
+
+input feta-din.mf;
+
-% feta-nummer-generic.mf
-% part of LilyPond's pretty-but-neat music font
-
-test:=0;
-
-input feta-autometric;
-input feta-macros;
-input feta-params;
-
-%blot_diameter# = .4pt#;
-
-fet_beginfont("feta-nummer", size);
-mode_setup;
-
-height#:=designsize;
-
-font_x_height height#;
-
-save b,h; 4h+b=1.15; 10h+b=1;
-fatten:=designsize*h+b;
-save b,h; 4h+b=1.05; 10h+b=1;
-widen:=designsize*h+b;
-tense=0.85;
-thick#:=7/30height#*fatten;
-thin#:=thick#/4*fatten;
-hair#:=blot_diameter#;
-flare#:=9/8thick#/fatten;
-save b,h; 4h+b=1/8; 10h+b=1/6;
-kuulleke#:=thick#*designsize*h+b;
-foot_top#:=thick#;
-foot_width#:=9/4thick#;
-
-input feta-nummer;
-
-fet_endfont("feta-nummer");
-
-% feta-nummer-generic.mf
+% feta-nummer.mf
% part of LilyPond's pretty-but-neat music font
test:=0;
(properties-to-font-name . ,properties-to-font-name)
(style-to-font-name . ,style-to-font-name)
(markup-to-properties . ,markup-to-properties)
- (font-family . "roman")
+ (font-family . roman)
+ (font-size . "-1")
(meta . ,(element-description "BarNumber"
text-interface break-aligned-interface))
))
(style-to-font-name . ,style-to-font-name)
(markup-to-properties . ,markup-to-properties)
(self-alignment-Y . 0)
-
(meta . ,(element-description "DynamicText" text-interface ))
))
(properties-to-font-name . ,properties-to-font-name)
(style-to-font-name . ,style-to-font-name)
(markup-to-properties . ,markup-to-properties)
- (font-family . "number")
+ (font-style . mmrest)
(meta . ,(element-description "MultiMeasureRest" multi-measure-rest-interface ))
))
(define style-to-font-alist
'(
- (finger . "* * number * * -4")
- (volta . "* * number * * -3")
+ (finger . "* * number * * -3")
+ (volta . "* * number * * -2")
(timesig . "* * number * * 0")
- (mark . "* * number * * 2")
+ (mmrest . "* * number * * 0")
+ (mark . "* * number * * 1")
(script . "* * roman * * -1")
(large . "* * roman * * 1")
(Large . "bold * roman * * 2")
(("medium upright music feta 20" . 0) . "feta20")
(("medium upright music feta 16" . -1) . "feta16")
(("medium upright music feta 13" . -2) . "feta13")
+ (("medium upright music feta 13" . -3) . "feta11")
+ (("medium upright music feta 13" . -4) . "feta11")
(("medium upright music feta 23" . 1) . "feta23")
(("medium upright music feta 26" . 2) . "feta26")
(("medium upright braces feta-braces 20" . 0) . "feta-braces20")
- (("bold italic dynamic feta 10" . 0) . "feta-din10")
+ (("bold italic dynamic feta-din 14" . 2) . "feta-din14")
+ (("bold italic dynamic feta-din 13" . 1) . "feta-din13")
+ (("bold italic dynamic feta-din 12" . 0) . "feta-din12")
+ (("bold italic dynamic feta-din 10" . -1) . "feta-din10")
+ (("bold italic dynamic feta-din 8" . -2) . "feta-din8")
+ (("bold italic dynamic feta-din 7" . -3) . "feta-din7")
+ (("bold italic dynamic feta-din 6" . -4) . "feta-din6")
+ (("bold italic dynamic feta-din 5" . -5) . "feta-din5")
+ (("bold italic dynamic feta-din 4" . -6) . "feta-din4")
;; Hmm
- (("medium upright number feta-nummer 13" . 3) . "feta-nummer13")
+ (("medium upright number feta-nummer 13" . 3) . "feta-nummer14")
(("medium upright number feta-nummer 13" . 2) . "feta-nummer13")
(("medium upright number feta-nummer 12" . 1) . "feta-nummer12")
(("medium upright number feta-nummer 10" . 0) . "feta-nummer10")
(("medium upright number feta-nummer 8" . -1) . "feta-nummer8")
- (("medium upright number feta-nummer 6" . -2) . "feta-nummer6")
- (("medium upright number feta-nummer 5" . -3) . "feta-nummer5")
- (("medium upright number feta-nummer 4" . -4) . "feta-nummer4")
- (("medium upright number feta-nummer 3" . -5) . "feta-nummer3")
+ (("medium upright number feta-nummer 7" . -2) . "feta-nummer7")
+ (("medium upright number feta-nummer 6" . -3) . "feta-nummer6")
+ (("medium upright number feta-nummer 5" . -4) . "feta-nummer5")
+ (("medium upright number feta-nummer 4" . -5) . "feta-nummer4")
+ (("medium upright roman cmr 8" . -3) . "cmr8" )
+ (("medium upright roman cmr 8" . -2) . "cmr8" )
(("medium upright roman cmr 8" . -1) . "cmr8" )
(("medium upright roman cmr 10" . 0) . "cmr10")
(("medium upright roman cmr 12" . 1) . "cmr12")
(("bold upright roman cmbx 12" . 1) . "cmbx12")
(("medium italic roman cmbx 10" . 0) . "cmbx10")
(("medium italic roman cmbx 12" . 1) . "cmbx12")
+ (("medium upright math msam 10" . -3) . "msam10")
(("medium upright math msam 10" . -2) . "msam10")
(("medium upright math msam 10" . -1) . "msam10")
(("medium upright math msam 10" . 0) . "msam10")
(if entry (cdr entry) "[^ ]+"))
" "))
'(font-series font-shape font-family font-name font-point font-size)))))
+ ;;(display "font-regexp: `")
+ ;;(display font-regexp)
+ ;;(display "'\n")
(font-regexp-to-font-name paper font-regexp)))
(define markup-abbrev-to-properties-alist
style-to-font-alist)))
(define (markup-to-properties markup)
- ;; (display "markup: `")
+ ;;(display "markup: `")
;;(display markup)
;;(display "'\n")
(if (pair? markup)
'text-interface
"A scheme markup text"
(list
- (property-description 'text (lambda (x) (or (string? x) (list? x))) "the scheme markup text. Either a string, or a list of which the CAR is a markup '(MARKUP text text ...). MARKUP is either a CONS: an element property '(key . value) or a symbol: an abbreviation for a list of element properties. These abbreviations are currently defined: rows lines roman music bold italic named super sub text, as well as all font-style's.")
+ (property-description 'text (lambda (x) (or (string? x) (list? x))) "
+Scheme markup text. It is defined as follows:
+<p>
+
+TEXT : STRING | (MARKUP SENTENCE)<br>
+MARKUP: PROPERTY | ABBREV<br>
+SENTENCE: TEXT | SENTENCE TEXT<br>
+PROPERTY: (key . value)<br>
+ABBREV: rows lines roman music bold italic named super sub text, or any font-style
+<p>
+
+So, TEXT is either a string, or a list of which the CAR is a MARKUP.
+MARKUP is either a CONS: an element property '(key . value) or a symbol:
+a predefined abbreviation for a list of element properties.
+<p>
+
+The following abbreviations are currently defined:
+<dl>
+<dt>rows<dd> horizontal mode: set all text on one line (default)
+<dt>lines<dd> vertical mode: set every text on new line
+<dt>roman<dd> select roman font
+<dt>music<dd> select feta font
+<dt>bold<dd> select bold series
+<dt>italic<dd> select italic shape
+<dt>named<dd> lookup by character name
+<dt>text<dd> plain text lookup (by character value)
+<dt>super<dd> superscript
+<dt>sub<dd> subscript
+<dt> any font-style<dd> finger volta timesig mmrest mark script large Large dynamic
+</dl>
+" )
(property-description 'font-style string? "font definition for a special purpose, one of: finger volta timesig mark script large Large dynamic")
(property-description 'font-series string? "partial font definition: medium, bold")
(property-description 'font-shape string? "partial font definition: upright or italic")