Difference between revisions of "Scripting"
AngelHerraez (talk | contribs) (→Documentation links: scripts inline the model) |
AngelHerraez (talk | contribs) (reinforce refs to scripting) |
||
Line 1: | Line 1: | ||
{{Jmol_Documentation_Sections}} | {{Jmol_Documentation_Sections}} | ||
− | The Jmol [[Jmol_Application|Application]] and [[Jmol_Applet|Applet]] have a command language that | + | The Jmol [[Jmol_Application|Application]] and [[Jmol_Applet|Applet]] have a '''command language''' that grew on the base of the [http://www.mdl.com/support/developer/chime/developer_tools.jsp command language] of [http://www.umass.edu/microbio/rasmol/index2.htm RasMol] and its browser plugin [http://www.mdl.com/ MDL Chime]. A set of commands is called a '''''command script''''', and writing such sets of commands or scripts is called '''''scripting'''''. This is the major way of controlling the display of molecules in Jmol. |
= Documentation links = | = Documentation links = | ||
Line 16: | Line 16: | ||
'''Other''' | '''Other''' | ||
* Scripts can be included inside the molecular model file. See [[File_formats/Scripting#Script_inline_within_a_molecular_coordinates_file|how to do it]]. | * Scripts can be included inside the molecular model file. See [[File_formats/Scripting#Script_inline_within_a_molecular_coordinates_file|how to do it]]. | ||
+ | * Jmol scripting language has grown, among other features, by adding mathematical operators (''JmolMath''), control structures (loops, conditionals, etc.). You may be interested in this [[Scripting/Programming_Language|programming language]] approach. | ||
= Similar but different scripting languages = | = Similar but different scripting languages = |
Revision as of 09:58, 31 August 2013
- Description of files in Jmol+JSmol distribution
- File formats read or written by Jmol
- The Jmol scripting interface
- Scripting as a programming language
- Complete reference of scripting commands:
- Loading models directly from databases
- Mouse manual
- Default colors used by Jmol
- Atom sets predefined in Jmol
- Support for bond orders · isotopes · stereochemistry · hydrogen bonds
- Jmol as editor
- Multi-touch support
- Copying and pasting state scripts between applets.
- Backward compatibility (changes of behavior across versions)
- Features added since version 10
- Users mailing list (and a mirror)
The Jmol Application and Applet have a command language that grew on the base of the command language of RasMol and its browser plugin MDL Chime. A set of commands is called a command script, and writing such sets of commands or scripts is called scripting. This is the major way of controlling the display of molecules in Jmol.
Documentation links
Documentation of Jmol's scripting language can be found here:
This is the official document. The style is encyclopedic, explaining each command in turn, as usual in reference manuals. In addition to this primary site, with latest updates, there are some mirror sites (see links at right).
An introduction to Jmol scripting is available here:
A more user-friendly, but less thorough, basic guide by Nathan Silva and David Marcey; part of the Online Macromolecular Museum at California Lutheran University.
Other
- Scripts can be included inside the molecular model file. See how to do it.
- Jmol scripting language has grown, among other features, by adding mathematical operators (JmolMath), control structures (loops, conditionals, etc.). You may be interested in this programming language approach.
Similar but different scripting languages
Chime's command language (see "About Chime" at http://molviz.org) is a superset of the command language of Roger Sayle's public domain application RasMol. (The command language of open-source RasMol has diverged somewhat from that in RasMol and Chime). The command language used by Jmol started with most of the Chime commands, but has outgrown it in a notable extent, allowing for many new capabilities.
*-RasMol (v≤2.6) | |----Chime Takes nearly all RasMol 2.6 commands and adds a few. | | | ----Jmol (v≥10) Takes many RasMol 2.6 and Chime 2.6 commands and adds a few. | | | ---Jmol (v≥11) Adds many new commands. | -----OpenRasMol (v≥2.7) Takes all RasMol 2.6 commands and adds a few.
Transversal documentation
Covering specific aspects or applications (not by command, and usually not exhaustive):
- Surfaces. Jmol can calculate and render surfaces around a molecule, or part of it, representing its "true" shape and volume. Moreover, isosurfaces, atomic and molecular orbitals, and mathematically defined surfaces can also be rendered. An introductory tutorial on creating macromolecular Jmol surfaces is available: An Introduction to Jmol Surface Displays, part of the Online Macromolecular Museum at California Lutheran University.
- Persistent and nonpersistent "set" parameters. Some parameters defined using the "set" command are associated to the app/applet and hence maintained when a new molecule is loaded, while others are reset when the model is removed.