Posted February 2, 20169 yr All of us, as Opusmodus users, know the possibility to compose a piece with multiples sections and assemble later. We can use the ASSEMBLE-SEQ function in our piece for assemble some material and sections, but we also can use COMPILE-SCORE with multiple pre-defined scores assembled in one COMPILE-SCORE instruction this way: (compile-score '( score1 score2 score3 etc. ) ) This is a very convenient way for assembling multiple sections as multiple score. i put this instructions in a separate file named COMPILE-SCORE and all other section-score in files named S1, S2, S3.... But when the piece grown, you can have many score files in you workspace navigator to evaluate before compiling the full score. In that case, i add a last file named LoadAll. opmo containing the following instruction for load and read in one time all my section's scores: (mapcar 'load '( "/Users/yourUserName/Opusmodus/Scores/S1.opmo" ;; S1 for section1, s2 for section2 and so on... "/Users/yourUserName/Opusmodus/Scores/S2.opmo" "/Users/yourUserName/Opusmodus/Scores/S3.opmo" "/Users/yourUserName/Opusmodus/Scores/S4.opmo" "/Users/yourUserName/Opusmodus/Scores/S5.opmo" "/Users/yourUserName/Opusmodus/Scores/S6.opmo" "/Users/yourUserName/Opusmodus/Scores/S7.opmo" "/Users/yourUserName/Opusmodus/Scores/S8.opmo" )) Attached to this post, 2 pictures of one of my workspace showing the organisation of the files. SB.
August 1, 20168 yr Hi, I have a question. When I do (compile-score) for multiple scores at a time I get all of the arguments compiled separately; which means if I try to Audition/Notation/Export them, all I get is the last compiled one only. So how do you combine the compiled scores together?
August 1, 20168 yr (progn ;;; Laod score files. ;;; There is no need for an .opmo extension if all of the scores are in the workspace folder. (let ((files '(score1 score2 score3 score4 ))) (mapcar #'(lambda (x) (load (merge-pathnames (string x) *load-truename*))) files)) ;;; To assemble the final score form scores: (compile-score '(score1 ;; score name score2 score2 score2 )) ;;; The *last-score* is the last compiled score. (display-musicxml *last-score*) (display-midi *last-score* :display :quick-view) )
August 2, 20168 yr Author You can also keep my example and after evaluate all the score evaluate the compile-score '(score1 score 2etc...) with Evaluate and display notation. It will display the score for the full score with all parts assembly. Once the score notation displayed, you can give it the focus (click on it) and CMD+S for save the Musicxml to file. SB.
Create an account or sign in to comment