[gsharp-cvs] CVS gsharp
rstrandh
rstrandh at common-lisp.net
Wed Jun 14 19:20:41 UTC 2006
Update of /project/gsharp/cvsroot/gsharp
In directory clnet:/tmp/cvs-serv31881
Modified Files:
gui.lisp modes.lisp
Log Message:
New commands: com-octave-up and com-octave-down that work for
clusters, bound to Meta-U and Meta-D.
They move the current note up/down by an entire octave. These
commands are useful when the automatic pitch follower gets it wrong.
--- /project/gsharp/cvsroot/gsharp/gui.lisp 2006/06/14 03:38:56 1.66
+++ /project/gsharp/cvsroot/gsharp/gui.lisp 2006/06/14 19:20:41 1.67
@@ -784,6 +784,28 @@
cursor)
(forward-element cursor)))))
+(define-gsharp-command com-octave-down ()
+ (let ((element (cur-element)))
+ (let* ((note (cur-note))
+ (new-note (make-note (- (pitch note) 7) (staff note)
+ :head (head note)
+ :accidentals (accidentals note)
+ :dots (dots note))))
+ (remove-note note)
+ (add-note element new-note)
+ (setf *current-note* new-note))))
+
+(define-gsharp-command com-octave-up ()
+ (let ((element (cur-element)))
+ (let* ((note (cur-note))
+ (new-note (make-note (+ (pitch note) 7) (staff note)
+ :head (head note)
+ :accidentals (accidentals note)
+ :dots (dots note))))
+ (remove-note note)
+ (add-note element new-note)
+ (setf *current-note* new-note))))
+
(define-gsharp-command com-sharper ()
(let* ((cluster (cur-cluster))
(note (cur-note))
--- /project/gsharp/cvsroot/gsharp/modes.lisp 2006/06/14 19:06:55 1.17
+++ /project/gsharp/cvsroot/gsharp/modes.lisp 2006/06/14 19:20:41 1.18
@@ -85,6 +85,8 @@
(set-key 'com-rotate-stem-direction 'cluster-table '((#\s :meta)))
(set-key 'com-current-increment 'cluster-table '((#\p)))
(set-key 'com-current-decrement 'cluster-table '((#\n)))
+(set-key 'com-octave-up 'cluster-table '((#\U :shift :meta)))
+(set-key 'com-octave-down 'cluster-table '((#\D :shift :meta)))
;;; lyrics mode table
More information about the Gsharp-cvs
mailing list