[Chimera-users] Script parameters

Thomas Goddard goddard at cgl.ucsf.edu
Mon Mar 15 16:18:38 PDT 2010

Hi Will,

   Your method of starting Chimera

	chimera volume.mrc --script colourMaps.py -- -a red

looks reasonable but doesn't work.  Chimera insists that the data files 
come after the options (like --script).  But the --script <file> option 
treats all subsequent arguments as script arguments (not data files) 
unless they start with "--".  The bottom line is Chimera wants the data 
file at the end but that doesn't open the data file if you use the 
--script option.  This is pretty messed up and we will do something to 
fix it.  In the meantime you can use

	chimera --script colourMaps.py volume.mrc -a red

This won't open volume.mrc, instead volume.mrc will be the first 
argument to your script and your script will have to open it with

	from chimera import openModels

Thanks for pointing out this problem.  We will discuss it at our weekly 
Chimera meeting and come up with a solution that lets you open data 
files and a script on the command-line.


> Hi Tom,
> Thanks for that. Works great!
> Now I have another question:
> I'm trying to pass colors to the script in the arguments, but not having
> much luck.
> In the script itself, do you recover the arguments in the normal way:
> Like this?
> import getopt, sys, os
> try:
> opts, args = getopt.getopt(sys.argv[1:] ,"a:", [])
> except getopt.GetoptError, err:
> pass
> returnMap = {}
> print opts
> for opt, arg in opts:
> if opt == "-a":
> returnMap["a"] = arg
> print returnMap
> If I run this script directly from the command line like this:
> python colourMaps.py -a red
> I get the expected print out
> [('-a', 'red')]
> {'a': 'red'}
> but if I try to call this script at the same time as opening maps from
> the command line, I don't get anything:
> chimera volume.mrc --script colourMaps.py -- -a red
> Reply log:
> []
> {}
> I'm also getting a UI dialog
> "Please designate file type for --script"
> which I have to 'cancel' every time I open chimera with this command.
> Is there any way I can avoid this?
> Many thanks,
> Will.

More information about the Chimera-users mailing list