# opmo

2,516

1. ## resolved Combination Function Result (is it rigth ?)

Done: (combination 3 '(0 1 2 3 4 5)) => ((0 1 2) (0 1 3) (0 1 4) (0 1 5) (0 2 3) (0 2 4) (0 2 5) (0 3 4) (0 3 5) (0 4 5) (1 2 3) (1 2 4) (1 2 5) (1 3 4) (1 3 5) (1 4 5) (2 3 4) (2 3 5) (2 4 5) (3 4 5)) (combination 3 '(0 1 2 3 4 5) :permute t) => ((0 1 2) (0 2 1) (1 0 2) (1 2 0) (2 0 1) (2 1 0) (0 1 3) (0 3 1) (1 0 3) (1 3 0) (3 0 1) (3 1 0) (0 1 4) (0 4 1) (1 0 4) (1 4 0) (4 0 1) (4 1 0) (0 1 5) (0 5 1) (1 0 5) (1 5 0) (5 0 1) (5 1 0) (0 2 3) (0 3 2) (2 0 3) (2 3 0) (3 0 2) (3 2 0) (0 2 4) (0 4 2) (2 0 4) (2 4 0) (4 0 2) (4 2 0) (0 2 5) (0 5 2) (2 0 5) (2 5 0) (5 0 2) (5 2 0) (0 3 4) (0 4 3) (3 0 4) (3 4 0) (4 0 3) (4 3 0) (0 3 5) (0 5 3) (3 0 5) (3 5 0) (5 0 3) (5 3 0) (0 4 5) (0 5 4) (4 0 5) (4 5 0) (5 0 4) (5 4 0) (1 2 3) (1 3 2) (2 1 3) (2 3 1) (3 1 2) (3 2 1) (1 2 4) (1 4 2) (2 1 4) (2 4 1) (4 1 2) (4 2 1) (1 2 5) (1 5 2) (2 1 5) (2 5 1) (5 1 2) (5 2 1) (1 3 4) (1 4 3) (3 1 4) (3 4 1) (4 1 3) (4 3 1) (1 3 5) (1 5 3) (3 1 5) (3 5 1) (5 1 3) (5 3 1) (1 4 5) (1 5 4) (4 1 5) (4 5 1) (5 1 4) (5 4 1) (2 3 4) (2 4 3) (3 2 4) (3 4 2) (4 2 3) (4 3 2) (2 3 5) (2 5 3) (3 2 5) (3 5 2) (5 2 3) (5 3 2) (2 4 5) (2 5 4) (4 2 5) (4 5 2) (5 2 4) (5 4 2) (3 4 5) (3 5 4) (4 3 5) (4 5 3) (5 3 4) (5 4 3))
2. ## resolved Combination Function Result (is it rigth ?)

I will change the combination to the definition and will add an additional function combination-permute which will return what you are looking for: ((0 1 2) (0 1 3) (0 1 4) (0 1 5) (0 2 1) (0 2 3) (0 2 4) (0 2 5) (0 3 1) (0 3 2) (0 3 4) (0 3 5) (0 4 1) (0 4 2) (0 4 3) (0 4 5) (0 5 1) (0 5 2) (0 5 3) (0 5 4 (1 0 2) (1 0 3) (1 0 4) (1 0 5) (1 2 0) (1 2 3) (1 2 4) (1 2 5) (1 3 0) (1 3 2) (1 3 4) (1 3 5) (1 4 0) (1 4 2) (1 4 3) (1 4 5) (1 5 0) (1 5 2) (1 5 3) (1 5 4) (2 0 1) (2 0 3) (2 0 4) (2 0 5) (2 1 0) (2 1 3) (2 1 4) (2 1 5) (2 3 0) (2 3 1) (2 3 4) (2 3 5) (2 4 0) (2 4 1) (2 4 3) (2 4 5) (2 5 0) (2 5 1) (2 5 3) (2 5 4) (3 0 1) (3 0 2) (3 0 4) (3 0 5) (3 1 0) (3 1 2) (3 1 4) (3 1 5) (3 2 0) (3 2 1) (3 2 4) (3 2 5) (3 4 0) (3 4 1) (3 4 2) (3 4 5) (3 5 0) (3 5 1) (3 5 2) (3 5 4) (4 0 1) (4 0 2) (4 0 3) (4 0 5) (4 1 0) (4 1 2) (4 1 3) (4 1 5) (4 2 0) (4 2 1) (4 2 3) (4 2 5) (4 3 0) (4 3 1) (4 3 2) (4 3 5) (4 5 0) (4 5 1) (4 5 2) (4 5 3) (5 0 1) (5 0 2) (5 0 3) (5 0 4) (5 1 0) (5 1 2) (5 1 3) (5 1 4) (5 2 0) (5 2 1) (5 2 3) (5 2 4) (5 3 0) (5 3 1) (5 3 2) (5 3 4) (5 4 0) (5 4 1) (5 4 2) (5 4 3)) The result of (combination 3 '(0 1 2 3 4 5)) will be: ((0 1 2) (0 1 3) (0 1 4) (0 1 5) (0 1 6) (0 2 3) (0 2 4) (0 2 5) (0 2 6) (0 3 4) (0 3 5) (0 3 6) (0 4 5) (0 4 6) (0 5 6) (1 2 3) (1 2 4) (1 2 5) (1 2 6) (1 3 4) (1 3 5) (1 3 6) (1 4 5) (1 4 6) (1 5 6) (2 3 4) (2 3 5) (2 3 6) (2 4 5) (2 4 6) (2 5 6) (3 4 5) (3 4 6) (3 5 6) (4 5 6))
3. ## resolved Combination Function Result (is it rigth ?)

The result is correct. The function returns unique combination. 512 can't be as well 521.
4. ## presentation Opusmodus Presentation

No live streaming.
5. ## Note heads - diamond

It is fixed already - next update.

7. ## resolved how to use ties correct

The result is correct. Possibly the transposition could be done before the make-omn: (setf rhy '(e e_3q 3q 3q_e e_3q_3q 3q)) (setf pit '((c4 d4 e4 f4) (g4 a4))) (setf pit2 (pitch-transpose 2 pit)) (setf omn (make-omn :length rhy :pitch pit2)) At any point (usually at the end of your work) you can run quantize function to make the result look good (tuplet grouping) in notation. (setf rhy '(1/8 5/24 1/12 5/24 7/24 1/12)) (setf pit '((c4 d4 e4 f4) (g4 a4))) (setf pit2 (pitch-transpose 2 pit)) (setf omn (make-omn :length rhy :pitch pit2)) (quantize omn '(1 2 3 4)) => (e d4 e_3q e4 3q fs4 3q_e g4 e_3h a4 3q b4)
8. ## fermata combined with changing tempo results in wrong tempo in MIDI output

Thank you for the report. It is a bug indeed.
9. ## resolved how to use ties correct

with ratios: '(1/8 1/8_1/12 1/12 1/12_1/8 1/8_1/6 1/12)
10. ## resolved how to use ties correct

tie is an attribute and not a length tie. The solution: '(e e 3q 3q 3q_e e)) (setf pitches '((c4 d4 e4 f4) (g4 a4))) (setf rhy '(e e_3q 3q 3q_e e_3q_3q 3q)) (make-omn :length rhy :pitch pitches)
11. ## resolved counterpoint function

with :set 'your-set-name (counterpoint patterns '(((- 2 3 -)) ((4 * * 6)) ((1 - - 2)) ((5 6 1 2))) :set 'your-set :index 'voice :global-polyphony '((1 p) (2 o) (10 o) (11 o)) :iterate t :global-methods '((fl) (cl) (hn) (vc)))
12. ## presentation Opusmodus Presentation

Opusmodus - Music Composition System Presentation by Stéphane Boussuge MusikQuartier Mariahilferstrasse 51 / R19 1060 Wien Austria
13. ## Editor Commands / customize shortcuts

"Alt" on Mac is option key. I would say yes.
14. ## Editor Commands / customize shortcuts

M = option key C = control key Example: M-n = option-n C-M-q = control-option-q
15. ## Editor Commands / customize shortcuts

The Editor Command in Help menu are CCL (Emacs) shortcuts but they will work in OM. There is no possibility to customise the Opusmodus shortcuts (GUI) commands at present.
16. ## Quarter tons / midi export

Notion app is for Mac, possibly works on iPad as well.
17. ## Quarter tons / midi export

Notion app works very well (musicxml import) with microtonal scores. Snippet-Notion.mp4
18. ## Quarter tons / midi export

One possible solution would to record the Opusmodus playback in your DAW midi. Or you set the multi ports to deal with the microtonality - check the Microtonality doc. The main problem here is that not many application support the MTS, which is a big shame.
19. ## resolved error warning: Undeclared free variable

Here it is: (defun pcs-count-plot (sequence) (do-verbose ("pcs-count-plot") (let* ((i (sort-asc (flatten (modus (pitch-to-integer (melodize (omn :pitch sequence))))))) (r (count-repeat i)) (l (mapcar 'list (remove-duplicates i) r))) (xy-plot l :point-radius 4 :style :axis :point-style :hollow) ))) (pcs-count-plot omn) => ((0 2) (2 1) (5 1) (6 5) (8 1))
20. ## resolved error warning: Undeclared free variable

Not very clear what you like to do. What (would be) is the result of the LIST-PLOT expression. What is the input of the function. What should this do: (list (count 4 (flatten (get-pcs x))))
21. ## resolved error warning: Undeclared free variable

I need to see what you trying to do. The defparameter is possibly better a solution.
22. ## resolved Setting for displaying accidentals

The third bar is quite clear. Alternatives: (ps 'gm :ob (list '((q c5g5) (q d5f5) (q e5eb5))) :accidentals :all) or (respell '((q c5g5) (q d5f5) (q e5eb5)))
23. ## Probable error in Trope 21

Done. (trope-hexachord 21 :start 'e4) => ((e4 eb4 d4 g3b3cs4) (fs3bb3c4 f3a3 gs3)) (trope-hexachord 43 :start 'f4) => ((f4 fs4gs4bb4c5d5) (g4a4b4cs5eb5 e5))
24. ## Probable error in Trope 21

Thank you. The fix will be part of the next update.
25. ## Probable error in Trope 21

(trope-hexachord 43) I don't have the book next to me. What is the correct output.
×

• Lessons