+2006-02-23 Jan Nieuwenhuizen <janneke@gnu.org>
+
+ * elisp/lilypond-mode.el (count-matches-as-number): New funtion
+ for emacs < 22 compatibility.
+ (count-rexp): Use it.
+ (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
+ substring juggling (Milan Zamazal).
+
2006-02-23 Graham Percival <gpermus@gmail.com>
* Documentation/user/ basic-notation, advanced-notation,
(interactive)
(LilyPond-command (LilyPond-command-menu "MidiAll") 'LilyPond-get-master-file))
+(defun count-matches-as-number (re)
+ "Count-matches in emacs 22 backwards-incompatibly returns a number"
+ (let ((result (count-matches re)))
+ (if (stringp result)
+ (string-to-number result)
+ result)))
+
(defun count-rexp (start end rexp)
"Print number of found regular expressions in the region."
(interactive "r")
(save-restriction
(narrow-to-region start end)
(goto-char (point-min))
- (count-matches rexp))))
+ (count-matches-as-number rexp))))
(defun count-midi-words ()
"Check number of midi-scores before the curser."
(let ((fnameprefix (if (eq LilyPond-command-current 'LilyPond-command-master)
(substring (LilyPond-get-master-file) 0 -3); suppose ".ly"
LilyPond-region-file-prefix))
- (allcount (string-to-number (substring (count-midi-words) 0 -12)))
- (count (string-to-number (substring (count-midi-words-backwards) 0 -12))))
+ (allcount (count-midi-words))
+ (count (count-midi-words-backwards)))
(concat fnameprefix
(if (and (> allcount 1) (> count 0)) ; not first score
(if (eq count allcount) ; last score
(let ((fnameprefix (if (eq LilyPond-command-current 'LilyPond-command-master)
(substring (LilyPond-get-master-file) 0 -3); suppose ".ly"
LilyPond-region-file-prefix))
- (allcount (string-to-number (substring (count-midi-words) 0 -12))))
+ (allcount (count-midi-words)))
(concat (if (> allcount 0) ; at least one midi-score
(concat fnameprefix ".midi "))
(if (> allcount 1) ; more than one midi-score