[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Denemo-devel] began real transposition script
From: |
Jeremiah Benham |
Subject: |
Re: [Denemo-devel] began real transposition script |
Date: |
Sat, 08 Nov 2008 19:17:29 -0600 |
On Fri, 2008-11-07 at 10:37 -0600, Jeremiah Benham wrote:
> I began writing a real transposition script
>
> (define chromatic_notes '(
> ("a" 0)
> ("b" 1)
> ("c" 2)
> ("d" 3)
> ("e" 4)
> ("f" 5)
> ("g" 6)))
>
> (define sharp_list (list "a" "ais" "b" "c" "cis" "d" "dis" "e" "f" "fis"
> "g" "gis"))
>
> (define transpose
> (lambda (note modulate)
> (list-ref sharp_list (+ modulate (car (cdr (assoc note
> chromatic_notes)))))))
>
>
> Am I on the right path with this. You call
> (transpose notename transpose_half)
> for example
> (transpose "b" 5)
> returns dis
>
> It is obvious I need to finish filling out chromatic_notes list. The
> function also does not yet support negative transpose direction. The
> note returned are also sharp biased. I would need a switch to choose a
> flat list. How do you recommend I interface this with denemo.
I think at first it would have to be a popup dialog. At first it would
only be text above a text input field where something asked the
transposition amount and then a few switches allowing users to turn on
filters confining notes to Scales, Modality, Chords, Only_Sharps,
Only_Flats etc ... I can easily come up with the filters using a numeric
system.
I think this can start to be the base of doing some algorhythmic patern
based composition. I bet some good ideas can be "borrowed" from Common
Music. I am still going to read through the lilypond transposition
code.
Jeremiah
> I thought
> I could find the frist letter returned by the transpose function then in
> edit mode change that note to the transposed note base. Then parse the
> string to find out the amount of sharps or flats that need to be added.
> Any suggestions?
>
> Jeremiah
>
>
>
>
>
>
> _______________________________________________
> Denemo-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/denemo-devel
Re: [Denemo-devel] began real transposition script,
Jeremiah Benham <=