Prev | ICM Language Reference ICM-shell | Next |
[ Help getting | Customization | Menu script | Icm learning | Command word list ]
How to get help |
Customization |
[ ICMHOME | User environment | _startup | User_startup | _chemBatch ]
There are several mechanisms of helping you to customize your ICM environment:ICMHOME |
setenv ICMHOME /opt/icm/This will be the directory from which ICM program takes all necessary libraries, databases, etc.
USER environment: $HOME/.icm directory |
In contrast to $ICMHOME directory which may be installed under root for several users, the $HOME/.icm directory contains files which can be changed by a user. Under Windows the directory is $USERPROFILE/.icm . The icm-user directory contains the following files and directories:
dir/file | description |
---|---|
blastdb/|contains blast-formatted files for ICM sequence searches (see also s_blastdbDir ) | |
config/|contains icm.cfg and icm.rc files with startup preferences. | |
inx/|default location for database index files (see also s_inxDir ) | |
log/|contains session logs, (see also s_logDir ) | |
_startup|if present, overrides the global _startup in $ICMHOME. | |
user_startup.icm|user startup files. Executed in addition to _startup |
You may also customize TOOLS.onIcmExitMacro and TOOLS.onIcmStartupMacro preferences. The first one contains a name of the macro to be executed on ICM exit. The second macro is executed after all initializations (including GUI windows) are done. That allows user to insert gui layout management command there.
Example: The following code can be added to user_startup.icm
TOOLS.onIcmExitMacro = "onExitICM" macro onExitICM write string Date()+ " CPU time: " + Time() + "\n" append s_userDir + "usage.log" endmacro TOOLS.onIcmStartupMacro = "onStartupICM" macro onStartupICM undisplay window = "masterview,terminal" endmacro
The _startup file |
The _startup file is stored in your $ICMHOME (or s_icmhome inside ICM ) directory. Since this directory in an organization may be read-only, all additional commands and macros can be stored in the user_startup.icm file in the user-accessible directory (see below). Also, if you have a file with the same name _startupin your current directory it will be used instead of the $ICMHOME/_startup . To avoid executing the _startup file, use option -s.
icm -s # skip _startup
Let us go through the main sections of the current _startup file.
Loading macros from _macro, _docking, _bioinfo etc.The second section of the _startup file loads macros from different files provided with the ICM distribution to the ICM session.
If you create a user_startup.icm file in your $ICMHOME directory it will also be loaded into ICM because at the following lines end of the system _startup file
if(!Exist(s_icmhome+"user_startup.icm")) goto skipuser call "user_startup.icm" only # for organization-wide macros skipuser:
You can use _startup or user_startup.icm files to overwrite the preferences. E.g.
s_pdbDir = "/data/pdb/" # set it to the place where PDB lives s_helpEngine = "icm" # default, web-browser is an alternative s_prositeDat = s_icmhome+"prosite.dat" # you may have your own updated file s_psViewer = "/usr/opt/bin/gs -q" # xpsview may be more standard s_tempDir = "/tmp" # better be accessible only for youSet $BLASTDB system environment variable for searches in the blast-preprocessed sequence databases (see the find database command).
individual user_startup.icm , gui-controls and menus : |
Note: note that if the user_startup.icm file is stored in the $ICMHOME directory it will also be read in ICM (see above). However, this file may not be write-accessible if ICM is installed in a read-only directory for several users in an organization.
Example personal user_startup.icm file in which we use personal GUI files:
LIBRARY.clr = Getenv("HOME")+"/.icm/icm.clr" # USERPROFILE under Windows LIBRARY.men = Getenv("HOME")+"/.icm/icm.gui" # now gui will invoke your file read color # updates your GUI-control and color setup
The _chemBatch file |
The _chemBatch script can be used to process large SDF files performing various operations on each entry.
Usage:
icm _chemBatch -h Usage> _chemBatch [-f] [-I] [-s] [options] input.sdf output.sdf -2D : 2D depiction -salt : remove salts -hyd : remove remove expilit hydrogens -standradize : standardize groups -tauto : generate tautomeres -racemic : convert to racemic -stereo : generate stereo -q : quiet (suppress warnings) -f : force overwriting of the output file -I : force overwriting of the index file
This script also can be used as a template for adding other custom operations.
How to write a nice demo with menus to impress the boss |
How to boost learning process while reading the ICM manual |
How to get the list of the command words |
Prev User's Guide | Home Up | Next ICM graphics |