Jython, execute a py script with arguments

    Jun 21 2013 | 12:47 am
    I have a py script, that I can execute from the command line like so:
    > py myscript.py ip_address port e.g. py 8080
    I really cant understand in the net.loadbang.jython where to put the "py" script and how to call it with arguments in a max patch. Would really appreciate some direction on using what seems to be a great tool. Call a script from a "py" file doesnt seem to be covered in the jython.BasicUsage.mxt
    Cheers N

    • Jun 21 2013 | 6:53 am
      ok calling a script is covered in the mxt. However, im still confused on how to add args to the execution.
      Im trying this and its not working:
      mxj net.loadbang.jython.mxj.ScriptEngine @args ip_address port
    • Jun 21 2013 | 3:44 pm
    • Jun 23 2013 | 11:02 am
      You can get the arguments from @args by calling maxObject.getArgs() (which returns an Atom[]). This isn't the same as command-line arguments to a script (although I suppose that could be mocked) so you'd have to modify the script, or load it from an enclosing script which sets the arguments up.
    • Aug 14 2013 | 1:21 am
      Thanks Nick, This was really helpful for me. Finally got jython up and running and its working really well.
      I notice you have implemented some lemur template loading in your clojure software. Ive been trying to use Jython with the script https://github.com/cassiel/sifaka/blob/master/example-code/stanton/lemur_loader.py
      It works (as in loading templates). However, I run into some problems when loading into a specific container. I can load one jzlib into a container, but when I destroy the contents of the container and load another jzlib, the ipad app crashes the springboard. It seems to have something to do with the lemur app closing the connection half way through loading a template.
      Id be really grateful to find out if you had any similar issues in your implementation and whether/how you overcame these.
    • Aug 15 2013 | 11:03 am
      The lemur_loader.py is someone else's code that I used as a source reference; I don't know offhand how well it works. Certainly, the Clojure-based loader works passably; it crashes the Lemur app occasionally, but is usable.
    • Oct 09 2015 | 1:22 am
      @NEWTFISH I'm digging to find a way to load JZML patch from Max to lemur . How did you manage to get loading template to work with net.loadbang.jython and lemur_loader.py . thanks