;;DurAdd.CAL ;; (Add to Duration) ;; Written By 蛞蝓なめちゃん, 1997/09/10 ;; odasan@ma.catv.ne.jp ;; 機 能 : duration を 一定値増減します。 ;; 使用法 : ・対象範囲を選択したあと、本 program を実行。 ;; ・増減する値を入力します。 ;; 注 意 : ・増やし過ぎると、multiple note になります。 ;; ・duration 値が minus になる場合は ;; error message を表示します。 ;; "OK" で、 その音は 何もせず、skip します。 ;; "CANCEL" で、以降の処理を取りやめます。 ;; UNDO : 編集メニューの「元に戻す」で、 ;; 「CAL(forEachEvent)」を取消せば、元に戻ります。 (do (int n -1) ;; n = 増減する値 ... 初期値は -1 (long c) (getInt n "Add ? ticks to Duration" -32768 32767) (forEachEvent (if (== Event.Kind NOTE) (do (= c (+ n Note.Dur)) (if (< c 0) (pause "Duration < 0 [ESC] to exit") (= Note.Dur c) ) ) ) ) )