Fix crash when using $desktop_name with out_to_x no
[monky] / doc / variables.xml
index 7203587..bc5c36c 100644 (file)
@@ -4,8 +4,11 @@
             <command>
                 <option>acpiacadapter</option>
             </command>
             <command>
                 <option>acpiacadapter</option>
             </command>
+            <option>(adapter)</option>
         </term>
         </term>
-        <listitem>ACPI ac adapter state. 
+        <listitem>ACPI ac adapter state. On linux, the adapter option specifies the
+        subfolder of /sys/class/power_supply containing the state information (defaults
+        to "AC"). Other systems ignore it.
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>cmdline_to_pid</option>
+            </command>
+            <option>string</option>
+        </term>
+        <listitem>PID of the first process that has string in it's
+       commandline
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>color</option>
             </command>
             <option>(color)</option>
         </term>
                 <option>color</option>
             </command>
             <option>(color)</option>
         </term>
-        <listitem>Change drawing color to color 
+        <listitem>Change drawing color to 'color' which is a name of
+        a color or a hexcode preceded with # (for example #0A1B2C ).
+        If you use ncurses only the following colors are supported:
+       red,green,yellow,blue,magenta,cyan,black,white.
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
             <option>var1 var2</option>
         </term>
         <listitem>Places the lines of var2 to the right of the
             <option>var1 var2</option>
         </term>
         <listitem>Places the lines of var2 to the right of the
-        lines of var1 seperated by the chars that are put between
+        lines of var1 separated by the chars that are put between
         var1 and var2. For example: ${combine ${head /proc/cpuinfo
         2} - ${head /proc/meminfo 1}} gives as output
         "cpuinfo_line1 - meminfo_line1" on line 1 and
         var1 and var2. For example: ${combine ${head /proc/cpuinfo
         2} - ${head /proc/meminfo 1}} gives as output
         "cpuinfo_line1 - meminfo_line1" on line 1 and
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>curl</option>
+            </command>
+            <option>url (interval_in_minutes)</option>
+        </term>
+        <listitem>
+            <para>Download data from URI using Curl at the
+            specified interval. The interval may be a floating
+            point value greater than 0, otherwise defaults to 15
+            minutes. Most useful when used in conjunction with Lua
+            and the Lua API. This object is threaded, and once a
+            thread is created it can't be explicitly destroyed.
+            One thread will run for each URI specified. You can use
+            any protocol that Curl supports.</para>
+        </listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>desktop</option>
+            </command>
+        </term>
+        <listitem>Number of the desktop on which conky is running
+        or the message "Not running in X" if this is the case. 
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>desktop_name</option>
+            </command>
+        </term>
+        <listitem>Name of the desktop on which conky is running or
+        the message "Not running in X" if this is the case. 
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>desktop_number</option>
+            </command>
+        </term>
+        <listitem>Number of desktops or the message "Not running in
+        X" if this is the case. 
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>disk_protect</option>
             </command>
             <option>device</option>
                 <option>disk_protect</option>
             </command>
             <option>device</option>
             </command>
             <option>string</option>
         </term>
             </command>
             <option>string</option>
         </term>
-        <listitem>Evalutates given string according to the rules of
+        <listitem>Evaluates given string according to the rules of
         TEXT interpretation, i.e. parsing any contained text object
         specifications into their output, any occuring '$$' into a
         single '$' and so on. The output is then being parsed
         TEXT interpretation, i.e. parsing any contained text object
         specifications into their output, any occuring '$$' into a
         single '$' and so on. The output is then being parsed
         default_graph_size config setting. Takes the switch '-t' to
         use a temperature gradient, which makes the gradient values
         change depending on the amplitude of a particular graph
         default_graph_size config setting. Takes the switch '-t' to
         use a temperature gradient, which makes the gradient values
         change depending on the amplitude of a particular graph
-        value (try it and see).  If -t or -l is your first argument, you may need to preceed it by a space (' ').
+        value (try it and see). If -t or -l is your first argument,
+        you may need to preceed it by a space (' '). 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
             <option>interval (-t) (-l) command</option>
         </term>
         <listitem>Same as execgraph, but takes an interval arg and
             <option>interval (-t) (-l) command</option>
         </term>
         <listitem>Same as execgraph, but takes an interval arg and
-        graphs values.  If -t or -l is your first argument, you may need to preceed it by a space (' ').
+        graphs values. If -t or -l is your first argument, you may
+        need to preceed it by a space (' '). 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>format_time</option>
+            </command>
+            <option>seconds format</option>
+        </term>
+        <listitem>Format time given in seconds. This var only works when
+       the times_in_seconds configuration setting is on. Format is a string
+       that should start and end with a "-char. The "-chars are not
+       part of the output, \w,\d,\h,\m,\s,\(,\) and \\ are replaced by
+       weeks,days,hours,minutes,seconds,(,) and \. If you leave out a unit,
+       it's value will be expressed in the highest unite lower then the
+       one left out. Text between ()-chars will not be visible if a
+       replaced unit in this text is 0. If seconds is a decimal number
+       then you can see the numbers behind the point by using \S
+       followed by a number that specifies the amount of
+       digits behind the point that you want to see (maximum 9).
+       You can also place a 'x' behind \S so you have all digits behind
+       the point and no trailing zero's. (also maximum 9)
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>forwarded_mails</option>
             </command>
             <option>(maildir)</option>
                 <option>forwarded_mails</option>
             </command>
             <option>(maildir)</option>
             <command>
                 <option>hddtemp</option>
             </command>
             <command>
                 <option>hddtemp</option>
             </command>
-            <option>dev, (host,(port))</option>
+            <option>(dev)</option>
         </term>
         <listitem>Displays temperature of a selected hard disk
         </term>
         <listitem>Displays temperature of a selected hard disk
-        drive as reported by the hddtemp daemon running on
-        host:port. Default host is 127.0.0.1, default port is 7634.
-        
+               drive as reported by the hddtemp daemon. Use hddtemp_host
+               and hddtemp_port to specify a host and port for all hddtemp
+               objects. If no dev parameter is given, the first disk returned
+               by the hddtemp daemon is used.
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
             <command>
                 <option>head</option>
             </command>
             <command>
                 <option>head</option>
             </command>
-            <option>logfile lines (interval)</option>
+            <option>logfile lines (next_check)</option>
         </term>
         </term>
-        <listitem>Displays first N lines of supplied text text
-        file. If interval is not supplied, Conky assumes 2x Conky's
-        interval. Max of 30 lines can be displayed, or until the
-        text buffer is filled. 
+        <listitem>Displays first N lines of supplied text file. The
+        file is checked every 'next_check' update. If next_check is
+        not supplied, Conky defaults to 2. Max of 30 lines can be
+        displayed, or until the text buffer is filled. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         and right side types are: 
         <simplelist>
             <member>
         and right side types are: 
         <simplelist>
             <member>
-            <command>double</command>: argument consists of only
+            <command>double</command>Argument consists of only
             digits and a single dot.</member>
             <member>
             digits and a single dot.</member>
             <member>
-            <command>long</command>: argument consists of only
+            <command>long</command>Argument consists of only
             digits.</member>
             <member>
             digits.</member>
             <member>
-            <command>string</command>: argument is enclosed in
-            quotation mark or the checks for double and long failed
-            before.</member>
+            <command>string</command>Argument is enclosed in
+            quotation marks (")</member>
         </simplelist>Valid operands are: '&gt;', '&lt;', '&gt;=',
         '&lt;=', '==', '!='. 
         <para /></listitem>
         </simplelist>Valid operands are: '&gt;', '&lt;', '&gt;=',
         '&lt;=', '==', '!='. 
         <para /></listitem>
         position (or any other formatting) of images, they are just
         rendered as per the arguments passed. The only reason
         $image is part of the TEXT section, is to allow for runtime
         position (or any other formatting) of images, they are just
         rendered as per the arguments passed. The only reason
         $image is part of the TEXT section, is to allow for runtime
-        modifications, through $execp $lua_parse, $lua_read_parse,
-        or some other method. 
+        modifications, through $execp $lua_parse, or some other
+        method. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         </term>
         <listitem>Displays the number of messages in your global
         IMAP inbox by default. You can define individual IMAP
         </term>
         <listitem>Displays the number of messages in your global
         IMAP inbox by default. You can define individual IMAP
-        inboxes seperately by passing arguments to this object.
+        inboxes separately by passing arguments to this object.
         Arguments are: "host user pass [-i interval (in seconds)]
         Arguments are: "host user pass [-i interval (in seconds)]
-        [-f folder] [-p port] [-e command] [-r retries]". Default
+        [-f 'folder'] [-p port] [-e 'command'] [-r retries]". Default
         port is 143, default folder is 'INBOX', default interval is
         5 minutes, and default number of retries before giving up
         is 5. If the password is supplied as '*', you will be
         port is 143, default folder is 'INBOX', default interval is
         5 minutes, and default number of retries before giving up
         is 5. If the password is supplied as '*', you will be
         </term>
         <listitem>Displays the number of unseen messages in your
         global IMAP inbox by default. You can define individual
         </term>
         <listitem>Displays the number of unseen messages in your
         global IMAP inbox by default. You can define individual
-        IMAP inboxes seperately by passing arguments to this
+        IMAP inboxes separately by passing arguments to this
         object. Arguments are: "host user pass [-i interval (in
         object. Arguments are: "host user pass [-i interval (in
-        seconds)] [-f folder] [-p port] [-e command] [-r retries]".
+        seconds)] [-f 'folder'] [-p port] [-e 'command'] [-r retries]".
         Default port is 143, default folder is 'INBOX', default
         interval is 5 minutes, and default number of retries before
         giving up is 5. If the password is supplied as '*', you
         Default port is 143, default folder is 'INBOX', default
         interval is 5 minutes, and default number of retries before
         giving up is 5. If the password is supplied as '*', you
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>include</option>
+            </command>
+            <option>path</option>
+        </term>
+        <listitem>
+            <para>Loads the configfile at path, places the
+            configsettings behind the configsettings in the orginal
+            config and places the vars where the includevar
+            stood.</para>
+        </listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>ioscheduler</option>
             </command>
             <option>disk</option>
                 <option>ioscheduler</option>
             </command>
             <option>disk</option>
             <command>
                 <option>loadavg</option>
             </command>
             <command>
                 <option>loadavg</option>
             </command>
-                       <option>(1|2|3)
-                       </option>
+            <option>(1|2|3)</option>
         </term>
         </term>
-        <listitem>System load average, 1 is for past 1
-        minute, 2 for past 5 minutes and 3 for past 15 minutes. 
+        <listitem>System load average, 1 is for past 1 minute, 2
+       for past 5 minutes and 3 for past 15 minutes. Without argument, prints
+       all three values separated by whitespace.
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
             <command>
                 <option>loadgraph</option>
             </command>
             <command>
                 <option>loadgraph</option>
             </command>
-            <option>(1|2|3) (height),(width) (gradient colour 1) (gradient
-            colour 2) (scale) (-t) (-l)</option>
+            <option>(height),(width) (gradient colour 1)
+            (gradient colour 2) (scale) (-t) (-l)</option>
         </term>
         <listitem>Load1 average graph, similar to xload, with
         optional colours in hex, minus the #. Uses a logarithmic
         </term>
         <listitem>Load1 average graph, similar to xload, with
         optional colours in hex, minus the #. Uses a logarithmic
         </term>
         <listitem>Executes a Lua function with given parameters,
         then prints the returned string. See also 'lua_load' on how
         </term>
         <listitem>Executes a Lua function with given parameters,
         then prints the returned string. See also 'lua_load' on how
-        to load scripts. 
+        to load scripts. Conky puts 'conky_' in front of
+        function_name to prevent accidental calls to the wrong
+        function unless you put you place 'conky_' in front of it
+        yourself. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         </term>
         <listitem>Executes a Lua function with given parameters and
         draws a bar. Expects result value to be an integer between
         </term>
         <listitem>Executes a Lua function with given parameters and
         draws a bar. Expects result value to be an integer between
-        0 and 100. See also 'lua_load' on how to load scripts. 
+        0 and 100. See also 'lua_load' on how to load scripts.
+        Conky puts 'conky_' in front of function_name to prevent
+        accidental calls to the wrong function unless you put you
+        place 'conky_' in front of it yourself. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <listitem>Executes a Lua function with given parameters and
         draws a gauge. Expects result value to be an integer
         between 0 and 100. See also 'lua_load' on how to load
         <listitem>Executes a Lua function with given parameters and
         draws a gauge. Expects result value to be an integer
         between 0 and 100. See also 'lua_load' on how to load
-        scripts. 
+        scripts. Conky puts 'conky_' in front of function_name to
+        prevent accidental calls to the wrong function unless you
+        put you place 'conky_' in front of it yourself. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         load scripts. Takes the switch '-t' to use a temperature
         gradient, which makes the gradient values change depending
         on the amplitude of a particular graph value (try it and
         load scripts. Takes the switch '-t' to use a temperature
         gradient, which makes the gradient values change depending
         on the amplitude of a particular graph value (try it and
-        see). 
+        see). Conky puts 'conky_' in front of function_name to
+        prevent accidental calls to the wrong function unless you
+        put you place 'conky_' in front of it yourself. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <listitem>Executes a Lua function with given parameters as
         per $lua, then parses and prints the result value as per
         the syntax for Conky's TEXT section. See also 'lua_load' on
         <listitem>Executes a Lua function with given parameters as
         per $lua, then parses and prints the result value as per
         the syntax for Conky's TEXT section. See also 'lua_load' on
-        how to load scripts. 
-        <para /></listitem>
-    </varlistentry>
-    <varlistentry>
-        <term>
-            <command>
-                <option>lua_read_parse</option>
-            </command>
-            <option>function_name (conky text)</option>
-        </term>
-        <listitem>Executes a Lua function per $lua, except takes a
-        2nd argument which is first evaluated as per Conky's TEXT
-        section and passed to the function first. The return value
-        is then parsed and prints the result value as per the
-        syntax for Conky's TEXT section. See also 'lua_load' on how
-        to load scripts. 
+        how to load scripts. Conky puts 'conky_' in front of
+        function_name to prevent accidental calls to the wrong
+        function unless you put you place 'conky_' in front of it
+        yourself. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
                 <option>monitor</option>
             </command>
         </term>
                 <option>monitor</option>
             </command>
         </term>
-        <listitem>Number of the monitor on which conky is running 
+        <listitem>Number of the monitor on which conky is running
+        or the message "Not running in X" if this is the case. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
                 <option>monitor_number</option>
             </command>
         </term>
                 <option>monitor_number</option>
             </command>
         </term>
-        <listitem>Number of monitors 
+        <listitem>Number of monitors or the message "Not running in
+        X" if this is the case. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         other values as integer. 
         <simplelist>
             <member>
         other values as integer. 
         <simplelist>
             <member>
-            <command>threshold</command>: the thresholdtemperature
-            at which the gpu slows down</member>
+               <command>threshold</command>
+               <option>The thresholdtemperature at
+                       which the gpu slows down</option>
+            </member>
             <member>
             <member>
-            <command>temp</command>: gives the gpu current
-            temperature</member>
+               <command>temp</command>
+               <option>Gives the gpu current
+                       temperature</option>
+            </member>
             <member>
             <member>
-            <command>ambient</command>: gives current air
-            temperature near GPU case</member>
+                <command>ambient</command>
+                <option>Gives current air temperature near GPU
+                case</option>
+            </member>
             <member>
             <member>
-            <command>gpufreq</command>: gives the current gpu
-            frequency</member>
+                <command>gpufreq</command>
+                <option>Gives the current gpu frequency</option>
+            </member>
             <member>
             <member>
-            <command>memfreq</command>: gives the current mem
-            frequency</member>
+                <command>memfreq</command>
+                <option>Gives the current mem frequency</option>
+            </member>
             <member>
             <member>
-            <command>imagequality</command>: which imagequality
-            should be choosen by OpenGL applications</member>
+                <command>imagequality</command>
+                <option>Which imagequality should be chosen by
+                OpenGL applications</option>
+            </member>
         </simplelist>
         <para /></listitem>
     </varlistentry>
         </simplelist>
         <para /></listitem>
     </varlistentry>
         must be specified. Valid items are: 
         <simplelist>
             <member>
         must be specified. Valid items are: 
         <simplelist>
             <member>
-            <command>status</command>: Display if battery is fully
-            charged, charging, discharging or absent (running on
-            AC)</member>
+                <command>status</command>
+                <option>Display if battery is fully charged,
+                charging, discharging or absent (running on
+                AC)</option>
+            </member>
             <member>
             <member>
-            <command>percent</command>: Display charge of battery
-            in percent, if charging or discharging. Nothing will be
-            displayed, if battery is fully charged or
-            absent.</member>
+                <command>percent</command>
+                <option>Display charge of battery in percent, if
+                charging or discharging. Nothing will be displayed,
+                if battery is fully charged or absent.</option>
+            </member>
             <member>
             <member>
-            <command>time</command>: Display the time remaining
-            until the battery will be fully charged or discharged
-            at current rate. Nothing is displayed, if battery is
-            absent or if it's present but fully charged and not
-            discharging.</member>
+                <command>time</command>
+                <option>Display the time remaining until the
+                battery will be fully charged or discharged at
+                current rate. Nothing is displayed, if battery is
+                absent or if it's present but fully charged and not
+                discharging.</option>
+            </member>
         </simplelist>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <term>
             <command>
         </simplelist>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <term>
             <command>
+                <option>pid_chroot</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Directory used as rootdirectory by the process
+       (this will be "/" unless the process did a chroot syscall)
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_cmdline</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Command line this process was invoked with
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_cwd</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Current working directory of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_environ</option>
+            </command>
+            <option>pid varname</option>
+        </term>
+        <listitem>Contents of a environment-var of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_environ_list</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>List of environment-vars that the process can see
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_exe</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Path to executed command that started the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_nice</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The nice value of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_openfiles</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>List of files that the process has open
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_parent</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The pid of the parent of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_priority</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The priority of the process (see 'priority' in "man 5 proc")
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_read</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Total number of bytes read by the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_state</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>State of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_state_short</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>One of the chars in "RSDZTW" representing the state
+       of the process where R is running, S is sleeping in an
+       interruptible wait, D is waiting in uninterruptible disk sleep,
+       Z is zombie, T is traced or stopped (on a signal), and W is paging
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_stderr</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Filedescriptor binded to the STDERR of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_stdin</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Filedescriptor binded to the STDIN of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_stdout</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Filedescriptor binded to the STDOUT of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_threads</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Number of threads in process containing this thread
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_thread_list</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>List with pid's from threads from this process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_time_kernelmode</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Amount of time that the process has been scheduled in kernel mode in seconds
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_time_usermode</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Amount of time that the process has been scheduled in user mode in seconds
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_time</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Sum of $pid_time_kernelmode and $pid_time_usermode
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_uid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The real uid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_euid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The effective uid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_suid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The saved set uid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_fsuid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The file system uid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_gid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The real gid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_egid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The effective gid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_sgid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The saved set gid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_fsgid</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>The file system gid of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmpeak</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Peak virtual memory size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmsize</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Virtual memory size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmlck</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Locked memory size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmhwm</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Peak resident set size ("high water mark") of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmrss</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Resident set size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmdata</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Data segment size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmstk</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Stack segment size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmexe</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Text segment size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmlib</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Shared library code size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_vmpte</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Page table entries size of the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>pid_write</option>
+            </command>
+            <option>pid</option>
+        </term>
+        <listitem>Total number of bytes written by the process
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>platform</option>
             </command>
             <option>(dev) type n (factor offset)</option>
                 <option>platform</option>
             </command>
             <option>(dev) type n (factor offset)</option>
         </term>
         <listitem>Displays the number of unseen messages in your
         global POP3 inbox by default. You can define individual
         </term>
         <listitem>Displays the number of unseen messages in your
         global POP3 inbox by default. You can define individual
-        POP3 inboxes seperately by passing arguments to this
+        POP3 inboxes separately by passing arguments to this
         object. Arguments are: "host user pass [-i interval (in
         object. Arguments are: "host user pass [-i interval (in
-        seconds)] [-p port] [-e command] [-r retries]". Default
+        seconds)] [-p port] [-e 'command'] [-r retries]". Default
         port is 110, default interval is 5 minutes, and default
         number of retries before giving up is 5. If the password is
         supplied as '*', you will be prompted to enter the password
         port is 110, default interval is 5 minutes, and default
         number of retries before giving up is 5. If the password is
         supplied as '*', you will be prompted to enter the password
         </term>
         <listitem>Displays the amount of space (in MiB, 2^20) used
         in your global POP3 inbox by default. You can define
         </term>
         <listitem>Displays the amount of space (in MiB, 2^20) used
         in your global POP3 inbox by default. You can define
-        individual POP3 inboxes seperately by passing arguments to
+        individual POP3 inboxes separately by passing arguments to
         this object. Arguments are: "host user pass [-i interval
         this object. Arguments are: "host user pass [-i interval
-        (in seconds)] [-p port] [-e command] [-r retries]". Default
+        (in seconds)] [-p port] [-e 'command'] [-r retries]". Default
         port is 110, default interval is 5 minutes, and default
         number of retries before giving up is 5. If the password is
         supplied as '*', you will be prompted to enter the password
         port is 110, default interval is 5 minutes, and default
         number of retries before giving up is 5. If the password is
         supplied as '*', you will be prompted to enter the password
             <command>
                 <option>rss</option>
             </command>
             <command>
                 <option>rss</option>
             </command>
-            <option>url delay_in_minutes action (num_par
+            <option>uri interval_in_minutes action (num_par
             (spaces_in_front))</option>
         </term>
             (spaces_in_front))</option>
         </term>
-        <listitem>Download and parse RSS feeds. Action may be one
-        of the following: feed_title, item_title (with num par),
-        item_desc (with num par) and item_titles (when using this
-        action and spaces_in_front is given conky places that many
-        spaces in front of each item). 
-        <para /></listitem>
+        <listitem>
+            <para>Download and parse RSS feeds. The interval may be
+            a floating point value greater than 0, otherwise
+            defaults to 15 minutes. Action may be one of the
+            following: feed_title, item_title (with num par),
+            item_desc (with num par) and item_titles (when using
+            this action and spaces_in_front is given conky places
+            that many spaces in front of each item). This object is
+            threaded, and once a thread is created it can't be
+            explicitly destroyed. One thread will run for each URI
+            specified. You can use any protocol that Curl
+            supports.</para>
+        </listitem>
     </varlistentry>
     <varlistentry>
         <term>
     </varlistentry>
     <varlistentry>
         <term>
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>running_threads</option>
+            </command>
+        </term>
+        <listitem>Number of running (runnable) threads. Linux only.
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>scroll</option>
             </command>
             <option>length (step) text</option>
                 <option>scroll</option>
             </command>
             <option>length (step) text</option>
         may also contain variables. 'step' is optional and defaults
         to 1 if not set. If a var creates output on multiple lines
         then the lines are placed behind each other separated with
         may also contain variables. 'step' is optional and defaults
         to 1 if not set. If a var creates output on multiple lines
         then the lines are placed behind each other separated with
-        a '|'-sign. Do NOT use vars that change colors or otherwise
-        affect the design inside a scrolling text. If you want
-        spaces between the start and the end of 'text', place them
-        at the end of 'text' not at the front ("foobar" and "
-        foobar" can both generate "barfoo" but "foobar " will keep
-        the spaces like this "bar foo"). 
+        a '|'-sign. If you change the textcolor inside $scroll it
+        will automatically have it's old value back at the end of
+        $scroll. The end and the start of text will be separated by
+        'length' number of spaces. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
-                <option>swapfree</option>
+                <option>swapbar</option>
             </command>
             </command>
+            <option>(height),(width)</option>
         </term>
         </term>
-        <listitem>Amount of free swap
+        <listitem>Bar that shows amount of swap in use 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <term>
             <command>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <term>
             <command>
-                <option>swapbar</option>
+                <option>swapfree</option>
             </command>
             </command>
-            <option>(height),(width)</option>
         </term>
         </term>
-        <listitem>Bar that shows amount of swap in use 
+        <listitem>Amount of free swap 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
             <command>
                 <option>tail</option>
             </command>
             <command>
                 <option>tail</option>
             </command>
-            <option>logfile lines (interval)</option>
+            <option>logfile lines (next_check)</option>
         </term>
         </term>
-        <listitem>Displays last N lines of supplied text text file.
-        If interval is not supplied, Conky assumes 2x Conky's
-        interval. Max of 30 lines can be displayed, or until the
-        text buffer is filled. 
+        <listitem>Displays last N lines of supplied text file. The
+        file is checked every 'next_check' update. If next_check is
+        not supplied, Conky defaults to 2. Max of 30 lines can be
+        displayed, or until the text buffer is filled. 
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
                 <option>tcp_portmon</option>
             </command>
             <option>port_begin port_end item (index)</option>
                 <option>tcp_portmon</option>
             </command>
             <option>port_begin port_end item (index)</option>
-            <emphasis>(ip4 only at present)</emphasis>
         </term>
         </term>
-        <listitem>TCP port monitor for specified local ports. Port
-        numbers must be in the range 1 to 65535. Valid items are: 
-        <simplelist>
-            <member>
-            <command>count</command>- total number of connections
-            in the range</member>
-            <member>
-            <command>rip</command>- remote ip address</member>
-            <member>
-            <command>rhost</command>- remote host name</member>
-            <member>
-            <command>rport</command>- remote port number</member>
-            <member>
-            <command>rservice</command>- remote service name from
-            /etc/services</member>
-            <member>
-            <command>lip</command>- local ip address</member>
-            <member>
-            <command>lhost</command>- local host name</member>
-            <member>
-            <command>lport</command>- local port number</member>
-            <member>
-            <command>lservice</command>- local service name from
-            /etc/services</member>
-        </simplelist>The connection index provides you with access
-        to each connection in the port monitor. The monitor will
-        return information for index values from 0 to n-1
-        connections. Values higher than n-1 are simply ignored. For
-        the "count" item, the connection index must be omitted. It
-        is required for all other items. 
-        <simplelist>
-            <member>Examples:</member>
-            <member>
-            <command>${tcp_portmon 6881 6999 count}</command>-
-            displays the number of connections in the bittorrent
-            port range</member>
-            <member>
-            <command>${tcp_portmon 22 22 rip 0}</command>- displays
-            the remote host ip of the first sshd
-            connection</member>
-            <member>
-            <command>${tcp_portmon 22 22 rip 9}</command>- displays
-            the remote host ip of the tenth sshd
-            connection</member>
-            <member>
-            <command>${tcp_portmon 1 1024 rhost 0}</command>-
-            displays the remote host name of the first connection
-            on a privileged port</member>
-            <member>
-            <command>${tcp_portmon 1 1024 rport 4}</command>-
-            displays the remote host port of the fifth connection
-            on a privileged port</member>
-            <member>
-            <command>${tcp_portmon 1 65535 lservice 14}</command>-
-            displays the local service name of the fifteenth
-            connection in the range of all ports</member>
-        </simplelist>Note that port monitor variables which share
-        the same port range actually refer to the same monitor, so
-        many references to a single port range for different items
-        and different indexes all use the same monitor internally.
-        In other words, the program avoids creating redundant
-        monitors.</listitem>
+        <listitem>
+            <para>TCP port (both IPv6 and IPv4) monitor for
+            specified local ports. Port numbers must be in
+            the range 1 to 65535. Valid items are:</para>
+            <simplelist>
+                <member>
+                    <command>count</command>
+                    <option>Total number of connections in the
+                    range</option>
+                </member>
+                <member>
+                    <command>rip</command>
+                    <option>Remote ip address</option>
+                </member>
+                <member>
+                    <command>rhost</command>
+                    <option>Remote host name</option>
+                </member>
+                <member>
+                    <command>rport</command>
+                    <option>Remote port number</option>
+                </member>
+                <member>
+                    <command>rservice</command>
+                    <option>Remote service name from
+                    /etc/services</option>
+                </member>
+                <member>
+                    <command>lip</command>
+                    <option>Local ip address</option>
+                </member>
+                <member>
+                    <command>lhost</command>
+                    <option>Local host name</option>
+                </member>
+                <member>
+                    <command>lport</command>
+                    <option>Local port number</option>
+                </member>
+                <member>
+                    <command>lservice</command>
+                    <option>Local service name from
+                    /etc/services</option>
+                </member>
+            </simplelist>
+            <para>The connection index provides you with access to
+            each connection in the port monitor. The monitor will
+            return information for index values from 0 to n-1
+            connections. Values higher than n-1 are simply ignored.
+            For the "count" item, the connection index must be
+            omitted. It is required for all other items.</para>
+            <para>Examples:</para>
+            <simplelist>
+                <member>
+                    <command>${tcp_portmon 6881 6999
+                    count}</command>
+                    <option>Displays the number of connections in
+                    the bittorrent port range</option>
+                </member>
+                <member>
+                    <command>${tcp_portmon 22 22 rip 0}</command>
+                    <option>Displays the remote host ip of the
+                    first sshd connection</option>
+                </member>
+                <member>
+                    <command>${tcp_portmon 22 22 rip 9}</command>
+                    <option>Displays the remote host ip of the
+                    tenth sshd connection</option>
+                </member>
+                <member>
+                    <command>${tcp_portmon 1 1024 rhost
+                    0}</command>
+                    <option>Displays the remote host name of the
+                    first connection on a privileged port</option>
+                </member>
+                <member>
+                    <command>${tcp_portmon 1 1024 rport
+                    4}</command>
+                    <option>Displays the remote host port of the
+                    fifth connection on a privileged port</option>
+                </member>
+                <member>
+                    <command>${tcp_portmon 1 65535 lservice
+                    14}</command>
+                    <option>Displays the local service name of the
+                    fifteenth connection in the range of all
+                    ports</option>
+                </member>
+            </simplelist>
+            <para>Note that port monitor variables which share the
+            same port range actually refer to the same monitor, so
+            many references to a single port range for different
+            items and different indexes all use the same monitor
+            internally. In other words, the program avoids creating
+            redundant monitors.</para>
+        </listitem>
     </varlistentry>
     <varlistentry>
         <term>
     </varlistentry>
     <varlistentry>
         <term>
             <option>(arg2)</option>
             <option>(arg3 ...)</option>
         </term>
             <option>(arg2)</option>
             <option>(arg3 ...)</option>
         </term>
-        <listitem>Evaluate the content of the templateN
-        configuration variable (where N is a value between 0 and 9,
-        inclusively), applying substitutions as described in the
-        documentation of the corresponding configuration variable.
-        The number of arguments is optional, but must match the
-        highest referred index in the template. You can use the
-        same special sequences in each argument as the ones valid
-        for a template definition, e.g. to allow an argument to
-        contain a whitespace. Also simple nesting of templates is
-        possible this way. 
-        <para /></listitem>
-        <listitem>Here are some examples of template definitions: 
-        <simplelist>
-            <member>template0 $\1\2</member>
-            <member>template1 \1: ${fs_used \2} / ${fs_size
-            \2}</member>
-            <member>template2 \1 \2</member>
-        </simplelist>The following list shows sample usage of the
-        templates defined above, with the equivalent syntax when
-        not using any template at all: 
-        <table>
-            <tgroup cols="2">
-                <thead>
-                    <row rowsep="1">
-                        <entry>using template</entry>
-                        <entry>same without template</entry>
-                    </row>
-                </thead>
-                <tbody>
-                    <row>
-                        <entry>${template0 node name}</entry>
-                        <entry>$nodename</entry>
-                    </row>
-                    <row>
-                        <entry>${template1 root /}</entry>
-                        <entry>root: ${fs_free /} / ${fs_size
-                        /}</entry>
-                    </row>
-                    <row>
-                        <entry>
-                            <programlisting>${template1
-                            ${template2\ disk\ root}
-                            /}</programlisting>
-                        </entry>
-                        <entry>
-                            <programlisting>disk root: ${fs_free /}
-                            / ${fs_size /}</programlisting>
-                        </entry>
-                    </row>
-                </tbody>
-            </tgroup>
-        </table>
-        <para /></listitem>
+        <listitem>
+            <para>Evaluate the content of the templateN
+            configuration variable (where N is a value between 0
+            and 9, inclusively), applying substitutions as
+            described in the documentation of the corresponding
+            configuration variable. The number of arguments is
+            optional, but must match the highest referred index in
+            the template. You can use the same special sequences in
+            each argument as the ones valid for a template
+            definition, e.g. to allow an argument to contain a
+            whitespace. Also simple nesting of templates is
+            possible this way.</para>
+            <para>Here are some examples of template
+            definitions:</para>
+            <simplelist>
+                <member>template0 $\1\2</member>
+                <member>template1 \1: ${fs_used \2} / ${fs_size
+                \2}</member>
+                <member>template2 \1 \2</member>
+            </simplelist>
+            <para>The following list shows sample usage of the
+            templates defined above, with the equivalent syntax
+            when not using any template at all:</para>
+            <table>
+                <tgroup cols="2">
+                    <thead>
+                        <row rowsep="1">
+                            <entry>using template</entry>
+                            <entry>same without template</entry>
+                        </row>
+                    </thead>
+                    <tbody>
+                        <row>
+                            <entry>${template0 node name}</entry>
+                            <entry>$nodename</entry>
+                        </row>
+                        <row>
+                            <entry>${template1 root /}</entry>
+                            <entry>root: ${fs_free /} / ${fs_size
+                            /}</entry>
+                        </row>
+                        <row>
+                            <entry>
+                                ${template1
+                                ${template2\ disk\ root}
+                                /}
+                            </entry>
+                            <entry>
+                                disk root:
+                                ${fs_free /} / ${fs_size
+                                /}
+                            </entry>
+                        </row>
+                    </tbody>
+                </tgroup>
+            </table>
+        </listitem>
     </varlistentry>
     <varlistentry>
         <term>
     </varlistentry>
     <varlistentry>
         <term>
         longer then the time it takes your script to execute. For
         example, if you have a script that take 5 seconds to
         execute, you should make the interval at least 6 seconds.
         longer then the time it takes your script to execute. For
         example, if you have a script that take 5 seconds to
         execute, you should make the interval at least 6 seconds.
-        See also $execi. 
+        See also $execi. This object will clean up the thread when
+        it is destroyed, so it can safely be used in a nested
+        fashion, though it may not produce the desired behaviour if
+        used this way. 
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>threads</option>
+            </command>
+        </term>
+        <listitem>Total threads
         <para /></listitem>
     </varlistentry>
     <varlistentry>
         <para /></listitem>
     </varlistentry>
     <varlistentry>
             <command>
                 <option>top</option>
             </command>
             <command>
                 <option>top</option>
             </command>
-            <option>type, num</option>
+            <option>type num</option>
         </term>
         <listitem>This takes arguments in the form:top (name)
         (number) Basically, processes are ranked from highest to
         </term>
         <listitem>This takes arguments in the form:top (name)
         (number) Basically, processes are ranked from highest to
             <command>
                 <option>top_io</option>
             </command>
             <command>
                 <option>top_io</option>
             </command>
-            <option>type, num</option>
+            <option>type num</option>
         </term>
         <listitem>Same as top, except sorted by the amount of I/O
         the process has done during the update interval 
         </term>
         <listitem>Same as top, except sorted by the amount of I/O
         the process has done during the update interval 
             <command>
                 <option>top_mem</option>
             </command>
             <command>
                 <option>top_mem</option>
             </command>
-            <option>type, num</option>
+            <option>type num</option>
         </term>
         <listitem>Same as top, except sorted by mem usage instead
         of cpu 
         </term>
         <listitem>Same as top, except sorted by mem usage instead
         of cpu 
             <command>
                 <option>top_time</option>
             </command>
             <command>
                 <option>top_time</option>
             </command>
-            <option>type, num</option>
+            <option>type num</option>
         </term>
         <listitem>Same as top, except sorted by total CPU time
         instead of current CPU usage 
         </term>
         <listitem>Same as top, except sorted by total CPU time
         instead of current CPU usage 
             <command>
                 <option>tztime</option>
             </command>
             <command>
                 <option>tztime</option>
             </command>
-            <option>(timezone) (format)</option>
+            <option>(timezone (format))</option>
         </term>
         <listitem>Local time for specified timezone, see man
         strftime to get more information about format. The timezone
         </term>
         <listitem>Local time for specified timezone, see man
         strftime to get more information about format. The timezone
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>gid_name</option>
+            </command>
+            <option>gid</option>
+        </term>
+        <listitem>Name of group with this gid
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>uid_name</option>
+            </command>
+            <option>uid</option>
+        </term>
+        <listitem>Username of user with this uid
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>unflagged_mails</option>
             </command>
             <option>(maildir)</option>
                 <option>unflagged_mails</option>
             </command>
             <option>(maildir)</option>
     <varlistentry>
         <term>
             <command>
     <varlistentry>
         <term>
             <command>
+                <option>user_time</option>
+            </command>
+           <option>console</option>
+        </term>
+        <listitem>Lists how long the user for the given console has been
+        logged in for
+        <para /></listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
                 <option>utime</option>
             </command>
             <option>(format)</option>
                 <option>utime</option>
             </command>
             <option>(format)</option>
             <command>
                 <option>weather</option>
             </command>
             <command>
                 <option>weather</option>
             </command>
-            <option>icao data_type (delay_in_minutes)</option>
-        </term>
-        <listitem>Download, parse and display METAR data from the
-        NWS. icao must be a valid icao for the required location
-        (see for instance https://pilotweb.nas.faa.gov/qryhtml/icao/).
-        data_type must be one of the following: last_update
-        (display the date (yyyy/mm/dd) and time (UTC) of the last
-        update), temperature_C (display air temperature in degree
-        Celsius), temperature_F (display air temperature in degree
-        Fahrenheit), cloud_cover (display the highest cloud cover
-        status), pressure (display air pressure in millibar),
-        wind_speed (display wind speed in km/hour), wind_dir (display
-        wind direction), wind_dir_DEG (display compass wind direction),
-        humidity (display relative humidity in %), weather (display
-        any relevant weather event (rain, snow, etc.)).
-        delay_in_minutes (optional, default 30) cannot be lower than
-        30 min. Up to 3 stations can be simultaneously queried. Note
-        that this feature is still EXPERIMENTAL. 
-        <para /></listitem>
+            <option>URI locID data_type
+            (interval_in_minutes)</option>
+        </term>
+        <listitem>
+            <para>Download, parse and display METAR data.</para>
+            <para>For the 'URI', there are two
+            possibilities:</para>
+            <simplelist>
+                <member>
+                http://weather.noaa.gov/pub/data/observations/metar/stations/</member>
+                <member>
+                http://xoap.weather.com/weather/local/</member>
+            </simplelist>
+            <para>The first one is free to use but the second
+            requires you to register and obtain your partner ID and
+            license key. These two must be written, separated by a
+            space, into a file called .xoaprc which needs to be
+            placed into your home directory.</para>
+            <para>'locID' must be a valid location identifier for
+            the required uri. For the NOAA site this must be a
+            valid ICAO (see for instance
+            https://pilotweb.nas.faa.gov/qryhtml/icao/). For the
+            weather.com site this must be a valid location ID (see
+            for instance
+            http://aspnetresources.com/tools/locid.aspx).</para>
+            <para>'data_type' must be one of the following:</para>
+            <simplelist>
+                <member>
+                    <command>last_update</command>
+                    <para>The date and time stamp of the data.
+                    The result depends on the URI used. For the
+                    NOAA site it is date (yyyy/mm/dd) and UTC time.
+                    For the weather.com one it is date
+                    ([m]m/[d]d/yy) and Local Time of the
+                    station.</para>
+                </member>
+                <member>
+                    <command>temperature</command>
+                                       <para>Air temperature (you can use the
+                    'temperature_unit' config setting to change
+                                       units)</para>
+                </member>
+                <member>
+                    <command>cloud_cover</command>
+                    <para>The highest cloud cover status</para>
+                </member>
+                <member>
+                    <command>pressure</command>
+                    <para>Air pressure in millibar</para>
+                </member>
+                <member>
+                    <command>wind_speed</command>
+                    <para>Wind speed in km/h</para>
+                </member>
+                <member>
+                    <command>wind_dir</command>
+                    <para>Wind direction</para>
+                </member>
+                <member>
+                    <command>wind_dir_DEG</command>
+                    <para>Compass wind direction</para>
+                </member>
+                <member>
+                    <command>humidity</command>
+                    <para>Relative humidity in %</para>
+                </member>
+                <member>
+                    <command>weather</command>
+                    <para>Any relevant weather event (rain, snow,
+                    etc.). This is not used if you are querying the
+                    weather.com site since this data is aggregated
+                    into the cloud_cover one</para>
+                </member>
+                <member>
+                    <command>icon</command>
+                    <para>Weather icon (only for
+                    www.weather.com). Can be used together with the
+                    icon kit provided upon registering to their
+                    service.</para>
+                </member>
+            </simplelist>
+            <para>'delay_in_minutes' (optional, default 30) cannot
+            be less than 30 minutes.</para>
+            <para>This object is threaded, and once a thread is
+            created it can't be explicitly destroyed. One thread
+            will run for each URI specified.</para>
+            <para>Note that these variables are still EXPERIMENTAL
+            and can be subject to many future changes.</para>
+        </listitem>
+    </varlistentry>
+    <varlistentry>
+        <term>
+            <command>
+                <option>weather_forecast</option>
+            </command>
+            <option>URI locID day data_type
+            (interval_in_minutes)</option>
+        </term>
+        <listitem>
+            <para>Download, parse and display weather forecast data
+           for a given day (daytime only).</para>
+            <para>For the 'URI', for the time being only
+            http://xoap.weather.com/weather/local/ is
+           supported. See 'weather' above for details of usage</para>
+            <para>'locID', see 'weather' above.</para>
+            <para>'day' is a number from 0 (today) to 4 (3 days
+            after tomorrow).</para>
+            <para>'data_type' must be one of the following:</para>
+            <simplelist>
+                <member>
+                    <command>day</command>
+                                       <option>Day of the week</option>
+                               </member>
+                <member>
+                    <command>date</command>
+                                       <option>Date, in the form MMM DD (ie. Jul 14)</option>
+                               </member>
+                <member>
+                    <command>low</command>
+                                       <option>Minimun temperature (you can use the
+                    'temperature_unit' config setting to change
+                    units)</option>
+                               </member>
+                <member>
+                    <command>hi</command>
+                                       <option>Maximum temperature (you can use the
+                    'temperature_unit' config setting to change
+                    units)</option>
+                               </member>
+                <member>
+                    <command>icon</command>
+                    <option>Weather icon. Can be used together with the
+                    icon kit provided upon registering to the weather.com
+                    service</option>
+                               </member>
+                <member>
+                    <command>forecast</command>
+                    <option>Weather forecast (sunny, rainy, etc.)</option>
+                               </member>
+                <member>
+                    <command>wind_speed</command>
+                    <option>Wind speed in km/h</option>
+                </member>
+                <member>
+                    <command>wind_dir</command>
+                    <option>Wind direction</option>
+                </member>
+                <member>
+                    <command>wind_dir_DEG</command>
+                    <option>Compass wind direction</option>
+                </member>
+                <member>
+                    <command>humidity</command>
+                    <option>Relative humidity in %</option>
+                </member>
+                <member>
+                    <command>precipitation</command>
+                    <option>Probability of having a
+                                       precipitation (in %)</option>
+                </member>
+            </simplelist>
+            <para>'delay_in_minutes' (optional, default 210) cannot
+            be lower than 210 min.</para>
+            <para>This object is threaded, and once a thread is
+            created it can't be explicitly destroyed. One thread
+            will run for each URI specified. You can use any
+            protocol that Curl supports.</para>
+            <para>Note that these variables are still EXPERIMENTAL
+            and can be subject to many future changes.</para>
+       </listitem>
     </varlistentry>
     <varlistentry>
         <term>
     </varlistentry>
     <varlistentry>
         <term>