<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.ice-online.com/index.php?action=history&amp;feed=atom&amp;title=ENVIRONMENT</id>
	<title>ENVIRONMENT - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ice-online.com/index.php?action=history&amp;feed=atom&amp;title=ENVIRONMENT"/>
	<link rel="alternate" type="text/html" href="https://wiki.ice-online.com/index.php?title=ENVIRONMENT&amp;action=history"/>
	<updated>2026-04-14T13:05:29Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.ice-online.com/index.php?title=ENVIRONMENT&amp;diff=855&amp;oldid=prev</id>
		<title>ConvertBot: Performs various functions on the NeXtMidas environment</title>
		<link rel="alternate" type="text/html" href="https://wiki.ice-online.com/index.php?title=ENVIRONMENT&amp;diff=855&amp;oldid=prev"/>
		<updated>2020-04-27T22:05:18Z</updated>

		<summary type="html">&lt;p&gt;Performs various functions on the NeXtMidas environment&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Performs various functions on the NeXtMidas environment&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;func&amp;gt;  Function to perform on environment [DEF=SHOW]&lt;br /&gt;
&amp;lt;key&amp;gt;   Function dependent keyword. Desired variable of interest for&lt;br /&gt;
        SET or GET&lt;br /&gt;
&amp;lt;value&amp;gt; Results label for GET, or value for SET&lt;br /&gt;
&lt;br /&gt;
This command performs a number of functions from showing the NeXtMidas&lt;br /&gt;
environment, to performing an NFSLOOKUP or showing system related&lt;br /&gt;
information like memory usage or threads Java properties&lt;br /&gt;
&lt;br /&gt;
Since the environment variables are now the table ENV in the results table,&lt;br /&gt;
they may be read directly without using this command.&lt;br /&gt;
&lt;br /&gt;
The NeXtMidas FILE intrinsic replaces the X-Midas environment file functions.&lt;br /&gt;
&lt;br /&gt;
Special keywords may not set an entry in the ENV table or may do more than&lt;br /&gt;
just set the entry.&lt;br /&gt;
&lt;br /&gt;
FUNCTIONS:&lt;br /&gt;
  GET - ENV GET &amp;lt;key&amp;gt; &amp;lt;label&amp;gt;&lt;br /&gt;
    Get the keyword in the environment. Prints to screen if &amp;lt;label&amp;gt; is blank&lt;br /&gt;
&lt;br /&gt;
    The environment variables in the ENV table are:&lt;br /&gt;
      NMROOT       - The NeXtMidas root installation directory&lt;br /&gt;
      USER         - User name&lt;br /&gt;
      HOME         - The home directory&lt;br /&gt;
      HOSTNAME     - The local host name&lt;br /&gt;
      HOSTADDR     - The local host IP address&lt;br /&gt;
      OSTYPE       - The operating system type (UNIX,WINDOWS,...)&lt;br /&gt;
      OSNAME       - The operating system name (Linux,...)&lt;br /&gt;
      OSREP        - The operating system data representation (EEEI,IEEE)&lt;br /&gt;
      EDITOR       - The desired editor. Automatically chosen by EDIT command.&lt;br /&gt;
      VIEW         - TBD&lt;br /&gt;
      THEME        - The current theme (see LOOKANDFEEL).&lt;br /&gt;
      STYLE        - TBD&lt;br /&gt;
      GRAPHICS     - What graphics options to use. See details below.&lt;br /&gt;
      PID          - Process ID&lt;br /&gt;
      MSF          - The current Midas State File&lt;br /&gt;
      NMVERSION    - The NeXtMidas version (x.y.z).&lt;br /&gt;
      JVMVERSION   - The Java version (x.y.z).&lt;br /&gt;
      NMPRERELEASE - TRUE if version is a pre-release, FALSE otherwise.&lt;br /&gt;
      PAUSE        - The default pause time between primitive process calls.&lt;br /&gt;
      VERIFY       - The VERIFY mask string&lt;br /&gt;
      DEBUG        - The DEBUG mask string of bar (&amp;quot;|&amp;quot;) separated values.&lt;br /&gt;
      HWFILE       - The hardware configuration file&lt;br /&gt;
      KEYMAP       - Mapping of Plot keyboard shortcuts&lt;br /&gt;
      UIMANAGER    - Adjustments made to the SWING UIManager&lt;br /&gt;
      IOOPTIONS    - The options for input/output for files and other I/O.&lt;br /&gt;
&lt;br /&gt;
    Special GET keywords (not necessarily in the table) are:&lt;br /&gt;
      COMPLETIONAUXEXCLUDE - Pipe-separated list of AUXes that are to be&lt;br /&gt;
                             excluded when using FILES searching and&lt;br /&gt;
                             tab-completion              (since NeXtMidas 3.1.0)&lt;br /&gt;
      DEFAULTTABLEFLAGS    - The default table flags     (since NeXtMidas 2.7.1)&lt;br /&gt;
      DEFAULTTABLEMODE     - The default table mode      (since NeXtMidas 2.7.0)&lt;br /&gt;
      FileNameCASE         - Default FileName case option (this is overridden&lt;br /&gt;
                             by the FNCASE= qualifier).  (since NeXtMidas 3.3.1)&lt;br /&gt;
      HOSTNAMEFQDN         - Fully-Qualified-Domain-Name for the ENV.HOSTNAME&lt;br /&gt;
                             (note that this will simply return ENV.HOSTNAME if&lt;br /&gt;
                             the name resolution fails.  (since NeXtMidas 3.3.2)&lt;br /&gt;
      NUMSCReens           - The number of screens in this graphics environment&lt;br /&gt;
      NUMNONVIRTSCREENS    - The number of non-virtual screens in this graphics&lt;br /&gt;
                             environment                 (since NeXtMidas 2.8.0)&lt;br /&gt;
      PRIV                 - The privileges mask&lt;br /&gt;
      SERVER               - Gets the current server address (this can be&lt;br /&gt;
                             overridden by /REMOTE=&amp;lt;server&amp;gt;)&lt;br /&gt;
      SERVERFQDN           - Fully-Qualified-Domain-Name for the ENV.SERVER&lt;br /&gt;
                             (note that this will simply return ENV.SERVER if&lt;br /&gt;
                             the name resolution fails.  (since NeXtMidas 3.3.2)&lt;br /&gt;
      USENATIVE            - The mask string defining native code use&lt;br /&gt;
&lt;br /&gt;
  GRAPHICS - The graphics options (found in Theme.java) allow for control over&lt;br /&gt;
             the method NeXtMidas uses to display certain items such as plots&lt;br /&gt;
             and widgets. The current default in Theme.java is SWING|REALTIME&lt;br /&gt;
             but this can be overridden using the 'env set' command (such as in&lt;br /&gt;
             startup scripts).&lt;br /&gt;
&lt;br /&gt;
             Options:&lt;br /&gt;
             --------&lt;br /&gt;
             HEADLESS      - Do not draw Windows (including Plots) on display&lt;br /&gt;
             AWT           - use heavyweight (AWT) objects&lt;br /&gt;
             SWING         - use lightweight (SWING) objects for Plots&lt;br /&gt;
             REALTIME      - allow lightweight plots to draw in their own thread&lt;br /&gt;
             MOBILE        - All-SWING with special parenting options for pop-ups&lt;br /&gt;
             SWINGDB       - turn on SWING double buffering&lt;br /&gt;
             SWINGWIDGETS  - GWidget controls drawn on SWING panels&lt;br /&gt;
             SWINGPOPUPS   - GWidget controls drawn on SWING panels&lt;br /&gt;
             NOSLAF        - No Swing Look and Feel theme support (or query)&lt;br /&gt;
             NOXLAF        - No external swing look and feel changes via UIManagers&lt;br /&gt;
             INITONLOAD    - Initialize graphics themes on load instead of on demand&lt;br /&gt;
             DEBUG         - Enable graphics environment debug output&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  KEYMAP    - (Since 2.7.2) The keymap is a mapping of keyboard shortcuts to&lt;br /&gt;
              Plot zoom adjustments. Based on industry practices (most notably&lt;br /&gt;
              Google Maps), the keyboard shortcuts allow users to move the&lt;br /&gt;
              viewable area of a zoomed-in plot using only the keyboard.&lt;br /&gt;
&lt;br /&gt;
              ENV.KEYMAP is typically set in nmstartup.mm, but can be modified&lt;br /&gt;
              at any time. If it is null, Plot will use default settings. The&lt;br /&gt;
              defaults are basically to use the arrow keys to make small&lt;br /&gt;
              adjustments, the home/page up/page down/end keys for larger&lt;br /&gt;
              adjustments, and the &amp;quot;+&amp;quot; and &amp;quot;-&amp;quot; keys for incremental zooming in&lt;br /&gt;
              and out.&lt;br /&gt;
&lt;br /&gt;
  UIMANAGER - The SWING UIManager provides the ability to change many aspects&lt;br /&gt;
              of the Swing look and feel &amp;quot;on demand&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
              Starting in NeXtMidas 2.7.3, users can alter the UIManager by&lt;br /&gt;
              using the &amp;quot;environment set uimanager &amp;lt;table&amp;gt;&amp;quot; command:&lt;br /&gt;
&lt;br /&gt;
              nM&amp;gt; env set uimanager {scrollbar={width=10,thumb=red}}&lt;br /&gt;
&lt;br /&gt;
              The above example will change the Swing scrollbar to be 10 pixels&lt;br /&gt;
              wide and have a color of red.&lt;br /&gt;
&lt;br /&gt;
              Note that not all UIManager settings can be altered, as they may&lt;br /&gt;
              require inputs of sound files, images, etc.. Generally, the&lt;br /&gt;
              following input values types are supported:&lt;br /&gt;
&lt;br /&gt;
                Data Types (int, long, double, boolean, etc)&lt;br /&gt;
                Strings (or char)&lt;br /&gt;
                Colors&lt;br /&gt;
                Fonts (font name only, e.g. &amp;quot;courier&amp;quot;, &amp;quot;arial&amp;quot;, etc)&lt;br /&gt;
&lt;br /&gt;
              A complete list of UIManager properties depends on the Java&lt;br /&gt;
              version and OS, but can be found in Java by using the following:&lt;br /&gt;
&lt;br /&gt;
                Enumeration&amp;lt;Object&amp;gt; keys =    UIManager.getDefaults().keys();&lt;br /&gt;
&lt;br /&gt;
  IOOPTIONS - The options for input/output for files and other I/O.  Since 2.9.0&lt;br /&gt;
              DisableEscapeSequences - Turn off the handling of escape&lt;br /&gt;
                            sequences in quoted Strings (inside macro/prompt)&lt;br /&gt;
                            using the backslash character (i.e. '\') just like&lt;br /&gt;
                            Java/C string escape sequences.&lt;br /&gt;
                            Note: this does not apply to creating Tables from&lt;br /&gt;
                            Strings or writing out the contents of a Table with&lt;br /&gt;
                            Table.toByte(..). This option is DEPRECATED.&lt;br /&gt;
                            In 3.1.0, escape sequences are enabled by default.&lt;br /&gt;
              StrictHTTP  - Strictly follow HTTP 1.1 (RFC 2616) rules. E.g. Work&lt;br /&gt;
                            around HTTP servers that return 200 status code to a&lt;br /&gt;
                            GET/POST request with Range header (with desire to&lt;br /&gt;
                            read partial content), which will potentially break&lt;br /&gt;
                            communication with NeXtMidas 2.8.2 and prior HTTP&lt;br /&gt;
                            servers that did not correctly returned 206 status&lt;br /&gt;
                            code.&lt;br /&gt;
              TruncateBLUE - When overwriting existing BLUE files, truncate&lt;br /&gt;
                            them on the storage device to minimum size&lt;br /&gt;
                            necessary (Since 2.9.1).&lt;br /&gt;
              DisableQuadwordsEqualityChecks - Turn off the equality checks in&lt;br /&gt;
                            DataFile that check quadwords in Type 5000 files.&lt;br /&gt;
                            Setting this will enable the (buggy) behavior of&lt;br /&gt;
                            NeXtMidas 3.2 and earlier which ignored quadwords&lt;br /&gt;
                            in equality checks. (Since 3.3.0)&lt;br /&gt;
              WriteNoAbort - Do not abort even if an Exception occurs during&lt;br /&gt;
                            writing. (Since 3.5.4)&lt;br /&gt;
              FileIONoAbort- Do not abort even if an Exception occurs during&lt;br /&gt;
                            a file write or read. (Since 3.7.1)&lt;br /&gt;
&lt;br /&gt;
  SET - ENV SET &amp;lt;key&amp;gt; &amp;lt;value&amp;gt;&lt;br /&gt;
    Set the keyword in the environment&lt;br /&gt;
&lt;br /&gt;
    Special SET keywords are:&lt;br /&gt;
      COMPLETIONAUXEXCLUDE - Sets the pipe-separated list of AUXes which are&lt;br /&gt;
                             ignored when searching via the FILES command or&lt;br /&gt;
                             tab-completion.             (Since NeXtMidas 3.1.1)&lt;br /&gt;
      DEFAULTTABLEFLAGS    - The default table flags, this can also be set using&lt;br /&gt;
                             the TABLE command.          (since NeXtMidas 2.7.1)&lt;br /&gt;
      DEFAULTTABLEMODE     - The default table mode, this can also be set using&lt;br /&gt;
                             the TABLE command.          (since NeXtMidas 2.7.0)&lt;br /&gt;
      FileNameCASE         - Default FileName case option (this is overridden&lt;br /&gt;
                             by the FNCASE= qualifier).  (since NeXtMidas 3.3.1)&lt;br /&gt;
      PRIV                 - Sets the sandbox privileges (supports value=ALL)&lt;br /&gt;
      USENATIVE            - Sets the property in nxm.sys.lib.Native for use&lt;br /&gt;
                             of native code&lt;br /&gt;
&lt;br /&gt;
  SHOW - ENV SHOW &amp;lt;key&amp;gt;&lt;br /&gt;
    By default shows the current environment is listed on the terminal or&lt;br /&gt;
    any of the other special SHOW functions listed below.&lt;br /&gt;
&lt;br /&gt;
    Special SHOW functions are:&lt;br /&gt;
      &amp;quot;&amp;quot;       - shows all NeXtMidas environment variables in ENV table and&lt;br /&gt;
                 other special ones not in the table [DEFAULT]&lt;br /&gt;
      THREAD   - shows all threads&lt;br /&gt;
      MEM      - shows memory usage&lt;br /&gt;
      PROP &amp;lt;filter&amp;gt; - shows all Java Property values. Since 3.5.2, a simple&lt;br /&gt;
                 case-insensitive &amp;lt;filter&amp;gt; search string can be specified for&lt;br /&gt;
                 either property name or value.&lt;br /&gt;
      KEYGETS  - Deprecated since NeXtMidas 2.7.0 (always blank)&lt;br /&gt;
      KEYSETS  - Deprecated since NeXtMidas 2.7.0 (always blank)&lt;br /&gt;
      HANDLERS - show table of handlers for FILEs and PACKETs&lt;br /&gt;
&lt;br /&gt;
  RESET - TBD - resets variables affecting pipes and macros&lt;br /&gt;
&lt;br /&gt;
  NSLOOKUP - gets an IP address for the named node&lt;br /&gt;
    Syntax: ENV NSLOOKUP &amp;lt;hostname&amp;gt; &amp;lt;inetaddress&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  GC - runs the garbage collector.  Use /VERBOSE=T to see output in a macro.&lt;br /&gt;
    Syntax: ENV GC&lt;br /&gt;
&lt;br /&gt;
Examples:&lt;br /&gt;
  1. A typical set of the environment variables kept in the ENV table are&lt;br /&gt;
    nM&amp;gt; env&lt;br /&gt;
      T: ENV             = Table of 24 entries&lt;br /&gt;
    19S:  NMROOT         = /home/midas/nxmxxx/&lt;br /&gt;
     3S:  USER           = jph&lt;br /&gt;
    10S:  HOME           = /home/jph/&lt;br /&gt;
     6S:  HOSTNAME       = JPHLAP&lt;br /&gt;
     9S:  HOSTADDR       = 127.0.0.1&lt;br /&gt;
     4S:  OSTYPE         = UNIX&lt;br /&gt;
     5S:  OSNAME         = Linux&lt;br /&gt;
     4S:  OSREP          = EEEI&lt;br /&gt;
     3S:  EDITOR         = nedit&lt;br /&gt;
     4S:  VIEW           = TEXT&lt;br /&gt;
     5S:  THEME          = GEAR3&lt;br /&gt;
     5S:  STYLE          = GEAR3&lt;br /&gt;
    14S:  GRAPHICS       = SWING|REALTIME&lt;br /&gt;
     4S:  PID            = 1172&lt;br /&gt;
    19S:  MSF            = /home/jph/nmsf_1172&lt;br /&gt;
     5S:  NMVERSION      = 3.4.3&lt;br /&gt;
     5S:  JVMVERSION     = 1.8.0&lt;br /&gt;
     4S:  NMPRERELEASE   = FALSE&lt;br /&gt;
      D:  PAUSE          = 0.0125&lt;br /&gt;
     1S:  VERIFY         = |&lt;br /&gt;
    17S:  DEBUG          = |Trace|Deprecate|&lt;br /&gt;
    34S:  USENATIVE      = |IO|Math|Cast|CastX|Convert|Other|&lt;br /&gt;
    20S:  HWFILE         = nxm.sys.dat.hwconfig&lt;br /&gt;
      T:  KEYMAP         = Table of 1 entries&lt;br /&gt;
    ------- Other Environment Settings ------&lt;br /&gt;
    CompletionAuxExclude = |99|&lt;br /&gt;
    DefaultTableFlags    = |AutoReadPrev|&lt;br /&gt;
    DefaultTableMode     = SynchronizedLinkedHashMap&lt;br /&gt;
    FileNameCase         = AutoCase&lt;br /&gt;
    HostNameFQDN         = jphlap.localdomain&lt;br /&gt;
    NumNonVirtScreens    = 1&lt;br /&gt;
    NumScreens           = 3&lt;br /&gt;
    Priv                 = ALL&lt;br /&gt;
    Server               = &lt;br /&gt;
    ServerFQDN           = &lt;br /&gt;
    UseNative            = |IO|Math|Cast|Convert|Other|&lt;br /&gt;
&lt;br /&gt;
  2. To determine the host address of this computer&lt;br /&gt;
    nM&amp;gt; ENV GET HOSTNAME myHostname&lt;br /&gt;
&lt;br /&gt;
  3. To set the control panel widgets to use SWING panels and double buffer&lt;br /&gt;
    nM&amp;gt; ENV SET GRAPHICS +SWINGWIDGETS|+SWINGDB&lt;br /&gt;
&lt;br /&gt;
  4. To set the Swing scrollbar to be 10 pixels wide and have a color of red:&lt;br /&gt;
    nM&amp;gt; env set uimanager {scrollbar={width=10,thumb=red}}&lt;br /&gt;
&lt;br /&gt;
  5. If the /SERVER switch is specified on a macro, it is to be run in server&lt;br /&gt;
     mode. If the /CLIENT switch is specified on a macro, it is to be run in&lt;br /&gt;
     client mode. The client macro gets the server address from the&lt;br /&gt;
     /REMOTE=host:port switch, the ENV.SERVER variable, or the Midas.getServer()&lt;br /&gt;
     function. This command will search this path for the servers address&lt;br /&gt;
    nM&amp;gt; ENV GET SERVER theServer&lt;br /&gt;
&lt;br /&gt;
  6. To determine how many screens your computer has:&lt;br /&gt;
    nM&amp;gt; env get NUMSCREENS ns&lt;br /&gt;
&lt;br /&gt;
  7. To determine how many screens your computer has that are not virtual (aka,&lt;br /&gt;
     cinerama is 1 screen not 3).&lt;br /&gt;
    nM&amp;gt; env get NUMNONVIRTSCREENS nsNonVirt&lt;br /&gt;
&lt;br /&gt;
  8. Disable the handling of escape sequences in Strings:&lt;br /&gt;
     nM&amp;gt; env set iooptions +DisableEscapeSequences&lt;br /&gt;
&lt;br /&gt;
  9. Set the list of AUXes to ignore when using the FILES command or&lt;br /&gt;
     tab-completion&lt;br /&gt;
     nM&amp;gt; env set COMPLETIONAUXEXCLUDE &amp;quot;RAM|99&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Switches:&lt;br /&gt;
  /ALL        - Enumerate contents of any tables in the environment for SHOW&lt;br /&gt;
                function&lt;br /&gt;
  /REMOTE=&amp;lt;r&amp;gt; - Override the default host:port for the ENV GET SERVER function&lt;br /&gt;
  /VERBOSE    - Show additional information while command is running&lt;br /&gt;
&lt;br /&gt;
See Also: TABLE, LOOKANDFEEL&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:NXM_Explain]]&lt;/div&gt;</summary>
		<author><name>ConvertBot</name></author>
		
	</entry>
</feed>