Jan 4 2018 Feedback.
Reference Guide
Getting Started
Protein Structure
Molecular Graphics
Slides & ActiveICM
Sequences & Alignments
Protein Modeling
Learn and Predict
Virtual Screening
3D Ligand Editor
Tables and Plots
Local Databases
 FAQ-Graphics and Display
 FAQ ActiveICM
 Sequences and Alignments
 FAQ MolCart
  call _startup
  Dollar Scripts
  Faq foreground table
PrevICM User's Guide
20.10 FAQ-Script

[ Script | call _startup | Dollar Scripts | Faq foreground table ]

Are you having problems with an ICM script? See if your question is answered here

20.10.1 How can I write a script in the Graphical User Interface?

  • File/New and select the Script tab.
  • Write the script and save it and it will be listed in the ICM Workspace.
  • Right click on the script in the ICM Workspace and click run.

20.10.2 I am having problems with my ICM script when running from the unix command line.

A common problem when running an ICM script from the command line is that people forget to call the startup file and therefore common commands in ICM are not recognized (eg the output says "convertObject: unknown word") The start of your ICM script should look something like this with call _startup included:


call _startup

20.10.3 How do I use the Dollar $ in ICM Scripts?

In ICM you need to use '$' ONLY before string variable which contains the name of the OTHER variable or expression. (that different from Perl)

Using dollar in most other cases won't hurt (e.g: $a (where a is an integer variable) but will have no effect and only will make parsing/execution heavier. For example: a = 1 # the two lines below are equivalent print $a print a

Example of dollar usage:

a = 1
s = "a"
print $s   # will print the content of 'a' variable
for i=1,10
  s = "a" + i
  $s = i

Will create a1,a2,...a10 variable with corresponding values.

So you should consider '$' as a substitution of the content of the string variable after it.

build string "AAA"
s = String( a_ )
print s

20.10.4 Is there a way to determine the name of the current table displayed GUI?

To determine the name of the current active table in GUI:

Name( foreground table )

This will return a sarray because there might by two active tables (when you double click on the tab and for side-by side view). To access the table using $ sign:

s_tableName = Name( foreground table )[1]

View Stack

Copyright© 1989-2018, Molsoft,LLC - All Rights Reserved.
This document contains proprietary and confidential information of Molsoft, LLC.
The content of this document may not be disclosed to third parties, copied or duplicated in any form,
in whole or in part, without the prior written permission from Molsoft, LLC.