Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No .omlib file #8

Open
somecho opened this issue Sep 24, 2022 · 2 comments
Open

No .omlib file #8

somecho opened this issue Sep 24, 2022 · 2 comments

Comments

@somecho
Copy link

somecho commented Sep 24, 2022

Hello!

I'm trying to load CNMAT in OM#. Since there isn't an .omlib file, it cannot be loaded.

I tried writing the omlib file myself, but I'm not very clear about how the omlib file should be formatted. I'm aware that normally you have this formatting:

(:symbols 
  (:packages 
   (:package 
      (:name "sub pack name")
      (:functions "some-func" "another func"))
  )
)

But the om::fill-library in cnmat-om.lisp doesn't seem to fit this schema.

;; cnmat-om.lisp
(om::fill-library  
 '((NIL 
    (("Tessellate" 

     (("database" nil nil (q-combi q-combi-filter q-canon q-rotations  q-permute+remove-dup-rotations q-n-permutations-no-rotations q-permutations+canon q-permutations+canon-utility q-permutations+canon-all q-rotation-canon? q-canon-permutations-no-overlaps q-combi-from-elements q-random-permutations-no-dups q-remove-rotations ) nil)

      ("operations" nil nil ( o-operations o-list-trans o-index o-count-trunc o-equal-prob o-index o-list-rand o-list-repeat o-sum-lists  o-list-rand o-list-info) nil)

      ("pitch" nil nil (p-map1 p-inversion p-map2 p-make-bands p-bands-collection p-bands-pitchclass p-bands-register p-harmony-from-analysis) nil)

      ("rhythm" nil (prf) (prf rhythmic-frames r-diminutions r-interleave r-duration-list r-merge r-combine-lists r-retro-canon? r-substitute r-substitute-children r-tatum-mapping r-scatter-attacks r-retro-canon?) nil)
      
      ("score" () nil (s-poly s-poly->voice s-poly2 s-cuts s-cuts2 s-combine-voices s-combine-polys) nil)

      ("utilities" nil nil ( u-info u-list-info u-score-lists u-retro-canon? u-+ u-- u-* u-inversion u-midic->pc u-flat-by-voice u-pc-remap u-divisors u-tatum-format u-list-duplicator) nil))
     nil ;; classes
     (combinations) ;; functions
     nil))
    NIL NIL NIL)
   )
 (om::find-library "CNMAT-OM")
 )

Where can I find what om::fill-library actually does? What's the proper way to covert this to an .omlib file?

Thanks!

@j-bresson
Copy link
Member

Hello!

CNMAT-OM is not working on OM# unfortunately. There's a little bit of adaptation needed for that, and therefore the .olib loader file is not available yet.

About the loader file, you can find information here: https://cac-t-u-s.github.io/pages/write-library
Hope his helps

(and I'll have a look at the library again, see if I can get it lo load at least partially in OM# – stay tuned!)

@j-bresson
Copy link
Member

Hi again — I have just pushed on the source code the minimal changes required to load the lib in OM#. It should be possible now to import existing help patches and tutorials following the instructions here https://cac-t-u-s.github.io/pages/import-from-om. This is a bunch of awesome of patches! I don't think they will all work but I'm happy to help debugging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants