WIMS technical documentation

This document is currently under indexed style. You may change it to integral or folding style. There is also a general help and a paper on WIMS.


Variables with special meanings


Variables for general purposes by wims server
wims_exec_error is used to store error messages of the external program called by !exec. For this reason, this variable will be overwritten each time a !exec command is executed.
wims_module_log is used for individual module's log files: if this variable is non-empty, wims.cgi will put its content into the module's log file, at the end of the process of the user request.
wims_version has a value preset to the current version of the wims server.
wims_version_date has a value preset to the last compile date of the server program.
wims_site_manager contains the electronic address of the site manager, as defined in the configuration file wims.conf of the site. Modules should not modify this variable.
wims_print_precision defines the printing precision when a result of evaluation (via !eval or NaN) is converted to a character string. Default value: 8 (may be modified in wims.conf).
wims_warn_ ... is ...
wims_compare_precision is used to define error tolerance when wims compares two numerical values. Formula: !ifval a=b will return TRUE if

abs(a-b)*10000<abs(a+b)+1/10000.

Default value: 10000 (may be modified in wims.conf).
wims_texsize can be used to modify TeX sizes for the module. Default value is 0 (no change). Maybe 1,2,... (increase TeX size) or -1,-2... (decrease TeX size).
wims_homeref_parm is reserved for future use in the command !homeref.
wims_homeref_bgcolor is...
wims_rawmath_functions is used to tell rawmath routine that the words contained in the variable value should be treated as function names. These words can be separated either by white space or by comma.
wims_rawmath_variables is used to tell rawmath routine that the words contained in the variable value should be treated as math variable names. These words can be separated either by white space or by comma.
wims_ref_name gives the addess of the wims serveur (for this server, https://wims.creatoros.org/wims/wims.cgi)
httpd_HTTP_HOST gives the name of the wims serveur (for this server, wims.creatoros.org)
wims_protocol gives protocol used (http, https. for this connexion https)
wims_ref_target defines the target of the command !href, !homeref, !form. Its value is not automatically reset to empty after the commands. (Defaults to empty string, meaning that the target is the current document.)
wims_ref_id defines the id in the command !href (<a ... id=" ">) and in the commands !formradio, !formcheckbox and !getfile. Its value is automatically reset to empty after the commands. (Defaults to empty string)
wims_ref_class defines the css class in the command !href (<a ... class=" ">) and in the commands !formradio, !formcheckbox and !getfile. Its value is automatically reset to empty after the command. (Defaults to empty string)
wims_ref_title defines the title in the commands !href and !getfile (<a ... title=" ">). Its value is automatically reset to empty after the command. (Defaults to empty string)
wims_html_mode can be used before a command as !formradio, !formcheckbox. It forces the results of the formradio to be inside the html mode. The value must be span, li, div. It could be td.
wims_getfile_fname can be used before the command !getfile to specify the value for the download attribute, which will be the new filename of the downloaded file.
wims_html_header is the standardised html header for all its modules' html outputs. Its value is defined in the file html/header.phtml. It is highly recommended that modules use this variable to define their html headers.
wims_expire is used to define expiration dates of the pages sent to clients. Don't touch it if you don't know what this means.
module_init_parm is...
wims_ins_alt if the value is the word empty, no automatic alt is inserted (should be put in ins_attr for example); if the value is the word none, some alt is inserted (generated by WIMS).
jquery_defined if the value is the word yes, one can use jquery script (some themes do not use it, so another solution must be found even if there is less functionnality as dragdrop).
freepar_ If a variable begins by this prefix, no check on parenthesis is done.
wims_writable
wims_prefix


Variables reserved for dynamic insertions
ins_align defines the manner in which the inline picture is aligned with respect to the line. Possible values: bottom, middle or top. Default is empty (which means bottom).
ins_attr is used to define miscallaneous attributes of a dynamic insertion. Examples:
  ins_attr = alt="meaning"
or
  ins_attr = align=middle
(aligns the middle of the image with the baseline for the current textline), or
  ins_attr = ismap
(coordinates of the click will be passed back to the server; if the link of the element is the wims server, the coordinates will be registered under the variable no_name.)
This variable is reset to empty after a dynamic insertion.
ins_border is used to define border width of the html element IMG resulted from the dynamic insertion. Its value should be a positive number.
This variable is reset to empty after a dynamic insertion.
ins_density is used to define the density of the dynamic insertions. Default value: 100x100 .
Avoid using this variable! We are planning to suppress it. Will be replaced by a server-managed variable.
ins_format can be used to determine the format of the graphics file of the dynamic insertion: its value should be either gif or jpg. The default value of this variable is gif (which can be changed by modifying the file wims.conf; but such change is not recommended).
Some types of dynamic insertions may not be affected by this variable.
ins_quality is used to define quality of the graphics convertion used in dynamic insertions. Its value should be between 0 and 100. Affects only dynamic insertions whose graphics format is jpg.
ins_tag is used for dynamic insertions within a form. In this case define
ins_tag=form name where name is the name of the html element IMG within the form (optional).
This variable is reset to empty after a dynamic insertion.
insdraw_size is the size in pixels for the dynamic insertion. ins_filename is the name of the graphics file of the dynamic insertion (generated by wims). It must be taken just after the command !insdraw
ins_url is the url of the graphics file of the dynamic insertion. It must be taken just after the command !insdraw
insplot_data is ...
insplot_font is ...
insplot_set is ...
insplot_split is ...
insplot_transparent is used to define transparent color for insertions. Default is empty (no transparency). Usual value: 255,255,255(white is transparent).


Variables reserved for software
wims_backslash_insmath if the value is yes, it is possible to use the notation \( \) to insert mathematical expressions.
force_mathml if the value is yes, force mathml output of tex formulas.
disable_mathml If the value is 1, disable mathml output of tex formulas. The variable disable_mathml has priority on force_mathml.
pari_precision give the pari precision of the computation with Pari/GP
print_precision give the precision of the computed number at the end of the computation.
maxima_precision give the maxima precision of the computation with Maxima.
wims_multiexec If the value is yes, allow the multiexecution of the mathematical software
use_comma If value is 1 moneyprint will use a decimal comma. Any other value or no value will use the decimal point notation. Only to be used for presentation purposes.