Cliff Posted June 4 Share Posted June 4 Beginners question: I specify a chord sequence using the very handy chord form notation. (Please do not recommend changing this way of providing input.) (setf simple-cadence '((c4 maj7) (f4 maj7) (f4 m7) (g4 7) (c4 maj7))) Next I want to translate it into block chords: (setf chords (make-omn :pitch simple-cadence :length (gen-repeat 5 '(w)) :articulation '(leg))) Unfortunately this does not give chords: I have seen expand-chord function, but I can't get it work with a list. How can I use chord-form list in the make-omn :pitch parameter ? Quote Link to comment Share on other sites More sharing options...
jesele Posted June 4 Share Posted June 4 Try this. (setf simple-cadence (mapcar 'expand-chord '((c4 maj7) (f4 maj7) (f4 m7) (g4 7) (c4 maj7)))) ;; mapping expand-chord to each sublist or (setf simple-cadence '((c4 maj7) (f4 maj7) (f4 m7) (g4 7) (c4 maj7))) (setf chords (make-omn :pitch (mapcar 'expand-chord simple-cadence) :length (gen-repeat 5 '(w)) :articulation '(leg))) Jesper opmo and Cliff 2 Quote Link to comment Share on other sites More sharing options...
opmo Posted June 4 Share Posted June 4 I will make the function to work on a chord name, list and lists of chord names: (expand-chord '((c4 maj7) (f4 maj7) (f4 m7) (g4 7) (c4 maj7)))) => (c4e4g4b4 f4a4c5e5 f4gs4c5ds5 g4b4d5f5 c4e4g4b4) jesele, Stephane Boussuge and JulioHerrlein 3 Quote Link to comment Share on other sites More sharing options...
opmo Posted June 4 Share Posted June 4 ready in 3.0.29338 Cliff and jesele 1 1 Quote Link to comment Share on other sites More sharing options...
Cliff Posted June 4 Author Share Posted June 4 Wow, phantastic how responsive you all are, thx. Quote Link to comment Share on other sites More sharing options...
Cliff Posted June 4 Author Share Posted June 4 With @opmos update: setf chords (make-omn :pitch (expand-chord simple-cadence) :length (gen-repeat 5 '(w)) :articulation '(leg))) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.