Grepset
From PyMOLWiki
Use this little script to explore PyMOL's myriad settings.
Usefull for newbies and those with not so good memory skills...
To use:
- put the script in a file called grepset.py
- from within PyMOL execute run grepset.py
- try it out, see examples below.
Example 1: grepset light
cartoon_highlight_color default dot_lighting on light [ -0.40000, -0.40000, -1.00000 ] mesh_lighting off two_sided_lighting off 5 settings matched
Example 2: grepset trans
cartoon_transparency 0.00000 ray_transparency_contrast 1.00000 ray_transparency_shadows 1 ray_transparency_spec_cut 0.90000 ray_transparency_specular 0.40000 sphere_transparency 0.00000 stick_transparency 0.00000 transparency 0.00000 transparency_mode 2 transparency_picking_mode 2 10 settings matched
Example 3: grepset ^trans
transparency 0.00000 transparency_mode 2 transparency_picking_mode 2 3 settings matched
The Script itself: grepset.py
from pymol import cmd import re import pymol.setting def grepset(regexp=''): ''' DESCRIPTION "grepset" greps through the list of settings using a python regular expression as defined in the 're' module. It returns a list of settings/values matching the regexp. No regexp returns every setting. USAGE grepset [regexp] EXAMPLE grepset line grepset ray grepset (^line|color$) SEE ALSO Python re module ''' count = 0 regexp = re.compile(regexp) matches = [] for a in pymol.setting.get_index_list(): setting = pymol.setting._get_name(a) if regexp.search(setting): count += 1 matches.append( (setting, cmd.get_setting_text(a, '', -1)) ) # max length of the setting names that matched maxlen = max([len(s[0]) for s in matches]) fmt = "%%-%ds : %%s" % (maxlen,) for setting in matches: print fmt % setting print '%d settings matched' % (count,) cmd.set('text', 1) cmd.extend('grepset', grepset)
Author: Ezequiel (Zac) Panepucci

