NAME
SDFilesToHTML.pl - Generate HTML table file(s) from SDFile(s)
SYNOPSIS
SDFilesToHTML.pl SDFiles(s)...
SDFilesToHTML.pl [-a, --align left | center | right,[top | middle | bottom]] [-b, --border borderwidth] [--cellpadding padding]
[--cellspacing spacing] [--cmpddatafield ''fieldlabel,[label,position,alignment]''] [--datafields ''fieldlabel,[fieldlabel]...'' | Common | All]
[--footer string] [-d, --displaylinks top | bottom | both] [--displaylinksinfo compound | table | both] [-h, --help]
[--headeralign left | center | right,[top | middle | bottom]] [--headercolor ''#RRGGBB'']
[--highlight ''fieldlabel,datatype,criterion,value,[fieldlabel,datatype,criterion,value,...]'']
[--highlightcolor ''#RRGGBB,#RRGGBB''] [--highlightstyle text | background]
[-m, --mode plain | shade | highlight | shadedhighlight | structuresonly | shadedstructuresonly]
[-n, --numcmpds number] [-o, --overwrite] [-r, --root rootname] [-s, --structure display | link]
[--strlinkmode plain | shaded] [--strlinknavigation yes | no]
[--strlinkshadecolor ''#RRGGBB''] [--strlinktitle string] [--strlinktitledisplay yes | no] [--strlinktype href | button]
[--strviewertype Chem3DActiveX | ChemDrawActiveX | ChemDrawPlugIn | Chime | JME | Jmol | MarvinView | ViewerActiveX]
[--strviewerconfig codebase[,archive,code]] [--strviewerparams ''name=value [name=value ...]'']
[--strviewerembed direct | javascript] [--strviewerjsfile javascriptfilename]
[--strtablesize ''numrows,numcols''] [--stylesheet old | new | none]
[--stylesheetname filename] [--shadecolor ''#RRGGBB,#RRGGBB''] [-t, --title string] [--titledisplay yes | no]
[-w, --workingdir dirname] SDFiles(s)...
DESCRIPTION
Generate HTML file(s) from SDFile(s). The HTML file(s) contain data tables
and appropriate navigational links to view other tables; navigational links are also
provided on compound HTML pages. These files can be generated for local viewing or
deployment on a web server. A variety of options are provided to control style and
appearance of tables. And for viewing structures, options are available to use any one of
these viewers: Chem3DActiveX, ChemDrawActiveX, ChemDrawPlugIn, Chime, Jmol, JME,
MarvinView, or ViewerActiveX. Jmol is the default structure viewer and it is also distributed
along with this package; however, to use any other supported viewers, make sure it's available
in your environment.
Multiple SDFile(s) names are separated by space. The valid file extensions are
.sdf and .sd. All other file names are ignored. All the SD files in a current directory can
be specified either by *.sdf or the current directory name.
OPTIONS
- -a, --align left | center | right,[top | middle | bottom]
-
Horizontal and vertical alignment for table rows except for header row which is specified
using --headeralign option. Possible horizontal alignment values: left, center, or right.
Possible vertical alignment values: top, middle, or bottom.
-
Default values: left,middle
- -b, --border borderwidth
-
Table border width. Default value: 1 for plain and highlight mode; 0 for shade
and shadedhightlight mode. Zero indicates no border.
- --cellpadding padding
-
Table cell padding. Default value: 2
- --cellspacing spacing
-
Table cell spacing. Default value: 1
- --cmpddatafield fieldlabel,[label,position,alignment]
-
This value is mode specific. It indicates data field value to be displayed with the structure along
with its label, position and alignment during structuresonly | shadedstructuresonly value of -m, --mode
option. Possible values: feldlabel - valid data field label; label - yes or no; position - top or bottom; alignment
- left, center, or right. Default: none,no,bottom,center. Example:
-
MolWt,no,bottom,middle
-
--cmpddatafield option value is also linked to compound summary page.
- --datafields ''fieldlabel,[fieldlabel]...'' | Common | All
-
Data fields to display in HTML table(s). Possible values: list of comma separated data field
labels, data fields common to all records, or all data fields. Default value: All.
Examples:
-
ALogP,MolWeight,EC50
"MolWeight,PSA"
- --footer string
-
Text string to be included at bottom of each HTML file. Default: none.
- -d --displaylinks top | bottom | both
-
Specify where to display navigation links in each HTML file for accessing all other HTML
files. Possible values: top, bottom, or both. Default: both. This option is
only valid during multiple HTML files generation for an input file.
- --displaylinksinfo compound | table | both
-
Control display of additional information along with navigational links: Showing compound
n of m is displyed for compound and showing table n of m for table. Possible values: compound
| table | both. Default: both. This option is only valid during multiple HTML files generation.
- -h, --help
-
Print this help message
- --headeralign left | center | right,[top | middle | bottom
-
Horizontal and vertical alignment for table header rows. Possible horizontal alignment
values: left, center, or right. Possible vertical alignment values: top, middle, or bottom.
-
Default values: center,middle
- --headercolor #RRGGBB
-
Color used to fill background of table header row containing column labels
represented as a hexadecimal string. Default value: None for -m, --mode option
value of plain and #ccccff, light blue, for others.
- --highlight ''fieldlabel,datatype,criterion,value,[fieldlabel,datatype,criterion,value,...]''
-
Highlighting methodology used to highlight various SDFile(s) data field values in
HTML file(s). Same set of quartets values are applied to all SDFile(s).
-
Input text contains these quartets: fieldlabel,datatype,criterion,value,....
Possible datatype values: numeric or text. Possible criterion values: le, ge, or eq.
Examples:
-
"MolWt,numeric,le,450"
"MolWt,numeric,le,450,LogP,numeric,le,5"
Name,text,eq,Aspirin
- --highlightcolor ''#RRGGBB,#RRGGBB''
-
Colors used to highlight column values during highlight and shadedhightlight
mode represented as hexadecimal strings.
-
For --highlighstyle option values of text and background, these colors represent
text or background colors respectively. For a specific column, first color string is used for
values which meet criterion indicated by --highlight option; the second color is used for
rest of the values.
-
Default values for background --highlightstyle: ''#0fff0f,#ff0f0f''. And default values for
text --highlightstyle: ''#0fbb0f,#ff0f0f''. Hexadecimal strings for both --highlightstyle
colors correspond to reddish and greenish.
- --highlightstyle text | background
-
This value is mode specific. It indicates highlight style used to differentiate column
values which meet a specified criterion in --highlight option. Possible values: text or
background. Default: background
- -m, --mode plain | shade | highlight | shadedhighlight | structuresonly | shadedstructuresonly
-
Specify how to generate HTML table(s): plain tables with line borders, background of
alternate rows filled with a specified color, column values highlighted using a specified
criteria, combination of previous two styles, tables containing only structures, or tables
containing only structures with filled background of alternate rows.
-
Possible values: plain, shade, highlight, shadedhighlight, structuresonly, or
shadedstructuresonly. Default: shade.
- -n, --numcmpds number
-
Maximum number of compounds per table. Default value: 15 for tables with structures and
50 for tables with links to structures. Use 0 to put all compounds into one table. For SDFile(s)
with more than maximum number of specified compounds, multiple HTML tables, with appropriate
navigation links, are created.
- -o, --overwrite
-
Overwrite existing files
- -r, --root rootname
-
New file or directory name is generated using the root: <root>.html or <root>-html.
Default new file name: <InitialSDFileName>.html. Default directory name:
<InitialSDFileName>-html.
-
For SDFile(s) with more than maximum number of specified compounds per table,
this directory tree is generated using <Name> where <Name> corresponds to <root>
or <InitialSDFileName>: Top dir - <Name>-html; Sub dirs - html and mols. <Top dir> contains
<Name>.html and <Name>.css files and <sub dir> html conatins various
<Name>Lines<Start>To<End>.html files; <sub dir> mols is created as needed and contains
MOL files.
-
This option is ignored for multiple input files.
- -s, --structure display | link
-
Structure display control: display structures in a table column or set up a link for each
structure which opens up a new HTML page containing structure and other appropriate
information. Possible values: display or link. Default value: display
- --strlinkmode plain | shaded
-
Specify how to display compound HTML page: plain or background of data field
field labels is filled with a specified color. Possible values: plain or shad.
Default value: plane.
-
Structure viewer background color is white. Use --strviewerparams option to change
default behavior of structure viewers.
- --strlinknavigation yes | no
-
Display navigation links to other compounds in compound HTML page. Possible values:
yes or no. Default value: yes.
- --strlinkshadecolor ''#RRGGBB''
-
This value is --strlinkmode specific. For shade value of --strlinkmode option, it
represents colors used to fill background of data field labels.
-
Default value: ''#e0e9eb'' - it's a very light blue color.
- --strlinktitle string
-
Title for compound HTML page. Default value: Compound Summary.
- --strlinktitledisplay yes | no
-
Display title for compound HTML page. Possible values: yes or no. Default value: no.
- --strlinktype href | button
-
Type of structure link. Possible values: href or button. Default: href.
- --strviewertype Chem3DActiveX | ChemDrawActiveX | ChemDrawPlugIn | Chime | JME | Jmol | MarvinView | ViewerActiveX
-
Structure viewer supported for viewing structures. Possible values: Chem3DActiveX,
ChemDrawActiveX, ChemDrawPlugIn, Chime, JME, Jmol, MarvinView, or ViewerActiveX.
Default value: Jmol.
-
Assuming you have access to one of these viewers on your machine, you are all set
to use this script. Otherwise, visit one of these web sites to download and install
your favorite viewer:
-
accelrys.com: Viewer ActiveX 5.0
cambridgesoft.com: Chem3DActiveX 8.0, ChemDrawActiveX 8.0,
ChemDrawPlugIn
chemaxon.com: MarvinView applet
mdli.com: Chime plug-in
jmol.sourceforge.net: JmolApplet V10
molinspiration.com: JME applet
-
The default viewer, JmolApplet V10, is distributed with MayaChemTools package.
Earlier versions of JmolApplet are not supported: due to applet security issues related to
reading files, this script uses in-line loading of MOL files and this option doesn't exist in
earlier version of JmolApplet.
- --strviewerconfig codebase[,archive,code]
-
Configuration information for structure viewers. This option is only valid for structure
viewers which are applets: Jmol, JME and MarvinView. For other viewer types available via
--strviewertype option - MDL Chime, ChemDrawActiveX, ChemDrawPlugIn, and
Chem3DActiveX - this value is ignored.
-
Input text format: codebase[,archive,code]. For an applet viewer, codebase must be
specified; archive and code values are optional. Here are default archive and
codebase values for various applets: Jmol - JmolApplet, JmolApplet.jar; JME - JME, JME.jar;
MarvinView: MView, marvin.jar
-
By default, codebase value of <this script dir>/../lib/Jmol is used for Jmol applet viewer, and
HTML file(s) are generated for local deployment; however, you can specify any supported
applet viewer and generate HTML file(s) for deploying on a web server.
-
For deploying the HTML file(s) on a web server, specify a valid codebase directory name
relative to <WWWRootDir>. Example when JME archive file, JME.jar, is available in
/jme directory on the web server:
-
/jme
-
For local deployment of HTML file(s), specify a complete codebase directory name.
Example when JmolApplet archive file, JmolApplet.jar, is present in <JMOLROOT> directory:
-
<JMOLROOT>
-
In addition to codebase, you can also specify archive file name. Example for web
deployment:
-
"/jme,JME.jar"
"/jme"
-
Example for local deployment:
-
"<JMEROOT>,JME.jar"
"<JMEROOT>"
- --strviewerparams ''name=value [name=value ...]''
-
Parameters name and value pairs for structure viewers. These name and value pairs
are used to control the appearance and behavior of structure viewers in tables and
compound HTML page during link value for -s --structure option.
-
The parameter names, along with their values, are just passed to each structure viewer
in appropriate format without checking their validity. Check documentation of appropriate
structure viewers to figure out valid parameter names.
-
Input text format: name=value name=value ... Example:
-
"width=250 height=170"
-
Default for all structure viewers: width=250 height=170 for displaying structures in
tables, and strlinkwidth=500 strlinkheight=295 for compound HTML page during link value
for -s --structure option.
-
Default background color for all structure viewers: same as --shadecolor value for
displaying structures in tables and strlinkbgcolor=#ffffff for compound HTML page;
however, explicit specification of background color in this option overrides default value.
To use black background for structures in tables and compound HTML page, specify bgcolor=#000000
and strlinkbgcolor=#000000 respectively. Keep this in mind: Some structure viewers
don't appear to support background color parameter.
-
Additional structure viewer specific default values:
-
Chem3DActiveX: "displaytype=Ball&Stick rotationbars=false
moviecontroller=false"
ChemDrawActiveX: "ViewOnly=1 ShrinkToFit=1 ShowToolsWhenVisible=1"
ChemDrawPlugIn: "type=chemical/x-mdl-molfile ViewOnly=1
ShrinkToFit=1 ShowToolsWhenVisible=1"
Chime: "display2d=true"
JME: "options=depict"
Jmol: "progressbar=true progresscolor=#0000ff boxbgcolor=#000000
boxfgcolor=#ffffff script="select *; set frank off;
wireframe on; spacefill off""
MarvinView: "navmode=zoom"
ViewerActiveX:"Mouse=4 Convert2Dto3D=0"
-
Try overriding default values or specify additional valid parameter/value pairs to get desired
results. Example for using CPK rendering scheme with Jmol viewer:
-
"script="select *; set frank off; wireframe off; spacefill on""
- --strviewerembed direct | javascript
-
Specify how to embed structure viewers in HTML pages. Possible values: direct - use applet/object
tags to emded structure viewer; javascript - use vendor supplied java scripts. Default value:
direct.
-
This option only applies to these vieweres: Chem3DActiveX, ChemDrawActiveX, ChemDrawPlugIn,
Jmol, and MarvinView.
-
For marvin.js to work correctly on your browser, you may need to set marvin_jvm=builtin or
marvin_jvm=plugin using --strviewerparams option. Additionally, MarvinView - at least
in my hands - also has problems during usage of JavaScript for local deployment; however, it
does work via web server.
-
As far as I can tell, Jmol.js supplied with Jmol10 release has these issues: jmolSetAppletColor
doesn't support background color; jmolInitialize disables relative specification of codebase
directroy which works okay. So, use Jmol.js supplied with MayaChemTools.
- --strviewerjsfile java script file name
-
Name of vendor supplied java script file. Default values: Chem3DActiveX: chem3d.js; ChemDrawActiveX,
and ChemDrawPlugIn: chemdraw.js; Jmol: Jmol.js, MarvinView: marvin.js.
-
Directory location for these files is specified via codebase value of --strviewerconfig option.
- --strtablesize ''numrows,numcols''
-
This option is only valid for structuresonly and shadedstructuresonly modes. And it indicates
maximum number of rows and columns per structure table. Default value:6,4.
- --stylesheet old | new | none
-
Controls usage of stylesheet for newly generated HTML file(s). Possible values: old,
new, or none. Default value: new.
-
Stylesheet file contains various properties which control appearance of HTML pages:
type, size, and color of fonts; background color; and so on.
-
For old value, an existing stylesheet file specified by --stylesheetname option is
used for each HTML file; no new stylesheet file is created. This option is quite handy
for deploying HTML file(s) on a web server: assuming you specify a valid stylesheet
file location relative to your WWWRoot, a reference to this stylesheet is added to each
HTML file. For local deployment of HTML file(s), a complete path to a local stylesheet
is fine as well.
-
For create value, a new stylesheet is created and reference to this local stylesheet
is added to each HTML file. Use option --stylesheetname to specify name.
-
For none value, stylesheet usage is completely ignored.
- --stylesheetname filename
-
Stylesheet file name to be used in conjunction with -s --stylesheet option. It is only
valid for old value of -s --stylesheet option. Specify a valid stylesheet file location
relative to your WWWRoot and a reference to this stylesheet is added to each HTML
file. Example: ''/stylesheets/MyStyleSheet.css''. Or a complete path name to a local
stylesheet file.
-
For create value of -s --stylesheet option, a new stylesheet file is created using
-r --root option. And value of --stylesheetname is simply ignored.
- --shadecolor ''#RRGGBB,#RRGGBB''
-
Colors used to fill background of rows during shade and shadedhightlight mode
represented as a pair of hexadecimal string; the first and second color values
are used for odd and even number rows respectively.
-
Default value: ''#ffffff,#e0e9eb'' - it's white and very light blue for odd and even number rows.
- -t, --title string
-
Title for HTML table(s). Default value: SDFileName. This option is ignored for
multiple input files. And -r --root option is used to generate appropriate
titles.
- --titledisplay yes | no
-
Display title for HTML table(s). Possible values: yes or no. Default value: yes.
- -w, --workingdir dirname
-
Location of working directory. Default: current directory
EXAMPLES
HTML table file(s), containing structures, can be used in two different ways: browsing on a
local machine or deployment via a web server. By default, HTML file(s) are created for viewing
on a local machine using Jmol viewer through a browser; however, you can specify any
supported applet viewer and generate HTML file(s) for deploying on a web server.
First two sets of examples show generation of HTML file(s) using different applet viewers
and a variety of options for local browsing; last set deals with web deployment.
Local deployment: Usage of default JMol viewer distributed with MayaChemTools:
To generate HTML tables with structure display using JMol viewer, rows background filled
with white and light blue colors, navigation links on top and botton of each page, type:
% SDFilesToHTML.pl -o Sample1.sdf
To generate HTML tables with structure display using JMol viewer, rows background filled
with white and light blue colors, navigation links on top and botton of each page, and
only containing MolWeight and Mol_ID SD data fields, type:
% SDFilesToHTML.pl --datafields "MolWeight,Mol_ID" -o Sample1.sdf
To generate HTML tables with CPK structure display using JMol viewer, rows
background filled with white and light blue colors, navigation links on top and botton of
each page, type:
% SDFilesToHTML.pl --strviewerparams "script=\"select *; set frank off;
wireframe off; spacefill on\"" -o Sample1.sdf
To generate HTML tables with structure display using JMol viewer and black background, rows
background filled with light golden and greyish colors, navigation links on top and botton of
each page, 10 rows in each table, greyish header row color, and cell spacing of 1, type:
% SDFilesToHTML.pl -o -n 10 --headeralign "center" --headercolor
"#a1a1a1" --shadecolor "#fafad2,#d1d1d1" --cellspacing 1
--strviewerparams "bgcolor=#000000" Sample1.sdf
To highlight molecular weight values using specified highlight criteria and fill in default background
colors, type:
% SDFilesToHTML.pl -n 10 --highlight "MolWeight,numeric,le,450"
--highlightstyle background -m shadedhighlight -o Sample1.sdf
To highlight molecular weight values using specified highlight criteria, color the text using
default colors, and add a footer message in every page, type:
% SDFilesToHTML.pl -n 4 --highlight "MolWeight,numeric,le,500"
--highlightby collabel --highlightstyle text -m shadedhighlight -o
--footer "Copyright (C) MayaChemTools" --cellspacing 1 Sample1.sdf
To generate tables containing only structures, type:
% SDFilesToHTML.pl -d both -m shadedstructuresonly --strtablesize "6,4"
--cellspacing 1 -b 1 -o Sample1.sdf
To generate tables containing only structures with molecular weight displayed above the
structure, type:
% SDFilesToHTML.pl -d both -m shadedstructuresonly --strtablesize "6,4"
--cmpddatafield "MolWeight,no,top,center" --cellspacing 1 -b 1
-o Sample1.sdf
To generate tables containing links to structures and highlight molecular weight data field values
using specified highlight criteria , type:
% SDFilesToHTML.pl -n 4 --footer "Copyright (C) MayaChemTools"
--highlight "MolWeight,numeric,le,450" --highlightstyle background
-d both -m shadedhighlight -s link --strlinktype button
-o Sample1.sdf
Local deployment: Usage of other structure viewers:
% SDFilesToHTML.pl --strviewertype MarvinView --strviewerconfig
"<Marvin dir path>" -o Sample1.sdf
% SDFilesToHTML.pl -o -n 10 --headeralign "center" --headercolor
"#a1a1a1" --shadecolor "#fafad2,#d1d1d1" --cellspacing 1
--strviewerparams "bgcolor=#000000" --strviewertype Chime
Sample1.sdf
% SDFilesToHTML.pl -n 10 --highlight "MolWeight,numeric,le,450"
--highlightstyle background -m shadedhighlight --strviewertype
Chime -o Sample1.sdf
% SDFilesToHTML.pl -d both -m shadedstructuresonly --strtablesize "6,4"
--cellspacing 1 -b1 -strviewertype JME -strviewerconfig "<JME dir
path>" -o Sample1.sdf
Web deployment: Usage of different structure viewers and options:
For deploying HTML file(s) on a web server, specify a valid codebase directory name
relative to <WWWRootDir>. In addition to codebase, you can also specify archive file
name.
% SDFilesToHTML.pl -m plain -s display --strviewertype Jmol
-strviewerconfig "/jmol" -n 5 -d both -r PlainTable -t "Example
using Jmol: Plain Table" -o Sample1.sdf
% SDFilesToHTML.pl -n 5 -m shade -s display -strviewertype JME
-strviewerconfig "/jme,JME.jar" -r ShadeTable -t "Example using JME:
Shaded Table" -o Sample.sdf
% SDFilesToHTML.pl -n 5 --highlight "MolWeight,numeric,le,450"
--highlightstyle background -d both -m shadedhighlight -s display
-strviewertype MarvinView -strviewerconfig "/marvin" -r
ShadedHightlightTable -t "Example using MarvinView: Shaded and
Highlighted Table" -o Sample.sdf
% SDFilesToHTML.pl -n 4 --highlight "MolWeight,numeric,le,450" -s link
--strlinktype href --strviewertype ChemDrawPlugIn --highlightstyle
background -m shadedhighlight -r "Example using ChemDrawPlugIn:
Shaded and Highlighted Table" -o Sample1.sdf
AUTHOR
Manish Sud
SEE ALSO
FilterSDFiles.pl, InfoSDFiles.pl, SplitSDFiles.pl, MergeTextFilesWithSD.pl
COPYRIGHT
Copyright (C) 2004-2008 Manish Sud. All rights reserved.
This file is part of MayaChemTools.
MayaChemTools is free software; you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License as published by the Free
Software Foundation; either version 3 of the License, or (at your option)
any later version.