Pymolrc

From PyMOLWiki
Jump to navigation Jump to search

When Pymol launches, it will read custom settings and functions from a pymolrc file, if it exists. This is simply a script in PyMOL command syntax or in python syntax, depending on the suffix.
Creating pymolrc files is a convenient way of loading individualized settings.

Open a pymolrc File for Editing

PyMOL 2.0 has a built-in editor: File > Edit pymolrc

On Windows: Start > Run and then paste

notepad "%HOMEDRIVE%%HOMEPATH%\pymolrc.pml"

On Unix/Linux-type system (including Mac OS X): Open a terminal and type

nano ~/.pymolrc

Technical Details

  • The leading dot is optional, so everything that starts with .pymolrc or pymolrc will be found by PyMOL. Files with dot take precedence over files without dot.
  • Files ending on .py (or .pym) will be parsed as python scripts, files ending on .pml or without suffix will be parsed as PyMOL command syntax.
  • Several directories are searched, in order:
    • current working directory
    • $HOME
    • $HOMEDRIVE + $HOMEPATH (on Windows)
    • $PYMOL_PATH
  • $PYMOL_PATH/run_on_startup* is loaded before any pymolrc files

Multiple pymolrc files

PyMOL will even load multiple pymolrc files, however only either with dot or without dot, and only from the same directory.
You can have multiple scripts: e.g. pymolrc-settings.pml and pymolrc-misc.pml in your home directory.

You can query which pymolrc files have been loaded:

PyMOL> print invocation.options.deferred

Example

# simple test: change background color of PyMOL window
bg blue

# this will run the script in the specified location
run /path/to/home/pymol/load_sep.py

# your favorite settings
set movie_loop, 0
set two_sided_lighting, 1

set label_size, 60
set label_outline_color, 1
set label_color, 0
set label_position, [0, 0, 10]

# for images:
#   antialias =1 smooths jagged edges, 0 turns it off
set antialias, 1

#   stick_radius -adjust thickness of atomic bonds
set stick_radius, 0.3

# save fetched PDB files here
set fetch_path, /your/fetch/path

# Personal short-cut to color_obj function
import color_obj
cmd.extend("co",color_obj.color_obj)

Reload a pymolrc File

To reload a pymolrc file (e.g. after editing .pymolrc, or after running reinitialize), run it like any other script:

@~/.pymolrc

or

run ~/.pymolrc.py

See Also