]> git.donarmstrong.com Git - lilypond.git/commitdiff
patch::: 1.1.23.mb1
authorMats Bengtsson <mats.bengtsson@s3.kth.se>
Wed, 20 Jan 1999 23:18:08 +0000 (00:18 +0100)
committerMats Bengtsson <mats.bengtsson@s3.kth.se>
Wed, 20 Jan 1999 23:18:08 +0000 (00:18 +0100)
pl 23.mb1
- bf: Position and possible SIGSEGV in Mark_engraver
- Added padding support in G_staff_side_item
- bf: Correct direction of textual scripts.
- bf, lookup.cc: Fewer warnings about missing text styles.
     Same units used in all .afm files.

13 files changed:
Documentation/tex/refman.yo
NEWS
VERSION
buildscripts/mf-to-table.py
input/test/mark.ly
lily/g-staff-side.cc
lily/include/g-staff-side.hh
lily/lookup.cc
lily/mark-engraver.cc
lily/staff-info.cc
lily/text-engraver.cc
mf/GNUmakefile
mf/cmbx12.afm.in [new file with mode: 0644]

index 6bf67ce169290ed2110f554eb87c819aca8f285d..f0a3d4d2507cf06b12c996ca11c4fad6c91241ed 100644 (file)
@@ -973,9 +973,9 @@ files like file(init.fly) that read the user file into the middle of another
 file.  Using it in a user file will lead to an infinite loop.
         
 dit(code(\mark) var(unsigned)code(;) or code(\mark) var(string)code(;)) 
-Allowed in music only.  Prints a mark over or under (?) the staff.
-You must add code(Mark_engraver) to the Score context and it only
-seems to work if the mark appears at the beginning of a line.
+Allowed in music only.  Prints a mark over or under (depending on the
+code(markDirection) property) the staff.
+You must add code(Mark_engraver) to the Score context.
 
 dit(code(\midi) var(statementlist)) Appears in a score block to
 indicate that musical output should be produced and to set output
@@ -1301,6 +1301,13 @@ setting to 2 shows a number and a bracket if there is no beam; setting
 to 3 shows a number, and if there is no beam it adds a bracket;
 setting to 4 shows both a number and a bracket unconditionally.  
 
+dit(code(markScriptPadding)) Determines the extra space added between
+the mark and the closest staff line or note.
+
+dit(code(markDirection)) Determines if marks should be printed above
+or below the staff. Set to code(\up) to print marks above the staff;
+set to code(\down) to print marks below the staff.
+
 )
 
 subsubsubsect(Staff properties)
diff --git a/NEWS b/NEWS
index 766301d266742e26ae84d7d6eef982f72f2a4e9f..71c7f6334852d7409b78bc83cc7fb68d2a1e7eef 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,10 @@
+pl 23.mb1
+       - bf: Position and possible SIGSEGV in Mark_engraver
+       - Added padding support in G_staff_side_item
+       - bf: Correct direction of textual scripts. 
+       - bf, lookup.cc: Fewer warnings about missing text styles. 
+            Same units used in all .afm files.
+
 pl 22.jcn4
        - bf's: repeat-engraver; \bar "|:", ":|" now deprecated for repeats
        - bf: :|, |:
diff --git a/VERSION b/VERSION
index cc4957f34f0d5d6524522e65c69b1e0ca702f7d8..7864b2e37304a606e1b76fa0f8b5b022a5879e5c 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=1
 PATCH_LEVEL=23
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=mb1
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
index 4d4b505197d1469b1b98914af14595ac21b90224..88eaf5d612c8bc3c276d5becde079271ddc9f7bf 100644 (file)
@@ -112,7 +112,7 @@ class Indentable_file(File):
 
 class Afm_file (File):
     def print_f_dimen(self, f):
-       f = f * 1000
+       f = f 
     
        dimstr = '%.2f' % f
 
index 30bd288f2468db222aa50a3ae24d49f723fc6224..a054b62147a41ddeda63987c0ab375c0d0e1db10 100644 (file)
@@ -20,6 +20,9 @@ two = \notes\relative c{
 \score{
        < \global \one \two >
        \paper {
-               \translator { \OrchestralPartStaffContext }
+               \translator { \OrchestralPartStaffContext 
+                       markScriptPadding = "4.0";
+%                      markDirection = \down;
+               }
        }
 }
index 9b166c692766af925bcd2cb4b4cc24b9579542fe..3988f0b9e99c52a73a6d4dab7936885363cc992b 100644 (file)
@@ -27,6 +27,7 @@ G_staff_side_item::G_staff_side_item ()
   dir_ = CENTER;
   to_position_l_ = 0;
   transparent_b_ = true;
+  padding_f_ = 0;
 }
 
 void
@@ -71,11 +72,9 @@ G_staff_side_item::do_post_processing ()
       Real coord = e->relative_coordinate (common, Y_AXIS);
       dim.unite (coord + e->extent (Y_AXIS));
     }
-  if (!support_l_arr_.size ())
-    dim = Interval (0,0);
 
   Interval sym_dim = to_position_l_->extent (Y_AXIS);
-  Real off = dim_cache_[Y_AXIS].relative_coordinate (common);
+  Real off = dim_cache_[Y_AXIS].relative_coordinate (common) - padding_f_ * dir_;
   
   dim_cache_[Y_AXIS].set_offset (dim[dir_] - sym_dim[-dir_] - off);
 }
index c39dcd9f3f05aac96a7e4ad22b097bc6c9960130..add3ff2d5cca3a0152e6692cf418724e62c39883 100644 (file)
@@ -23,6 +23,7 @@ public:
   Score_element * to_position_l_;
   Direction dir_;
   Link_array<Score_element> support_l_arr_;
+  Real padding_f_;
   
   G_staff_side_item ();
   void set_victim (Score_element*);
index 35367f5e0e807b37c8d7f6eca7f0a08b95c1d733..2b73a7ba82fc833f8d46b450d2434be4ace84d9d 100644 (file)
@@ -101,8 +101,8 @@ Lookup::afm_find (String s, bool warn) const
     return a;
   
   a.dim_ = m.B_;
-  a.dim_[X_AXIS] *= 1 / 1000.0;
-  a.dim_[Y_AXIS] *= 1 / 1000.0;
+  //  a.dim_[X_AXIS] *= 1 / 1000.0;
+  //  a.dim_[Y_AXIS] *= 1 / 1000.0;
 
   
   a.lambda_ = gh_list (ly_symbol ("char"),
@@ -340,6 +340,10 @@ static Dict_initialiser<char const*> cmr_init[] = {
   {"finger", "feta-nummer"},
   {"italic", "cmti"},
   {"roman", "cmr"},
+  {"large", "cmbx"},
+  {"Large", "cmbx"},
+  {"mark", "feta-nummer"},
+  {"nummer", "feta-nummer"},
   {0,0}
 };
 
index 891215abe5624cb89c286519230ea042484deda9..0322590da11f908dfc6082d5b5b9458421e8201d 100644 (file)
@@ -18,6 +18,8 @@
 #include "g-staff-side.hh"
 #include "stem.hh"
 #include "rhythmic-head.hh"
+#include "align-element.hh"
+#include "vertical-group-element.hh"
 
 ADD_THIS_TRANSLATOR (Mark_engraver);
 
@@ -55,7 +57,7 @@ Mark_engraver::do_process_requests ()
   text_p_->style_str_ = text_p_->text_str_.index_any_i ("0123456789") >= 0 
     ? "mark" : "Large";
 
-  Scalar prop = get_property ("markdir", 0);
+  Scalar prop = get_property ("markDirection", 0);
   if (prop.isnum_b ())
     {
       staff_side_p_->dir_ = (Direction) (int) prop;
@@ -67,11 +69,11 @@ Mark_engraver::do_process_requests ()
 
   staff_side_p_->set_victim(text_p_);
   
-  //  Scalar padding = get_property ("markScriptPadding", 0);
-  //  if (padding.length_i() && padding.isnum_b ())
-  //    {
-  //      script_p_->padding_f_ = Real(padding);
-  //    }
+  Scalar padding = get_property ("markScriptPadding", 0);
+  if (padding.length_i() && padding.isnum_b ())
+    {
+      staff_side_p_->padding_f_ = Real(padding);
+    }
   //  Scalar break_priority = get_property ("markBreakPriority", 0);
   //  if (break_priority.length_i() && break_priority.isnum_b ())
   //    {
@@ -89,7 +91,10 @@ Mark_engraver::do_pre_move_processing ()
   if (staff_side_p_) 
     {
       Staff_symbol* s_l = get_staff_info().staff_sym_l_;
-      staff_side_p_->add_support (s_l);
+      if (s_l != 0)
+       {
+         staff_side_p_->add_support (s_l);
+       }
       typeset_element (text_p_);
       typeset_element (staff_side_p_);
       text_p_ = 0;
@@ -104,6 +109,8 @@ Mark_engraver::acknowledge_element (Score_element_info i)
   if (staff_side_p_) 
     {
       if (dynamic_cast<Stem *> (i.elem_l_) ||
+         //      dynamic_cast<Align_element *> (i.elem_l_) ||
+         dynamic_cast<Vertical_group_element *> (i.elem_l_) ||
          dynamic_cast<Rhythmic_head *> (i.elem_l_))
        {
          staff_side_p_->add_support (i.elem_l_);
index 43140d7dcc3c06fd0baee5da4b82f90530465373..2a0667a892d6d6c511fa0239d77ac252e710c719 100644 (file)
@@ -22,6 +22,7 @@ Staff_info::Staff_info()
   score_l_ =0;
   time_C_ = 0;
   rhythmic_C_ =0;
+  staff_sym_l_=0;
 }
 
 Score_column*
index 792c3aa02f38af544cf506e7f993269993a5436e..ba48473450e0da8ea869d48cb70cac022a7e183d 100644 (file)
@@ -13,6 +13,7 @@
 #include "text-def.hh"
 #include "note-head.hh"
 #include "stem.hh"
+#include "staff-sym.hh"
 
 class Text_engraver : public Engraver
 {
@@ -80,6 +81,7 @@ Text_engraver::do_process_requests ()
       G_text_item *text = new G_text_item;
       G_staff_side_item *ss = new G_staff_side_item;
       ss->set_victim (text);
+      ss->dir_ = r->dir_;
 
       text->text_str_ = t->text_str_;
 
@@ -94,8 +96,14 @@ Text_engraver::do_process_requests ()
 void
 Text_engraver::do_pre_move_processing ()
 {
+  Staff_symbol* s_l = get_staff_info().staff_sym_l_;
   for (int i=0; i < texts_.size (); i++)
     {
+      if (s_l != 0)
+       {
+         positionings_[i]->add_support (s_l);
+       }
+
       typeset_element (texts_[i]);
       typeset_element (positionings_[i]);
     }
index 3925ccc051738ebbdb7730f984b4cdc368c5a09e..b533da3a4fb410c39b43a7e1a7f5b8c8920bf97e 100644 (file)
@@ -6,7 +6,8 @@ STEPMAKE_TEMPLATES=metafont metapost install install-out
 
 EXTRA_DIST_FILES += TODO README feta.mp mfplain.ini
 
-FET_FILES = $(wildcard feta[0-9]*.mf) feta-din10.mf
+FET_FILES = $(wildcard feta[0-9]*.mf) feta-din10.mf \
+  $(wildcard feta-nummer[0-9]*.mf)
 
 LYTABLES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.ly))
 LOG_FILES = $(addprefix $(outdir)/, $(FET_FILES:.mf=.log))
diff --git a/mf/cmbx12.afm.in b/mf/cmbx12.afm.in
new file mode 100644 (file)
index 0000000..845e102
--- /dev/null
@@ -0,0 +1,133 @@
+FontName cmr
+StartFontMetrics
+StartCharMetrics
+C 0;   Character-0; B 0.00 0.00        9.83040 7.19440 
+C 1;   Character-1; B 0.00 0.00        9.83040 7.19440 
+C 2;   Character-2; B 0.00 0.00        9.17504 7.19440 
+C 3;   Character-3; B 0.00 0.00        8.25269 7.19440 
+C 4;   Character-4; B 0.00 0.00        7.86432 7.19440 
+C 5;   Character-5; B 0.00 0.00        9.22360 7.19440 
+C 6;   Character-6; B 0.00 0.00        8.51968 7.19440 
+C 7;   Character-7; B 0.00 0.00        9.17504 7.19440 
+C 8;   Character-8; B 0.00 0.00        8.51968 7.19440 
+C 9;   Character-9; B 0.00 0.00        9.17504 7.19440 
+C 10;  Character-10; B 0.00 0.00       8.51968 7.19440 
+C 11;  Character-11; B 0.00 0.00       6.88128 7.28177 
+C 12;  Character-12; B 0.00 0.00       6.55360 7.28177 
+C 13;  Character-13; B 0.00 0.00       6.55360 7.28177 
+C 14;  Character-14; B 0.00 0.00       9.83040 7.28177 
+C 15;  Character-15; B 0.00 0.00       9.83040 7.28177 
+C 16;  Character-16; B 0.00 0.00       3.27680 4.66033 
+C 17;  Character-17; B 0.00 0.00       3.60448 4.66033 
+C 18;  Character-18; B 0.00 0.00       5.89824 7.28177 
+C 19;  Character-19; B 0.00 0.00       5.89824 7.28177 
+C 20;  Character-20; B 0.00 0.00       5.89824 6.62641 
+C 21;  Character-21; B 0.00 0.00       5.89824 7.28177 
+C 22;  Character-22; B 0.00 0.00       5.89824 6.21473 
+C 23;  Character-23; B 0.00 0.00       8.90805 7.28177 
+C 24;  Character-24; B 0.00 0.00       5.24288 0 
+C 25;  Character-25; B 0.00 0.00       6.01961 7.28177 
+C 26;  Character-26; B 0.00 0.00       8.51968 4.66033 
+C 27;  Character-27; B 0.00 0.00       9.17504 4.66033 
+C 28;  Character-28; B 0.00 0.00       5.89824 5.67979 
+C 29;  Character-29; B 0.00 0.00       10.67995 7.19440 
+C 30;  Character-30; B 0.00 0.00       11.99067 7.19440 
+C 31;  Character-31; B 0.00 0.00       9.17504 7.70412 
+C 32;  Character-32; B 0.00 0.00       3.27680 4.66033 
+C 33;  Character-33; B 0.00 0.00       3.59235 7.28177 
+C 34;  Character-34; B 0.00 0.00       6.09243 7.28177 
+C 35;  Character-35; B 0.00 0.00       9.83040 7.28177 
+C 36;  Character-36; B 0.00 0.00       5.89824 7.86432 
+C 37;  Character-37; B 0.00 0.00       9.83040 7.86432 
+C 38;  Character-38; B 0.00 0.00       9.17504 7.28177 
+C 39;  Character-39; B 0.00 0.00       3.27680 7.28177 
+C 40;  Character-40; B 0.00 0.00       4.58752 7.86432 
+C 41;  Character-41; B 0.00 0.00       4.58752 7.86432 
+C 42;  Character-42; B 0.00 0.00       5.89824 7.86432 
+C 43;  Character-43; B 0.00 0.00       9.17504 6.55360 
+C 44;  Character-44; B 0.00 0.00       3.27680 1.50491 
+C 45;  Character-45; B 0.00 0.00       3.93216 4.66033 
+C 46;  Character-46; B 0.00 0.00       3.27680 1.50491 
+C 47;  Character-47; B 0.00 0.00       5.89824 7.86432 
+C 48;  Character-48; B 0.00 0.00       5.89824 6.75749 
+C 49;  Character-49; B 0.00 0.00       5.89824 6.75749 
+C 50;  Character-50; B 0.00 0.00       5.89824 6.75749 
+C 51;  Character-51; B 0.00 0.00       5.89824 6.75749 
+C 52;  Character-52; B 0.00 0.00       5.89824 6.75749 
+C 53;  Character-53; B 0.00 0.00       5.89824 6.75749 
+C 54;  Character-54; B 0.00 0.00       5.89824 6.75749 
+C 55;  Character-55; B 0.00 0.00       5.89824 6.75749 
+C 56;  Character-56; B 0.00 0.00       5.89824 6.75749 
+C 57;  Character-57; B 0.00 0.00       5.89824 6.75749 
+C 58;  Character-58; B 0.00 0.00       3.27680 4.66033 
+C 59;  Character-59; B 0.00 0.00       3.27680 4.66033 
+C 60;  Character-60; B 0.00 0.00       3.59235 5.24288 
+C 61;  Character-61; B 0.00 0.00       9.17504 4.05159 
+C 62;  Character-62; B 0.00 0.00       5.57056 5.24288 
+C 63;  Character-63; B 0.00 0.00       5.57056 7.28177 
+C 64;  Character-64; B 0.00 0.00       9.17504 7.28177 
+C 65;  Character-65; B 0.00 0.00       8.90805 7.19440 
+C 66;  Character-66; B 0.00 0.00       8.38619 7.19440 
+C 67;  Character-67; B 0.00 0.00       8.51968 7.19440 
+C 68;  Character-68; B 0.00 0.00       9.04155 7.19440 
+C 69;  Character-69; B 0.00 0.00       7.74296 7.19440 
+C 70;  Character-70; B 0.00 0.00       7.41528 7.19440 
+C 71;  Character-71; B 0.00 0.00       9.27213 7.19440 
+C 72;  Character-72; B 0.00 0.00       9.22360 7.19440 
+C 73;  Character-73; B 0.00 0.00       4.39335 7.19440 
+C 74;  Character-74; B 0.00 0.00       6.09243 7.19440 
+C 75;  Character-75; B 0.00 0.00       9.23573 7.19440 
+C 76;  Character-76; B 0.00 0.00       7.08760 7.19440 
+C 77;  Character-77; B 0.00 0.00       11.18968 7.19440 
+C 78;  Character-78; B 0.00 0.00       9.22360 7.19440 
+C 79;  Character-79; B 0.00 0.00       8.85949 7.19440 
+C 80;  Character-80; B 0.00 0.00       8.05851 7.19440 
+C 81;  Character-81; B 0.00 0.00       8.85949 7.19440 
+C 82;  Character-82; B 0.00 0.00       8.79883 7.19440 
+C 83;  Character-83; B 0.00 0.00       6.55360 7.19440 
+C 84;  Character-84; B 0.00 0.00       8.20413 7.19440 
+C 85;  Character-85; B 0.00 0.00       9.06583 7.19440 
+C 86;  Character-86; B 0.00 0.00       8.90805 7.19440 
+C 87;  Character-87; B 0.00 0.00       12.18485 7.19440 
+C 88;  Character-88; B 0.00 0.00       8.90805 7.19440 
+C 89;  Character-89; B 0.00 0.00       8.90805 7.19440 
+C 90;  Character-90; B 0.00 0.00       7.20896 7.19440 
+C 91;  Character-91; B 0.00 0.00       3.27680 7.86432 
+C 92;  Character-92; B 0.00 0.00       6.09243 7.28177 
+C 93;  Character-93; B 0.00 0.00       3.27680 7.86432 
+C 94;  Character-94; B 0.00 0.00       5.89824 7.28177 
+C 95;  Character-95; B 0.00 0.00       3.27680 7.28177 
+C 96;  Character-96; B 0.00 0.00       3.27680 7.28177 
+C 97;  Character-97; B 0.00 0.00       5.73440 4.66033 
+C 98;  Character-98; B 0.00 0.00       6.55360 7.28177 
+C 99;  Character-99; B 0.00 0.00       5.24288 4.66033 
+C 100; Character-100; B 0.00 0.00      6.55360 7.28177 
+C 101; Character-101; B 0.00 0.00      5.38245 4.66033 
+C 102; Character-102; B 0.00 0.00      3.60448 7.28177 
+C 103; Character-103; B 0.00 0.00      5.89824 4.66033 
+C 104; Character-104; B 0.00 0.00      6.55360 7.28177 
+C 105; Character-105; B 0.00 0.00      3.27680 7.28177 
+C 106; Character-106; B 0.00 0.00      3.60448 7.28177 
+C 107; Character-107; B 0.00 0.00      6.22592 7.28177 
+C 108; Character-108; B 0.00 0.00      3.27680 7.28177 
+C 109; Character-109; B 0.00 0.00      9.83040 4.66033 
+C 110; Character-110; B 0.00 0.00      6.55360 4.66033 
+C 111; Character-111; B 0.00 0.00      5.89824 4.66033 
+C 112; Character-112; B 0.00 0.00      6.55360 4.66033 
+C 113; Character-113; B 0.00 0.00      6.22592 4.66033 
+C 114; Character-114; B 0.00 0.00      4.81812 4.66033 
+C 115; Character-115; B 0.00 0.00      4.65307 4.66033 
+C 116; Character-116; B 0.00 0.00      4.58752 6.65763 
+C 117; Character-117; B 0.00 0.00      6.55360 4.66033 
+C 118; Character-118; B 0.00 0.00      6.22592 4.66033 
+C 119; Character-119; B 0.00 0.00      8.51968 4.66033 
+C 120; Character-120; B 0.00 0.00      6.22592 4.66033 
+C 121; Character-121; B 0.00 0.00      6.22592 4.66033 
+C 122; Character-122; B 0.00 0.00      5.24288 4.66033 
+C 123; Character-123; B 0.00 0.00      5.89824 4.66033 
+C 124; Character-124; B 0.00 0.00      11.79648 4.66033 
+C 125; Character-125; B 0.00 0.00      5.89824 7.28177 
+C 126; Character-126; B 0.00 0.00      5.89824 7.28177 
+C 127; Character-127; B 0.00 0.00      5.89824 7.28177 
+EndCharMetrics
+EndFontMetrics