2002-04-01 Han-Wen <hanwen@cs.uu.nl>
+ * scm/generic-property.scm: remove generic-property, property-engraver
+
+ * lily/volta-bracket.cc (brew_molecule): use Lookup::line() for bracket
+
+ * lily/hairpin.cc (brew_molecule): use Lookup::line() for hairpins.
+
+ * ps/music-drawing-routines.ps: remove volta, tuplet, hairpin routines.
+
+ * scm/*.scm: remove volta, hairpin and tuplet functions.
+
* lily/rhythmic-column-engraver.cc (acknowledge_grob): don't make
note column for notes/stems/dots that already have parents. Fixes
nested grace contexts.
MAJOR_VERSION=1
MINOR_VERSION=5
PATCH_LEVEL=49
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=cvs1
# use the above to send patches: MY_PATCH_LEVEL is always empty for a
--- /dev/null
+
+\header {
+ texidoc = "Fermata on rest doesn't go up"
+ }
+
+\score { \notes { r4-\fermata }}
--- /dev/null
+
+
+\header{
+texidoc = "Grace notes may separate beams, underneath normal beams."
+}
+
+%
+% TODO: add this to standard lilypond
+%
+
+\score{
+\notes\context Voice{
+ \time 6/8
+ \clef violin
+ \key es \major
+ [a'8 ( \context GraceVoice \grace { [bes'16 a'16] } g'8 ) a'8] d''4 c''8 |
+}
+\paper { \translator { \VoiceContext
+ \accepts GraceVoice
+ }
+ \translator { \VoiceContext \name GraceVoice }
+ linewidth = -1.
+ }
+}
+
RehearsalMark \override #'padding = #1
MultiMeasureRest \override #'padding = #0.5
MultiMeasureRest \override #'number-threshold = #1
- Stem \override #'thickness = #1.3
+
Beam \override #'thickness = #0.6
Beam \override #'beam-space = #0.8
Slur \override #'beautiful = #0.3
#include "paper-def.hh"
#include "debug.hh"
#include "paper-column.hh"
+#include "lookup.hh"
MAKE_SCHEME_CALLBACK (Hairpin, brew_molecule, 1);
Direction grow_dir = to_dir (s);
- /* Ugh, must be same as Text_spanner::brew_molecule. */
+ /* Ugh, must be same as Text_spanner::brew_molecule. */
+
+ /*
+ Ugh. property name is not general.
+ */
Real padding = gh_scm2double (me->get_grob_property ("if-text-padding"));
Drul_array<bool> broken;
starth = continued ? height/2 : 0.0;
endh = height;
}
-
- /*
- TODO: junk this and, make a general
-
- Lookup::line (XY1, XY2).
- */
- SCM hairpin = scm_list_n (ly_symbol2scm ("hairpin"),
- gh_double2scm (thick),
- gh_double2scm (width),
- gh_double2scm (starth),
- gh_double2scm (endh),
- SCM_UNDEFINED);
- /*
- We make the hairpin too large in Y direction, so it stays at
- proper distance from the staff.
- */
- Interval yext = 2* height * Interval (-1,1);
- Box b (Interval (0, width), yext);
- Molecule mol (b, hairpin);
-
+ Molecule mol = Lookup::line (thick,
+ Offset (0, starth),
+ Offset (width, endh));
+ mol.add_molecule (Lookup::line (thick,
+ Offset (0, -starth),
+ Offset (width, -endh)));
+
mol.translate_axis (x_points[LEFT]
- bounds[LEFT]->relative_coordinate (common, X_AXIS),
X_AXIS);
ADD_INTERFACE (Hairpin, "hairpin-interface",
- "hairpin crescendo.
-
-padding -- horizontal padding. This is useful if a crescendo is set next to a text like `mf'
-
-",
- "grow-direction thickness height padding");
+ "hairpin crescendo.",
+ "grow-direction thickness height if-text-padding");
+++ /dev/null
-/*
- property-engraver.cc -- implement Property engraver
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1999--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#include "lily-guile.hh"
-#include "engraver.hh"
-#include "dictionary.hh"
-#include "grob.hh"
-#include "scm-hash.hh"
-#include "translator-group.hh"
-#include "warn.hh"
-
-/*
- This is deprecated, since revert/override should be used
- */
-class Property_engraver : public Engraver
-{
- Scheme_hash_table *prop_dict_; // junkme
- void apply_properties (SCM, Grob*, Translator_group *origin);
-
-protected:
- virtual void acknowledge_grob (Grob_info ei);
- virtual void initialize ();
- virtual void finalize ();
-public:
- ~Property_engraver ();
- TRANSLATOR_DECLARATIONS(Property_engraver);
-};
-
-
-
-Property_engraver::Property_engraver ()
-{
- prop_dict_ = 0;
-}
-void
-Property_engraver::finalize ()
-{
-
-}
-
-Property_engraver::~Property_engraver ()
-{
- if (prop_dict_)
- scm_gc_unprotect_object (prop_dict_->self_scm ());
-}
-
-void
-Property_engraver::initialize ()
-{
- prop_dict_ = new Scheme_hash_table;
-
- SCM plist = get_property ("Generic_property_list");
- for (; gh_pair_p (plist); plist = ly_cdr (plist))
- {
- SCM elt_props = ly_car (plist);
- prop_dict_->set (ly_car (elt_props), ly_cdr (elt_props));
- }
-}
-
-void
-Property_engraver::acknowledge_grob (Grob_info i)
-{
- SCM ifs = i.grob_l_->get_grob_property ("interfaces");
- SCM props;
- for (; gh_pair_p (ifs); ifs = ly_cdr (ifs))
- {
- if (prop_dict_->try_retrieve (ly_car (ifs), &props))
- {
- apply_properties (props,i.grob_l_, i.origin_trans_l_->daddy_trans_l_);
- }
- }
-
- if (prop_dict_->try_retrieve (ly_symbol2scm ("all"), &props))
- {
- apply_properties (props, i.grob_l_, i.origin_trans_l_->daddy_trans_l_);
- }
-}
-
-
-void
-Property_engraver::apply_properties (SCM p, Grob *e, Translator_group*origin)
-{
- for (; gh_pair_p (p); p = ly_cdr (p))
- {
- /*
- Try each property in order; earlier descriptions take
- precedence over later ones, and we don't touch elt-properties if
- they're already set.
- */
-
- SCM entry = ly_car (p);
- SCM prop_sym = ly_car (entry);
- SCM type_p = ly_cadr (entry);
- SCM elt_prop_sym = ly_caddr (entry);
-
- SCM preset = scm_assq (elt_prop_sym, e->mutable_property_alist_);
- if (preset != SCM_BOOL_F)
- continue;
-
- SCM val = internal_get_property (prop_sym);
-
- if (val == SCM_EOL)
- ; // Not defined in context.
- else if (gh_apply (type_p, scm_list_n (val, SCM_UNDEFINED))
- == SCM_BOOL_T) // defined and right type: do it
- {
- e->internal_set_grob_property (elt_prop_sym, val);
-
- SCM meta = e->get_grob_property ("meta");
- SCM name = scm_assoc (ly_symbol2scm ("name"), meta);
- warning (_f ("`%s' is deprecated. Use\n \\property %s.%s \\override #'%s = #%s",
- ly_symbol2string (prop_sym).ch_C (),
- origin->type_str_.ch_C (),
- ly_scm2string (ly_cdr (name)).ch_C (),
- ly_symbol2string (elt_prop_sym).ch_C (),
- ly_scm2string (ly_write2scm (val)).ch_C ()));
- }
- else
-
- /*
- we don't print a warning if VAL == (), because we would
- get lots of warnings when we restore stuff to default, eg.
-
- slurDash = #1 [...] slurDash = ()
-
- should not cause "type error: slurDash expects number not
- boolean
-
- */
- if (val != SCM_EOL)
- { // not the right type: error message.
- SCM errport = scm_current_error_port ();
- SCM typefunc = scm_primitive_eval (ly_symbol2scm ("type-name"));
- SCM type_name = gh_call1 (typefunc, type_p);
- warning (_f ("Wrong type for property: %s, type: %s, value found: %s, type: %s",
- ly_symbol2string (prop_sym).ch_C (),
- ly_scm2string (type_name).ch_C (),
- ly_scm2string (ly_write2scm (val)).ch_C (),
- ly_scm2string (ly_type (val)).ch_C ()));
- scm_puts ("\n", errport);
- }
- }
-}
-
-
-ENTER_DESCRIPTION(Property_engraver,
-/* descr */ "This is a engraver that converts property settings into
-back-end grob-property settings. Example: Voice.stemLength will set
-#'length in all Stem objects.
-
-Due to CPU and memory requirements, the use of this engraver is deprecated.",
-/* creats*/ "",
-/* acks */ "grob-interface",
-/* reads */ "Generic_property_list",
-/* write */ "");
#include "group-interface.hh"
#include "side-position-interface.hh"
#include "directional-element-interface.hh"
-
+#include "lookup.hh"
/*
this is too complicated. Yet another version of side-positioning,
Real h = gh_scm2double (me->get_grob_property ("height"));
Real t = staff_thick * gh_scm2double (me->get_grob_property ("thickness"));
- /*
- ugh: should build from line segments.
- */
- SCM at = (scm_list_n (ly_symbol2scm ("volta"),
- gh_double2scm (h),
- gh_double2scm (w),
- gh_double2scm (t),
- gh_int2scm (no_vertical_start),
- gh_int2scm (no_vertical_end),
- SCM_UNDEFINED));
-
- Box b (Interval (0, w), Interval (0, h));
- Molecule mol (b, at);
+
+ Molecule start,end ;
+ if (!no_vertical_start)
+ start = Lookup::line (t, Offset (0,0), Offset (0, h));
+
+ if (!no_vertical_end)
+ end = Lookup::line (t, Offset (w, 0), Offset (w,h));
+
+ Molecule mol = Lookup::line (t, Offset (0, h), Offset (w,h));
+ mol.add_molecule (start);
+ mol.add_molecule (end);
+
SCM text = me->get_grob_property ("text");
SCM properties = scm_list_n (me->mutable_property_alist_,
me->immutable_property_alist_,SCM_UNDEFINED);
\type "Engraver_group_engraver"
\name Staff
\consists "Output_property_engraver"
- Generic_property_list = #generic-staff-properties
\consists "Bar_engraver"
% Bar_engraver must be first so default bars aren't overwritten
\consists "Output_property_engraver"
- Generic_property_list = #generic-staff-properties
+
MinimumVerticalExtent = ##f
ExtraVerticalExtent = ##f
VerticalExtent = ##f
\type "Engraver_group_engraver"
\name Voice
- Generic_property_list = #generic-voice-properties
+
localKeySignature = #'()
\consists "Font_size_engraver"
\consists "Rest_engraver"
\consists "Note_head_line_engraver"
\consists "Output_property_engraver"
- Generic_property_list = #generic-thread-properties
+
}
GrandStaffContext=\translator{
\consists "Span_arpeggio_engraver"
\consists "System_start_delimiter_engraver"
systemStartDelimiter = #'SystemStartBrace
- Generic_property_list = #generic-grand-staff-properties
+
\accepts "Staff"
}
\type "Engraver_group_engraver"
\name Lyrics
\consists Vertical_align_engraver %need this for getting folded repeats right.
- Generic_property_list = #generic-lyrics-properties
+
\consistsend "Axis_group_engraver"
MinimumVerticalExtent = ##f
\type "Engraver_group_engraver"
\name ChordNames
- Generic_property_list = #generic-chord-staff-properties
+
\consists "Output_property_engraver"
closepath fill
} bind def
-/draw_hairpin % width start_h end_h thick
-{
- 1 setlinecap
- 1 setlinejoin
-
- setlinewidth
- /end_h exch def
- /start_h exch def
- /wid exch def
- 0 start_h moveto
- wid end_h lineto
- stroke
- 0 start_h neg moveto
- wid end_h neg lineto
- stroke
-} bind def
-
-/draw_tuplet % height gap dx dy thick dir
-{
- 1 setlinecap
- 1 setlinejoin
-
- /dir exch def
- setlinewidth
- /tuplet_dy exch def
- /tuplet_dx exch def
- /tuplet_gapx exch def
- /tuplet_h exch def
- tuplet_dy tuplet_dx div tuplet_gapx mul /tuplet_gapy exch def
-
-
- 0 tuplet_h neg dir mul moveto
- 0 0 lineto
- tuplet_dx tuplet_gapx sub 2 div
- tuplet_dy tuplet_gapy sub 2 div lineto
- tuplet_dx tuplet_gapx add 2 div
- tuplet_dy tuplet_gapy add 2 div moveto
- tuplet_dx tuplet_dy lineto
- tuplet_dx tuplet_dy tuplet_h dir neg mul add lineto
- stroke
-} bind def
/draw_ez_ball % ch letter_col ball_col font
{
show
} bind def
-/draw_volta % h w thick vert_start vert_end
-{
- 1 setlinecap
- 1 setlinejoin
-
- /vert_end exch def
- /vert_start exch def
- setlinewidth
- /volta_w exch def
- /volta_h exch def
- vert_start 0 eq {
- 0 0 moveto
- 0 volta_h lineto
- } if
- 0 volta_h moveto
- volta_w volta_h lineto
- vert_end 0 eq {
- volta_w 0 lineto
- } if
- stroke
-} bind def
-
% this is for drawing slurs.
/draw_bezier_sandwich % thickness controls
{
(define (tuplet ht gap dx dy thick dir) "")
-(define (volta h w thick vert-start vert-end)
- ;; urg
- (string-append
- (func "set-line-char" "|")
- (func "rmove-to" 0 -4)
- ;; definition strange-way around
- (if (= 0 vert-start)
- (func "v-line" h)
- "")
- (func "rmove-to" 1 h)
- (func "set-line-char" "_")
- (func "h-line" (- w 1))
- (func "set-line-char" "|")
- (if (= 0 vert-end)
- (string-append
- (func "rmove-to" (- w 1) (* -1 h))
- (func "v-line" (* -1 h)))
- "")))
+++ /dev/null
-
-
-
-
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-;; DEPRECATED -- DO NOT UPDATE ! -- DO NOT USE !
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
-
-;
-; Format:
-; (cons 'Type name
-; (list PROPERTYDESCRIPTIONS))
-;
-; where
-; PROPERTYDESCRIPTION
-; is
-;
-; (list 'translatorPropertySymbol type-predicate backend-property-symbol)
-;
-; Descriptions earlier in the list take precedence over later descriptions.
-;
-
-
-(define generic-beam-properties
- (cons 'beam-interface
- (list
- (list 'beamSlopeDamping number? 'damping)
- (list 'autoKneeGap number? 'auto-knee-gap)
- (list 'autoInterstaffKneeGap number? 'auto-interstaff-knee-gap)
- (list 'beamDirAlgorithm symbol? 'beam-dir-algorithm)
- (list 'beamHeight number? 'height)
- (list 'beamVerticalPosition number? 'staff-position)
- )
- )
- )
-
-
-(define generic-stem-properties
- (cons 'stem-interface
- (list
- (list 'stemVerticalDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- (list 'stemLength number? 'length)
- (list 'flagStyle string? 'flag-style)
- (list 'style symbol? 'style)
- (list 'noStemExtend boolean? 'no-stem-extend)
- (list 'stemShorten number? 'shorten)
- ))
- )
-
-(define generic-dot-properties
- (cons 'dot-interface
- (list
- (list 'dotDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- )
- ))
-
-(define generic-script-properties
- (cons 'script-interface
- (list
- (list 'articulationScriptVerticalDirection dir? 'direction)
- (list 'articulationScriptPadding number? 'padding)
-
- ))
- )
-
-
-
-(define generic-text-properties
- (cons 'text-item-interface
- (list
- (list 'textStyle string? 'style)
- (list 'lyricAlignment dir? 'self-alignment-X)
- (list 'textScriptPadding number? 'padding)
- (list 'textVerticalAlignment dir? 'self-alignment-Y)
- (list 'textHorizontalAlignment dir? 'self-alignment-X)
- (list 'textScriptWordSpace number? 'word-space)
- )
- ))
-
-(define generic-sustain-pedal-properties
- (cons 'sustain-pedal-interface
- (list
- (list 'sustainPedalPadding number? 'padding))))
-
-(define generic-chord-name-properties
- (cons 'chord-name-interface
- (list
- (list 'textScriptWordSpace number? 'word-space)
- (list 'chordNameWordSpace number? 'word-space)
- (list 'chordNameStyle string? 'style))))
-
-(define generic-crescendo-properties
- (cons 'crescendo-interface
- (list
- (list 'dynamicDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- (list 'dynamicPadding number? 'padding)
- (list 'dynamicMinimumSpace number? 'minimum-space)
- )))
-
-(define generic-dynamic-line-spanner-properties
- (cons 'dynamic-interface
- (list
- (list 'dynamicDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- (list 'dynamicPadding number? 'padding)
- (list 'dynamicMinimumSpace number? 'minimum-space)
- )))
-
-(define generic-volta-spanner-properties
- (cons 'volta-spanner-interface (list
- (list 'voltaVerticalDirection dir? 'direction)
- (list 'voltaPadding number? 'padding)
- (list 'voltaMinimumSpace number? 'minimum-space)
- )))
-
-(define generic-bar-properties
- (cons 'staff-bar-interface
- (list
- (list 'barSize number? 'bar-size))
- )
- )
-
-(define generic-bar-number-properties
- (cons 'bar-number-interface
- (list
- (list 'barNumberScriptPadding number? 'padding)
- (list 'barNumberDirection dir? 'direction)
- )
-
- )
- )
-
-
-; don't do this yet. Depends on whennn the staff is really announced
-(define generic-staff-symbol-properties
- (cons 'staff-symbol-interface
- (list
- )
- )
- )
-
-(define generic-breathing-sign-properties
- (cons 'breathing-sign-interface
- (list
- (list 'breathingSignVerticalDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- )))
-
-(define generic-clef-properties
- (cons 'clef-interface
- (list
- (list 'clefStyle string? 'style))
- )
- )
-
-(define generic-All-properties
- (cons 'all
- (list (list 'fontSize number? 'font-relative-size))))
-
-
-(define generic-notehead-properties
- (cons 'note-head-interface
- (list (list 'noteHeadStyle symbol? 'style))))
-
-(define generic-notename-properties
- (cons 'note-name-interface
- (list (list 'noteNameStyle symbol? 'style))))
-
-
-(define generic-porrectus-properties
- (cons 'porrectus-interface
- (list
- (list 'porrectusStyle symbol? 'style)
- (list 'porrectusSolid boolean? 'solid)
- (list 'porrectusAddStem boolean? 'add-stem)
- (list 'porrectusStemDirection dir? 'stem-direction)
- )))
-
-
-(define generic-rest-properties
- (cons 'rest-interface
- (list (list 'restStyle string? 'reststyle))))
-
-(define generic-rest-collision-properties
- (cons 'rest-collision-interface
- (list (list 'maximumRestCount number? 'maximum-rest-count))))
-
-(define generic-tie-properties
- (cons 'tie-interface
- (list
- (list 'tieVerticalDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
-(list 'tieDash number? 'dashed)
- )))
-
-(define generic-tie-column-properties
- (cons 'tie-column-interface (list
- (list 'tieVerticalDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- )))
-
-(define generic-note-column-properties
- (cons 'note-column-interface
- (list
- (list 'horizontalNoteShift number? 'horizontal-shift)
- (list 'forceHorizontalShift number? 'force-hshift)
- )))
-
-(define generic-collision-properties
- (cons 'collision-interface
- (list
- (list 'collisionMergeDotted boolean? 'merge-differently-dotted)
- )
- )
- )
-
-(define generic-slur-properties
- (cons 'slur-interface
- (list
- (list 'slurVerticalDirection dir? 'direction)
- (list 'verticalDirection dir? 'direction)
- (list 'slurDash number? 'dashed))))
-
-(define generic-timesig-properties
- (cons 'time-signature-interface
- (list
- (list 'timeSignatureStyle string? 'style))))
-
-(define (symbol-or-boolean? s)
- (or (boolean? s) (symbol? s)))
-
-(define generic-tuplet-spanner-properties
- (cons 'tuplet-spanner-interface
- (list
- (list 'tupletDirection dir? 'direction)
- (list 'tupletNumberVisibility symbol-or-boolean? 'tuplet-number-visibility)
- (list 'tupletBracketVisibility symbol-or-boolean? 'tuplet-bracket-visibility)
- ))
-)
-
-
-
-
-
-;;;;;;;;;;
-;; don't forget to add these to the Generic_property_list property in
-;; engraver.ly
-
-(define generic-voice-properties
- (list
- generic-stem-properties
- generic-breathing-sign-properties
- generic-crescendo-properties
- generic-dynamic-line-spanner-properties
- generic-tie-properties
- generic-tie-column-properties
- generic-tuplet-spanner-properties
- generic-notehead-properties
- generic-porrectus-properties
- generic-rest-properties
- generic-slur-properties
- generic-beam-properties
- generic-text-properties
- generic-sustain-pedal-properties
- generic-note-column-properties
- generic-script-properties
- generic-All-properties
- ))
-
-(define generic-grace-properties generic-voice-properties)
-(define generic-staff-properties
- (list
- generic-text-properties
- generic-bar-properties
- generic-timesig-properties
- generic-clef-properties
- generic-collision-properties
- generic-sustain-pedal-properties
- generic-rest-collision-properties
- generic-volta-spanner-properties
-; generic-staff-symbol-properties
- generic-All-properties
- )
- )
-(define generic-grand-staff-properties
- (list
- generic-text-properties
- generic-bar-properties
- ))
-
-(define generic-thread-properties
- (list generic-All-properties
- generic-notehead-properties
- generic-dot-properties
- )
-
- )
-
-(define generic-lyrics-properties
- (list generic-text-properties
- )
-)
-
-(define generic-chord-staff-properties
- (list generic-chord-name-properties
- )
-)
"music-functions.scm"
"music-property-description.scm"
"auto-beam.scm"
- "generic-property.scm"
"basic-properties.scm"
"chord-name.scm"
"grob-description.scm"
(define (char i)
(invoke-char " show" i))
-(define (hairpin thick width starth endh )
- (string-append (setlinewidth thick)
- (moveto 0 starth)
- (lineto width endh)
- (moveto 0 (- starth))
- (lineto width (- endh))
- (closestroke)))
(define (dashed-slur thick dash l)
(string-append (setlineparams)
(define (text s) "")
-(define (volta h w thick vert_start vert_end)
- (string-append (setlinewidth thick)
- (setlineparams)
- (if (= vert_start 0)
- (string-append (moveto 0 0)
- (lineto 0 h))
- (moveto 0 h))
- (lineto w h)
- (if (= vert_end 0) (lineto w 0) "")
- (closestroke)))
-
-(define (tuplet ht gap dx dy thick dir)
- (let ((gapy (* (/ dy dx) gap)))
- (string-append (setlinewidth thick)
- (setlineparams)
- (moveto 0 (- (* ht dir)))
- (lineto 0 0)
- (lineto (/ (- dx gap) 2)
- (/ (- dy gapy) 2))
- (moveto (/ (+ dx gap) 2)
- (/ (+ dy gapy) 2))
- (lineto dx dy)
- (lineto dx (- dy (* ht dir)))
- (closestroke))))
(define (unknown) "\n unknown\n")
(define (dashed-slur thick dash l)
(embedded-pdf ((pdf-scm 'dashed-slur) thick dash l)))
-(define (hairpin thick w sh eh)
- (embedded-pdf ((pdf-scm 'hairpin) thick w sh eh)))
-
(define (char i)
(string-append "\\char" (inexact->string i 10) " "))
(define (text s)
(string-append "\\hbox{" (output-tex-string s) "}"))
-(define (tuplet ht gapx dx dy thick dir)
- (embedded-pdf ((pdf-scm 'tuplet) ht gapx dx dy thick dir)))
-
-(define (volta h w thick vert_start vert_end)
- (embedded-pdf ((pdf-scm 'volta) h w thick vert_start vert_end)))
(define (define-origin file line col)
(if (procedure? point-and-click)
(invoke-char " show" i))
-(define (hairpin thick width starth endh )
- (string-append
- (numbers->string (list width starth endh thick))
- " draw_hairpin"))
;; what the heck is this interface ?
(define (dashed-slur thick dash l)
(string-append "(" s ") show "))
-(define (volta h w thick vert_start vert_end)
- (string-append
- (numbers->string (list h w thick (inexact->exact vert_start) (inexact->exact vert_end)))
- " draw_volta"))
-
-(define (tuplet ht gap dx dy thick dir)
- (string-append
- (numbers->string (list ht gap dx dy thick (inexact->exact dir)))
- " draw_tuplet"))
-
-
(define (unknown)
"\n unknown\n")
(sketch-numbers->string (map mul-scale (list x y)))
"))\n"))
-(define (hairpin x y thick width starth endh )
- (string-append
- "#"
- (numbers->string (list width starth endh thick))
- " draw_hairpin"))
;; what the heck is this interface ?
(define (dashed-slur thick dash l)
(map mul-scale (list x y))) "))\n"))
-(define (volta x y h w thick vert_start vert_end)
- (string-append "#"
- (numbers->string (list h w thick (inexact->exact vert_start) (inexact->exact vert_end)))
- " draw_volta"))
-
-(define (tuplet x y ht gap dx dy thick dir)
- (string-append "#"
- (numbers->string (list ht gap dx dy thick (inexact->exact dir)))
- " draw_tuplet"))
-
-
(define (unknown)
"\n unknown\n")
(define (dashed-slur thick dash l)
(embedded-ps (list 'dashed-slur thick dash `(quote ,l))))
-(define (hairpin thick w sh eh)
- (embedded-ps (list 'hairpin thick w sh eh))
-)
-
(define (char i)
(string-append "\\char" (inexact->string i 10) " "))
(define (draw-line thick fx fy tx ty)
(embedded-ps (list 'draw-line thick fx fy tx ty)))
-(define (volta h w thick vert_start vert_end)
- (embedded-ps (list 'volta h w thick vert_start vert_end)))
(define (between-system-string string)
string
)
(translator-property-description 'ExtraVerticalExtent
number-pair? "extra vertical extent, same format as MinimumVerticalExtent")
-(translator-property-description 'Generic_property_list list? "description of the conversion.
-
-Defines names and types for generic properties. These are properties
-than can be plugged into the backend directly. See the init file
-@file{generic-property.scm} for details. For internal use only,
-deprecated.
-")
(translator-property-description 'MinimumVerticalExtent number-pair?
"minimum vertical extent, same format as VerticalExtent")
(translator-property-description 'VerticalExtent number-pair?