From: Jan Nieuwenhuizen Date: Tue, 19 Apr 2005 17:18:10 +0000 (+0000) Subject: * input/test/compound-time.ly: New file. X-Git-Tag: release/2.5.21~34 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=e2fda655acdb2d7920c1e0e1e2519f336309ec31;p=lilypond.git * input/test/compound-time.ly: New file. * input/test/circle.ly: New file. * Documentation/topdocs/NEWS.tely: Use them. * input/test/boxed-stencil.ly: Remove \score. * buildscripts/mf-to-table.py (base): Add .log dependency. * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on pfa's. Add .log dependency * scm/define-markup-commands.scm (lower): New command. * elisp/lilypond-mode.el (LilyPond-pdf-command): New command, make it default. --- diff --git a/ChangeLog b/ChangeLog index b4a06152e7..ffd240ead9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,23 @@ +2005-04-19 Jan Nieuwenhuizen + + * input/test/compound-time.ly: New file. + + * input/test/circle.ly: New file. + + * Documentation/topdocs/NEWS.tely: Use them. + + * input/test/boxed-stencil.ly: Remove \score. + + * buildscripts/mf-to-table.py (base): Add .log dependency. + + * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on + pfa's. Add .log dependency + + * scm/define-markup-commands.scm (lower): New command. + + * elisp/lilypond-mode.el (LilyPond-pdf-command): New command, + make it default. + 2005-04-19 Han-Wen Nienhuys * lily/dynamic-engraver.cc (acknowledge_grob): add note-column diff --git a/Documentation/topdocs/NEWS.tely b/Documentation/topdocs/NEWS.tely index 2cf386d68e..3563854786 100644 --- a/Documentation/topdocs/NEWS.tely +++ b/Documentation/topdocs/NEWS.tely @@ -58,24 +58,16 @@ There is a music function @code{\musicDisplay}, which will display a music expression as indented Scheme code. @item -A plus sign was added to the number font. +A plus sign was added to the number font. This enables printing of +compound time signatures + +@lilypondfile[]{compound-time.ly} @item A new @code{\circle} markup command allows for all kinds of circled texts -@lilypond[relative,relative=2,raggedright,fragment] -c1 -\set Score.markFormatter - = #(lambda (mark context) - (make-circle-markup (format-mark-numbers mark context))) -\mark \default -c2 d^\markup{\circle \finger "2"} -\override Score.BarNumber #'break-visibility = #all-visible -\override Score.BarNumber #'print-function - = #(make-stencil-circler 0.1 0.25 Text_interface::print) -@end lilypond - +@lilypondfile[]{circle.ly} @item String numbers are now printed on chords as well @@ -139,7 +131,7 @@ Point and click editing is now supported in the PS/PDF backend as well. See @ifhtml -@uref{../../user/out-www/lilypond/Point-and-click.html,Point and click} +@uref{../../user/out-www/lilypond/Point-and-click.html,Point and click}. @end ifhtml @ifnothtml the section Point and click in he user manual. @@ -212,10 +204,11 @@ for texts, including kerning and accents. @item LilyPond now uses FreeType read the Feta font as an OpenType -font. This is cleaner design and more robust. A recent version of -FontForge (11122004 or newer) and Freetype is required. +font. This is cleaner design and more robust. Recent versions of +FontForge (20041211 or newer) and Freetype are required. As a result, -As a result, the SVG backend is now a fully functional backend. +@item +the SVG backend is now a fully functional backend. @item A new script, @code{\espressivo} has been added, for a combination of @@ -282,8 +275,7 @@ Layout for titles, page header and footer can now be entered as @noindent This will set stem directions and put the cue notes in the @code{cue} -@code{Voice} - +@code{Voice}. @item Stemlets, short stems over beamed rests, have been added. diff --git a/buildscripts/mf-to-table.py b/buildscripts/mf-to-table.py index df6bca6fc7..c51b9a276a 100644 --- a/buildscripts/mf-to-table.py +++ b/buildscripts/mf-to-table.py @@ -321,7 +321,7 @@ for filenm in files: write_global_lisp_table (open (global_lisp_nm, 'w'), g) if depfile_nm: write_deps (open (depfile_nm, 'wb'), deps, - [base + '.dvi', base + '.pfa', base + '.pfb', - texfile_nm]) + [base + '.log', base + '.dvi', base + '.pfa', + base + '.pfb', texfile_nm]) if lyfile_nm: write_fontlist (open (lyfile_nm, 'w'), g, m) diff --git a/elisp/lilypond-mode.el b/elisp/lilypond-mode.el index f91a4c1213..9330df71a5 100644 --- a/elisp/lilypond-mode.el +++ b/elisp/lilypond-mode.el @@ -1,15 +1,15 @@ -;;; -;;; lilypond-mode.el --- Major mode for editing GNU LilyPond music scores -;;; -;;; source file of the GNU LilyPond music typesetter -;;; -;;; (c) 1999--2005 Jan Nieuwenhuizen -;;; -;;; Changed 2001--2003 Heikki Junes -;;; * Add PS-compilation, PS-viewing and MIDI-play (29th Aug 2001) -;;; * Keyboard shortcuts (12th Sep 2001) -;;; * Inserting tags, inspired on sgml-mode (11th Oct 2001) -;;; * Autocompletion & Info (23rd Nov 2002) +;;;; +;;;; lilypond-mode.el --- Major mode for editing GNU LilyPond music scores +;;;; +;;;; source file of the GNU LilyPond music typesetter +;;;; +;;;; (c) 1999--2005 Jan Nieuwenhuizen +;;;; +;;;; Changed 2001--2003 Heikki Junes +;;;; * Add PS-compilation, PS-viewing and MIDI-play (29th Aug 2001) +;;;; * Keyboard shortcuts (12th Sep 2001) +;;;; * Inserting tags, inspired on sgml-mode (11th Oct 2001) +;;;; * Autocompletion & Info (23rd Nov 2002) ;;; Inspired on auctex @@ -19,7 +19,7 @@ (require 'easymenu) (require 'compile) -(defconst LilyPond-version "2.3.17" +(defconst LilyPond-version "2.5.20" "`LilyPond-mode' version number.") (defconst LilyPond-help-address "bug-lilypond@gnu.org" @@ -327,18 +327,24 @@ in LilyPond-include-path." :group 'LilyPond :type 'string) -(defcustom LilyPond-xdvi-command "xdvi" +(defcustom LilyPond-dvi-command "xdvi" "Command used to display DVI files." :group 'LilyPond :type 'string) -(defcustom LilyPond-gv-command "gv --watch" +(defcustom LilyPond-ps-command "gv --watch" "Command used to display PS files." :group 'LilyPond :type 'string) +(defcustom LilyPond-pdf-command "xpdf" + "Command used to display PDF files." + + :group 'LilyPond + :type 'string) + (defcustom LilyPond-midi-command "timidity" "Command used to play MIDI files." @@ -416,23 +422,21 @@ in LilyPond-include-path." ;; Should expand this to include possible keyboard shortcuts which ;; could then be mapped to define-key and menu. `( - ("LilyPond" . (,(concat LilyPond-lilypond-command " -ftex %s") "%s" "%l" "View")) - ("TeX" . ("tex '\\nonstopmode\\input %t'" "%t" "%d" "View")) - - ("2Dvi" . (,(concat LilyPond-lilypond-command " -f tex %s") "%s" "%d" "LaTeX")) - ("2PS" . (,(concat LilyPond-lilypond-command " -f ps %s") "%s" "%p" "ViewPS")) + ("LilyPond" . (,(concat LilyPond-lilypond-command " %s") "%s" "%l" "View")) + ("TeX" . ("tex '\\nonstopmode\\input %t'" "%t" "%d" "ViewDVI")) + ("2Dvi" . (,(concat LilyPond-lilypond-command " -b tex %s") "%s" "%d" "LaTeX")) + ("2PS" . (,(concat LilyPond-lilypond-command "-b ps %s") "%s" "%p" "ViewPS")) ("2Midi" . (,(concat LilyPond-lilypond-command " -m %s") "%s" "%m" "Midi")) ("2Gnome" . (,(concat LilyPond-lilypond-command " -b gnome %s"))) ("Book" . ("lilypond-book %x" "%x" "%l" "LaTeX")) - ("LaTeX" . ("latex '\\nonstopmode\\input %l'" "%l" "%d" "View")) - - ;; point-n-click (arg: exits upop USR1) - ("SmartView" . ("xdvi %d")) + ("LaTeX" . ("latex '\\nonstopmode\\input %l'" "%l" "%d" "ViewDVI")) ;; refreshes when kicked USR1 - ("View" . (,(concat LilyPond-xdvi-command " %d"))) - ("ViewPS" . (,(concat LilyPond-gv-command " %p"))) + ("View" . (,(concat LilyPond-pdf-command " %f"))) + ("ViewPDF" . (,(concat LilyPond-pdf-command " %f"))) + ("ViewDVI" . (,(concat LilyPond-dvi-command " %d"))) + ("ViewPS" . (,(concat LilyPond-ps-command " %p"))) ;; The following are refreshed in LilyPond-command: ;; - current-midi depends on cursor position and @@ -468,6 +472,7 @@ LilyPond-expand-list. ("%s" . ".ly") ("%t" . ".tex") ("%d" . ".dvi") + ("%f" . ".pdf") ("%p" . ".ps") ("%l" . ".tex") ("%x" . ".tely") @@ -571,26 +576,22 @@ Must be the car of an entry in `LilyPond-command-alist'." (defun LilyPond-command-formatmidi () "Format the midi output of the current document." (interactive) - (LilyPond-command (LilyPond-command-menu "2Midi") 'LilyPond-get-master-file) -) + (LilyPond-command (LilyPond-command-menu "2Midi") 'LilyPond-get-master-file)) -(defun LilyPond-command-smartview () - "View the dvi output of current document." +(defun LilyPond-command-view () + "View the output of current document." (interactive) - (LilyPond-command (LilyPond-command-menu "SmartView") 'LilyPond-get-master-file) -) + (LilyPond-command-viewpdf)) -(defun LilyPond-command-view () - "View the dvi output of current document." +(defun LilyPond-command-viewpdf () + "View the ps output of current document." (interactive) - (LilyPond-command (LilyPond-command-menu "View") 'LilyPond-get-master-file) -) + (LilyPond-command (LilyPond-command-menu "ViewPDF") 'LilyPond-get-master-file)) (defun LilyPond-command-viewps () "View the ps output of current document." (interactive) - (LilyPond-command (LilyPond-command-menu "ViewPS") 'LilyPond-get-master-file) -) + (LilyPond-command (LilyPond-command-menu "ViewPS") 'LilyPond-get-master-file)) ;; FIXME, this is broken (defun LilyPond-region-file (begin end) @@ -758,8 +759,7 @@ command." (define-key LilyPond-mode-map "\C-c\C-d" 'LilyPond-command-formatdvi) (define-key LilyPond-mode-map "\C-c\C-f" 'LilyPond-command-formatps) (define-key LilyPond-mode-map "\C-c\C-g" 'LilyPond-command-formatgnome) - (define-key LilyPond-mode-map "\C-c\C-s" 'LilyPond-command-smartview) - (define-key LilyPond-mode-map "\C-c\C-v" 'LilyPond-command-view) + (define-key LilyPond-mode-map "\C-c\C-s" 'LilyPond-command-view) (define-key LilyPond-mode-map "\C-c\C-p" 'LilyPond-command-viewps) (define-key LilyPond-mode-map [(control c) return] 'LilyPond-command-current-midi) (define-key LilyPond-mode-map [(control c) (control return)] 'LilyPond-command-all-midi) @@ -983,7 +983,6 @@ command." '([ "LaTeX" (LilyPond-command (LilyPond-command-menu "LaTeX") 'LilyPond-get-master-file) ]) '([ "Kill jobs" LilyPond-kill-jobs t]) '("-----") - '([ "SmartView" LilyPond-command-smartview t]) '([ "View" LilyPond-command-view t]) '([ "ViewPS" LilyPond-command-viewps t]) '("-----") @@ -1099,7 +1098,7 @@ COMMANDS VARIABLES LilyPond-command-alist\t\talist from name to command -LilyPond-xdvi-command\t\tcommand to display dvi files -- bit superfluous" +LilyPond-dvi-command\t\tcommand to display dvi files -- bit superfluous" (interactive) ;; set up local variables (kill-all-local-variables) diff --git a/input/test/boxed-stencil.ly b/input/test/boxed-stencil.ly index 70aa54b3d8..1cc4e71747 100644 --- a/input/test/boxed-stencil.ly +++ b/input/test/boxed-stencil.ly @@ -1,29 +1,28 @@ \version "2.4.0" \header { -texidoc = "@cindex Boxed Stencil + texidoc = "@cindex Boxed Stencil The @code{print-function} can be overridden to draw a box around an arbitrary grob. " } - \score { \relative c'' { +\layout{raggedright = ##t} +\relative c'' { - \override TextScript #'print-function = - #(make-stencil-boxer 0.1 0.3 Text_interface::print) + \override TextScript #'print-function = + #(make-stencil-boxer 0.1 0.3 Text_interface::print) - c'4^"foo" + c'4^"foo" -\override Stem #'print-function = - #(make-stencil-boxer 0.05 0.25 Stem::print) + \override Stem #'print-function = + #(make-stencil-boxer 0.05 0.25 Stem::print) -\override Score.RehearsalMark #'print-function = - #(make-stencil-boxer 0.15 0.3 Text_interface::print) - b8 -\revert Stem #'print-function + \override Score.RehearsalMark #'print-function = + #(make-stencil-boxer 0.15 0.3 Text_interface::print) + b8 + \revert Stem #'print-function - c4. c4 \mark "F" c1 - } -\layout{raggedright = ##t} + c4. c4 \mark "F" c1 } diff --git a/input/test/circle.ly b/input/test/circle.ly new file mode 100644 index 0000000000..6c0bf5ad24 --- /dev/null +++ b/input/test/circle.ly @@ -0,0 +1,23 @@ + +\version "2.4.0" +\header { +texidoc = "@cindex Circle + +Circles can be drawn around various objects. + +" +} + +\layout{raggedright = ##t} + +\relative c'{ +c1 +\set Score.markFormatter + = #(lambda (mark context) + (make-circle-markup (format-mark-numbers mark context))) +\mark \default +c2 d^\markup{\circle \finger "2"} +\override Score.BarNumber #'break-visibility = #all-visible +\override Score.BarNumber #'print-function + = #(make-stencil-circler 0.1 0.25 Text_interface::print) +} \ No newline at end of file diff --git a/input/test/compound-time.ly b/input/test/compound-time.ly new file mode 100644 index 0000000000..43366dc6b0 --- /dev/null +++ b/input/test/compound-time.ly @@ -0,0 +1,38 @@ + +\version "2.5.20" +\header { +texidoc = "@cindex compound time +@cindex plus + +Compound time signatures can be printed. + +" +} + +\layout{raggedright = ##t} + +#(define (compound-time grob one two num) + (interpret-markup + (ly:grob-layout grob) + '(((baseline-skip . 2) + (word-space . 2) + (font-family . number))) + (markup + #:line ( #:column (one num) #:lower 1 "+" #:column (two num))))) +% ;; #:line ( #:column (one num) #:lower 1 "+" #:column (two num))))) + +\relative { + %% compound time signature hack + \time 5/8 + \override Staff.TimeSignature #'print-function + = #(lambda (grob) (compound-time grob "2" "3" "8")) + + %% manual beaming, auto beam engraver cannot handle compound time, + %% it extends 2/8 pattern to 4/8, which does not work. + + %% Hmm, why don't we just junk the modulo functionality, and + %% write-out all endings explicitely, we get compound time handling + %% for free? + + c4 c8[ c c] +} diff --git a/mf/GNUmakefile b/mf/GNUmakefile index e6ab2d54bb..040d106606 100644 --- a/mf/GNUmakefile +++ b/mf/GNUmakefile @@ -17,11 +17,12 @@ FETA_MF_FILES = $(wildcard feta[0-9]*.mf)\ STAFF_SIZES = 11 13 14 16 18 20 23 26 BRACES = a b c d e f g h i +PFA_PREFIX = PFA OTF_FILES = $(STAFF_SIZES:%=$(outdir)/emmentaler-%.otf)\ $(outdir)/aybabtu.otf -PFA_OTF_FILES = $(STAFF_SIZES:%=$(outdir)/PFAemmentaler-%.pfa)\ - $(outdir)/PFAaybabtu.pfa +PFA_OTF_FILES = $(STAFF_SIZES:%=$(outdir)/$(PFA_PREFIX)emmentaler-%.pfa)\ + $(outdir)/$(PFA_PREFIX)aybabtu.pfa PE_SCRIPTS = $(STAFF_SIZES:%=$(outdir)/emmentaler-%.pe)\ $(STAFF_SIZES:%=$(outdir)/emmentaler-%.dep) OTF_TABLES = $(STAFF_SIZES:%=$(outdir)/feta%.otf-table)\ @@ -57,18 +58,63 @@ MFTRACE_FLAGS=$(if $(ENCODING_FILE),--encoding $(ENCODING_FILE),) --no-afm # 2. are not included with teTeX # -$(outdir)/%.cff.ps $(outdir)/PFA%.pfa $(outdir)/%.cff $(outdir)/%.otf $(outdir)/%.svg: $(outdir)/%.pe +$(outdir)/%.cff.ps $(outdir)/$(PFA_PREFIX)%.pfa $(outdir)/%.cff $(outdir)/%.otf $(outdir)/%.svg: $(outdir)/%.pe (cd $(outdir) && $(FONTFORGE) -script $(notdir $<)) $(PYTHON) $(buildscript-dir)/ps-embed-cff.py $(basename $<).cff `cat $(basename $<).fontname` $(basename $<).cff.ps -rm $(outdir)/*.scale.pfa +# ugh, this does not work +$(outdir)/%.pfa: $(outdir)/%.log +$(outdir)/feta-alphabet%.pfa: $(outdir)/feta-alphabet%.log +$(outdir)/emmentaler-%.otf $(outdir)/$(PFA_PREFIX)emmentaler-%.pfa $(outdir)/emmentaler%.cff $(outdir)/emmentaler%.svg: $(outdir)/feta%.pfa $(outdir)/feta-alphabet%.pfa $(outdir)/parmesan%.pfa + +# AARGH? + +$(outdir)/feta11.pfa: $(outdir)/feta11.log +$(outdir)/feta13.pfa: $(outdir)/feta13.log +$(outdir)/feta14.pfa: $(outdir)/feta14.log +$(outdir)/feta16.pfa: $(outdir)/feta16.log +$(outdir)/feta18.pfa: $(outdir)/feta18.log +$(outdir)/feta20.pfa: $(outdir)/feta20.log +$(outdir)/feta23.pfa: $(outdir)/feta23.log +$(outdir)/feta26.pfa: $(outdir)/feta26.log + +$(outdir)/feta-alphabet11.pfa: $(outdir)/feta-alphabet11.log +$(outdir)/feta-alphabet13.pfa: $(outdir)/feta-alphabet13.log +$(outdir)/feta-alphabet14.pfa: $(outdir)/feta-alphabet14.log +$(outdir)/feta-alphabet16.pfa: $(outdir)/feta-alphabet16.log +$(outdir)/feta-alphabet18.pfa: $(outdir)/feta-alphabet18.log +$(outdir)/feta-alphabet20.pfa: $(outdir)/feta-alphabet20.log +$(outdir)/feta-alphabet23.pfa: $(outdir)/feta-alphabet23.log +$(outdir)/feta-alphabet26.pfa: $(outdir)/feta-alphabet26.log + +$(outdir)/parmesan11.pfa: $(outdir)/parmesan11.log +$(outdir)/parmesan13.pfa: $(outdir)/parmesan13.log +$(outdir)/parmesan14.pfa: $(outdir)/parmesan14.log +$(outdir)/parmesan16.pfa: $(outdir)/parmesan16.log +$(outdir)/parmesan18.pfa: $(outdir)/parmesan18.log +$(outdir)/parmesan20.pfa: $(outdir)/parmesan20.log +$(outdir)/parmesan23.pfa: $(outdir)/parmesan23.log +$(outdir)/parmesan26.pfa: $(outdir)/parmesan26.log + +$(outdir)/$(PFA_PREFIX)emmentaler-11.otf $(outdir)/$(PFA_PREFIX)emmentaler-11.pfa: $(outdir)/feta11.pfa $(outdir)/feta-alphabet11.pfa $(outdir)/parmesan11.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-13.otf $(outdir)/$(PFA_PREFIX)emmentaler-13.pfa: $(outdir)/feta13.pfa $(outdir)/feta-alphabet13.pfa $(outdir)/parmesan13.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-14.otf $(outdir)/$(PFA_PREFIX)emmentaler-14.pfa: $(outdir)/feta14.pfa $(outdir)/feta-alphabet14.pfa $(outdir)/parmesan14.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-16.otf $(outdir)/$(PFA_PREFIX)emmentaler-16.pfa: $(outdir)/feta16.pfa $(outdir)/feta-alphabet16.pfa $(outdir)/parmesan16.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-18.otf $(outdir)/$(PFA_PREFIX)emmentaler-18.pfa: $(outdir)/feta18.pfa $(outdir)/feta-alphabet18.pfa $(outdir)/parmesan18.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-20.otf $(outdir)/$(PFA_PREFIX)emmentaler-20.pfa: $(outdir)/feta20.pfa $(outdir)/feta-alphabet20.pfa $(outdir)/parmesan20.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-23.otf $(outdir)/$(PFA_PREFIX)emmentaler-23.pfa: $(outdir)/feta23.pfa $(outdir)/feta-alphabet23.pfa $(outdir)/parmesan23.pfa +$(outdir)/$(PFA_PREFIX)emmentaler-26.otf $(outdir)/$(PFA_PREFIX)emmentaler-26.pfa: $(outdir)/feta26.pfa $(outdir)/feta-alphabet26.pfa $(outdir)/parmesan26.pfa + $(outdir)/%.otf-table: $(outdir)/%.lisp $(if $(findstring brace,$<),,$(subst feta,parmesan,$<)) cat $< \ $(if $(findstring brace,$<),,$(subst feta,parmesan,$<)) \ $(if $(findstring brace,$<),,$(subst feta,feta-alphabet,$<)) > $@ -$(outdir)/aybabtu.otf $(outdir)/PFAaybabtu.pfa: $(outdir)/aybabtu.subfonts $(outdir)/aybabtu.fontname $(outdir)/aybabtu.otf-table $(outdir)/aybabtu.otf-gtable $(outdir)/aybabtu.pe +$(outdir)/aybabtu.otf $(outdir)/$(PFA_PREFIX)aybabtu.pfa: $(outdir)/aybabtu.subfonts $(outdir)/aybabtu.fontname $(outdir)/aybabtu.otf-table $(outdir)/aybabtu.otf-gtable $(outdir)/aybabtu.pe + +$(outdir)/aybabtu.otf $(outdir)/$(PFA_PREFIX)aybabtu.pfa $(outdir)/aybabtu.cff $(outdir)/aybabtu.svg: $(BRACES:%=$(outdir)/feta-braces-%.pfa) $(outdir)/aybabtu.fontname: echo -n 'aybabtu' > $@ @@ -186,10 +232,10 @@ $(outdir)/lilypond.map: GNUmakefile for i in $(FETA_FONTS); do echo $$i $$i '<'$$i.pfa; done > $@ for i in $(STAFF_SIZES); do\ echo "Emmentaler-$$i Emmentaler-$$i > $@ echo "Aybabtu-Regular Aybabtu-Regular > $@ - echo "PFAAybabtu-Regular PFAAybabtu-Regular > $@ + echo "$(PFA_PREFIX)Aybabtu-Regular $(PFA_PREFIX)Aybabtu-Regular > $@ # # FIXME: needed for make web on Debian/unstable -- not in any other .map file echo "FreeSans FreeSans > $@ @@ -199,10 +245,10 @@ $(outdir)/Fontmap.lily: GNUmakefile for i in $(FETA_FONTS); do echo "/$$i ($$i.pfa);" ; done > $@ for i in $(STAFF_SIZES); do \ echo "/Emmentaler-$$i (emmentaler-$$i.cff.ps);" ; \ - echo "/PFAEmmentaler-$$i (PFAemmentaler-$$i.pfa);" \ + echo "/$(PFA_PREFIX)Emmentaler-$$i ($(PFA_PREFIX)emmentaler-$$i.pfa);" \ done >> $@ echo "/Aybabtu (aybabtu.cff.ps);" >> $@ - echo "/PFAAybabtu (PFAaybabtu.pfa);" >> $@ + echo "/$(PFA_PREFIX)Aybabtu ($(PFA_PREFIX)aybabtu.pfa);" >> $@ local-clean: rm -f mfplain.mem mfplain.log diff --git a/mf/feta-nummer-code.mf b/mf/feta-nummer-code.mf index 6c1cf1a2fe..3954fa1a02 100644 --- a/mf/feta-nummer-code.mf +++ b/mf/feta-nummer-code.mf @@ -249,9 +249,10 @@ fet_beginchar ("Space", "space"); fet_endchar; -code := 42; +code := 42; % , 43 + fet_beginchar ("Plus", "plus"); - set_char_box (0, .5 height#, -0.25 height#, 0.75 height#); + set_char_box (0, .5 height#, -0.25 height#, 0.75 height#); save hthick, vthick, size, outer_hsize, outer_vsize; @@ -270,11 +271,11 @@ fet_beginchar ("Plus", "plus"); z2 = (centerx + hthick/2, h); labels(1,2); draw_rounded_block (z1, z2, hthick); - draw_rounded_block ((0, centery - vthick/2), (w, (centery + vthick/2)), vthick); + draw_rounded_block ((0, centery - vthick/2), + (w, (centery + vthick/2)), vthick); fet_endchar; - code := 43; % , = 44 fet_beginchar ("Numeral comma", "comma"); diff --git a/po/lilypond.pot b/po/lilypond.pot index eeb52ca225..3569865ae3 100644 --- a/po/lilypond.pot +++ b/po/lilypond.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2005-04-18 14:27+0200\n" +"POT-Creation-Date: 2005-04-18 20:56+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -53,13 +53,13 @@ msgstr "" msgid "It comes with NO WARRANTY." msgstr "" -#: lilylib.py:125 warn.cc:44 input.cc:79 lily/input.cc:79 +#: lilylib.py:125 warn.cc:44 input.cc:79 lily/input.cc:79 flower/warn.cc:44 #, c-format, python-format msgid "warning: %s" msgstr "" #: lilylib.py:128 warn.cc:50 input.cc:85 input.cc:93 lily/input.cc:85 -#: lily/input.cc:93 +#: lily/input.cc:93 flower/warn.cc:50 #, c-format, python-format msgid "error: %s" msgstr "" @@ -541,59 +541,62 @@ msgstr "" msgid "Wrote `%s'" msgstr "" -#: getopt-long.cc:143 +#: getopt-long.cc:143 flower/getopt-long.cc:143 #, c-format msgid "option `%s' requires an argument" msgstr "" -#: getopt-long.cc:147 +#: getopt-long.cc:147 flower/getopt-long.cc:147 #, c-format msgid "option `%s' doesn't allow an argument" msgstr "" -#: getopt-long.cc:151 +#: getopt-long.cc:151 flower/getopt-long.cc:151 #, c-format msgid "unrecognized option: `%s'" msgstr "" -#: getopt-long.cc:158 +#: getopt-long.cc:158 flower/getopt-long.cc:158 #, c-format msgid "invalid argument `%s' to option `%s'" msgstr "" -#: warn.cc:64 grob.cc:632 lily/grob.cc:632 +#: warn.cc:64 grob.cc:632 lily/grob.cc:632 flower/warn.cc:64 #, c-format msgid "programming error: %s" msgstr "" -#: warn.cc:65 +#: warn.cc:65 flower/warn.cc:65 msgid "continuing, cross fingers" msgstr "" #. #. todo i18n. #. -#: kpath.c:142 +#. +#. todo i18n. +#. +#: kpath.c:142 kpath-guile/kpath.c:142 #, c-format msgid "can't dlopen: %s: %s" msgstr "" -#: kpath.c:143 +#: kpath.c:143 kpath-guile/kpath.c:143 #, c-format msgid "install package: %s or %s" msgstr "" -#: kpath.c:156 +#: kpath.c:156 kpath-guile/kpath.c:156 #, c-format msgid "no such symbol: %s: %s" msgstr "" -#: kpath.c:179 +#: kpath.c:179 kpath-guile/kpath.c:179 #, c-format msgid "error opening kpathsea library" msgstr "" -#: kpath.c:180 +#: kpath.c:180 kpath-guile/kpath.c:180 #, c-format msgid "aborting" msgstr "" diff --git a/scm/define-markup-commands.scm b/scm/define-markup-commands.scm index 8c0d58cb62..b0ab1ff3db 100644 --- a/scm/define-markup-commands.scm +++ b/scm/define-markup-commands.scm @@ -513,10 +513,18 @@ See @usermanref{The Feta font} for a complete listing of the possible glyphs." letter 'A'." (ly:get-glyph (ly:paper-get-font layout props) num)) +(def-markup-command (lower layout props amount arg) (number? markup?) + " +Lower @var{arg}, by the distance @var{amount}. +A negative @var{amount} indicates raising, see also @code{\raise}. +" + (ly:stencil-translate-axis (interpret-markup layout props arg) + (- amount) Y)) + (def-markup-command (raise layout props amount arg) (number? markup?) " -This raises @var{arg}, by the distance @var{amount}. -A negative @var{amount} indicates lowering: +Raise @var{arg}, by the distance @var{amount}. +A negative @var{amount} indicates lowering, see also @code{\lower}. @c @lilypond[verbatim,fragment,relative=1] c1^\\markup { C \\small \\raise #1.0 \\bold { \"9/7+\" }} @@ -530,8 +538,7 @@ If the text object itself is positioned above or below the staff, then positions it next to the staff cancels any shift made with @code{\\raise}. For vertical positioning, use the @code{padding} and/or @code{extra-offset} properties. " - (ly:stencil-translate-axis (interpret-markup layout props arg) - amount Y)) + (ly:stencil-translate-axis (interpret-markup layout props arg) amount Y)) (def-markup-command (fraction layout props arg1 arg2) (markup? markup?) "Make a fraction of two markups." diff --git a/scm/markup.scm b/scm/markup.scm index 9e48d7395a..3a679b2416 100644 --- a/scm/markup.scm +++ b/scm/markup.scm @@ -148,13 +148,15 @@ Use `markup*' in a \\notes block." (string->symbol (string-append "make-" (symbol->string (keyword->symbol key)) "-markup"))) (define (compile-markup-expression expr) - "Return two values: the first complete canonical markup expression found in `expr', -e.g. (make-COMMAND-markup arg1 arg2 ...), and the rest expression." + "Return two values: the first complete canonical markup expression + found in `expr', e.g. (make-COMMAND-markup arg1 arg2 ...), + and the rest expression." (cond ((and (pair? expr) (keyword? (car expr))) ;; expr === (#:COMMAND arg1 ...) (let* ((command (symbol->string (keyword->symbol (car expr)))) - (sig (markup-command-signature (car (lookup-markup-command command)))) + (sig (markup-command-signature + (car (lookup-markup-command command)))) (sig-len (length sig))) (do ((i 0 (1+ i)) (args '() args)