
Everything posted by o_e
-
function for choosing numbers in nested lists
Hi, Out of curiosity I asked the AI-promt Claude (https://claude.ai) and the code it spits out seem to work. Maybe it is useful as a starting point..? best (defun select-path (lists &optional start-num) (let ((current (if start-num start-num (nth (random (length (first lists))) (first lists)))) (result nil)) (push current result) (dolist (lst (rest lists)) (let* ((higher (remove-if (lambda (x) (<= x current)) lst)) (next (when higher (if (and (> (length higher) 1) (zerop (random 2))) (second higher) ; next-next higher (first higher))))) ; next higher (when next (setf current next) (push current result)))) (reverse result))) (select-path '((2 8 9 14 20 21 26) (1 2 3 7 13 14 19 25 26) (0 6 7 12 18 19 24) (0 5 11 12 17 23 24)) 8)
- OM with Disklavier
-
OM with Disklavier
Hi, You have to find out what the port name of the MIDI-Interface is, that you are using, you will find it in the Audio-MIDI-Setup/MIDI-Studio ((see screenshot above)(if you are on a mac, if you are a windows user, others have to chime in and explain how to find the port names in windows)), then you have to use that port (in my case its called "Port 1"), unless you changed it manually the disklavier is set to MIDIChannel 1. Complete score is attached. hth PS Evaluating (midi-destinations) shows all the ports seen by OM Glocken_dk.opmo
-
OM with Disklavier
Yes, I have a disklavier and as an interface a RME-Fireface 802 and I have for the use with ps a setup like this: Port 1 is the name of the Fireface as you can see in the screenshot of the Audio-MIDI-Setup, the attached "disklavier.opmo" file lives in the Def-Instrument-Sets folder and I call the disklavier with 'disk in ps. hth ole Disklavier.opmo
- random*
-
Lisp function
Thank you Stephane for the veery quick response!!
-
Lisp function
Hi, Is it possible to write a function which gives the following result: ((1)(1 2 2)(1 2 2 3 3 3)(1 2 2 3 3 3 4 4 4 4)(1 2 2 3 3 3 4 4 4 4 5 5 5 5 5))etc. Thanks for any suggestions!
-
pitch-variation
Ok, thanks, I think I don't get what pitch-variation does and what the parameters do. If someone is willing to explain, I would be very greatful, I think I don't have a clue..:-) Thanks!
-
pitch-variation
Just play around a little with pitch-variation a little, why does it makes no difference in the output what :type I choose? What am I missing? (setf chords '((h a2a3c4 c4a3a3) (h d4f3g2 f4g3d4))) (pitch-variation 0 1 4 (chord-pitch-unique chords) :type 'c :seed 23) ==>((h a3 c4 a2 a3) (h c4 a3 c4 a3) (h g2 f3 d4 f3) (h d4 f4 g3 f4)) (pitch-variation 0 1 4 (chord-pitch-unique chords) :type 'm :seed 23) ==>((h a3 c4 a2 a3) (h c4 a3 c4 a3) (h g2 f3 d4 f3) (h d4 f4 g3 f4)) (pitch-variation 0 1 4 (chord-pitch-unique chords) :type '? :seed 23) ==>((h a3 c4 a2 a3) (h c4 a3 c4 a3) (h d4 g2 f3 g2) (h d4 g3 d4 f4)) Thanks!
- length-modify
-
Documentation PDF copy paste problem
Thanks! Is the .rtfd format still possible?
-
Documentation PDF copy paste problem
I have lots of selfmade docs, which are embedded nicely in the old OM version (by putting them in the ~/Opusmodus/System Library folder). Where do I put them in the 3.x version so I can access them via the search function (There is no System Library folder any more)? And do they have to be in .pdf format (which will make them pretty useless too for me, because I often make new annotations, when calling them)? Thanks for an answer!
-
Matching length of lists
(setf num '(4 3 2 2 3 4 5)) (setf pitch '(a4 b4 c4 d4 e4)) (if (< (length num) (length pitch)) pitch num) =>(4 3 2 2 3 4 5) ;;;;;; (setf num '(4 3 2)) (setf pitch '(a4 b4 c4 d4 e4)) (if (< (length num) (length pitch)) pitch num) =>(a4 b4 c4 d4 e4) hth Edit: I think you need cond to compare the length of three lists with each other: (setf durations '(q e q e s)) (setf chords '(c4e4g4 e4g4c5)) (setf repetitions '(7 1 6 2 5 3 4 4)) (cond ((> (length chords) (and (length durations) (length repetitions))) chords) ((> (length durations) (and (length chords) (length repetitions))) durations) ((> (length repetitions) (and (length chords) (length durations))) repetitions))
-
Matching length of lists
span is your friend 🙂 (setf num '(4 3 2)) (setf pitch '(a4 b4 c4 d4 e4)) (span pitch num) ==>(4 3 2 4 3)
- remove rest(s) with dictum
-
remove rest(s) with dictum
But I can do something like this and that changes the length of the bar: (dictum '(:any e :apply q) '(e c4 d4 e4 fs4))
-
remove rest(s) with dictum
Is it possible to remove rest(s) with dictum? Thanks! Edit: Why this does not work? (dictum '(:apply (length-rest-remove x)) '(w c5 ped -e))
-
compound rhythms with ql possible?
Thank you, I will study that!
-
compound rhythms with ql possible?
-
two scores side by side possible?
Thanks Stéphane!
-
two scores side by side possible?
I found what I was after: No need to open another workspace, just rightclick the file and "open in new assistent" But I would be also good to know, how I can open multiple (different) workspaces as you suggested..?
-
two scores side by side possible?
Thanks, how would I do that, when I try File/New Workspace, the workspaces are grayed out..? Is it possible to open the same workspace multiple times?
-
two scores side by side possible?
Hi, Is it possible to have two scores (workspaces?) side by side, that would be handy to compare, copy between 2 scores (like when I open for example "Counterpoint 1.opmo"?
-
Feature request: progress bar or something equivalent
Hi, Sometimes OM needs a long time for calculating (for example counterpoint). It would be nice to have an indication that OM is working or did I overlook something?
-
Subdivision display options?
Thanks a bunch!!