* Bug 15550 fixed: unix* host dos consolebox pages improved 69/19969/12
Samuel GOUGEON [Sun, 22 Apr 2018 14:56:17 +0000 (16:56 +0200)]
  http://bugzilla.scilab.org/15550

  Improvements:
  * The pages often looked specific to Unix => Windows & MacOS added.
  * Arguments names were not always clear or/and homogeneous:
    command-name|cmd => commands, stat => status, err|stderr => msgerr ..
  * The context of shell sessions was never described (CWD, env. variables)
  * The management of standard and error outputs was not always described.
  * The warnings about the "last error" were not (or no longer) relevant.
  * host() and unix() pages merged.
  * dos() page had no Arguments section
  * See also:
    - consolebox() added to the host() page.
    - edit() and manedit() were often strangely listed, while they have
      no specific link to unix* functions.
    - pointer to host() preferred to its alias unix()
    - setenv(), getos() and powershell() added to most of pages.

Change-Id: Ia56bf4752cdcd3c8f88e070fb06eb5451dd05810

31 files changed:
scilab/CHANGES.md
scilab/modules/io/help/en_US/host.xml
scilab/modules/io/help/en_US/unix.xml [deleted file]
scilab/modules/io/help/en_US/unix_g.xml
scilab/modules/io/help/en_US/unix_s.xml
scilab/modules/io/help/en_US/unix_w.xml
scilab/modules/io/help/en_US/unix_x.xml
scilab/modules/io/help/fr_FR/host.xml
scilab/modules/io/help/fr_FR/unix.xml [deleted file]
scilab/modules/io/help/fr_FR/unix_g.xml
scilab/modules/io/help/fr_FR/unix_s.xml
scilab/modules/io/help/fr_FR/unix_w.xml
scilab/modules/io/help/fr_FR/unix_x.xml
scilab/modules/io/help/ja_JP/host.xml [deleted file]
scilab/modules/io/help/ja_JP/unix.xml [deleted file]
scilab/modules/io/help/ja_JP/unix_g.xml
scilab/modules/io/help/ja_JP/unix_s.xml
scilab/modules/io/help/ja_JP/unix_w.xml
scilab/modules/io/help/ja_JP/unix_x.xml
scilab/modules/io/help/pt_BR/host.xml [deleted file]
scilab/modules/io/help/pt_BR/unix.xml [deleted file]
scilab/modules/io/help/pt_BR/unix_g.xml
scilab/modules/io/help/pt_BR/unix_s.xml
scilab/modules/io/help/pt_BR/unix_w.xml
scilab/modules/io/help/pt_BR/unix_x.xml
scilab/modules/windows_tools/help/en_US/consolebox.xml
scilab/modules/windows_tools/help/en_US/dos.xml
scilab/modules/windows_tools/help/en_US/winopen.xml
scilab/modules/windows_tools/help/fr_FR/consolebox.xml
scilab/modules/windows_tools/help/fr_FR/winopen.xml
scilab/modules/windows_tools/help/ja_JP/dos.xml [deleted file]

index 6fbf017..397afe4 100644 (file)
@@ -254,13 +254,13 @@ Help pages:
   `printf`, `sprintf`, `iconvert`, `stdev`, `xlabel`, `and_op`, `or_op`, `permute`, `tree2code`, `%helps`,
   `scilab`, `flipdim`, `Matplot_properties`, `text_properties`, `meshgrid`, `ismatrix`, `xget`, `xset`, `ieee`, `evstr`,
   `uigetfont`, `uigetdir`, `uigetfile`, `uiputfile`, `cat`, `makecell`, `xstring`, `norm`, `barhomogenize`,
-  `colordef`, `matrix`, `coffg`, `diag`, `speye`, `sparse`, `recursionlimit`, `for`, `fileinfo`, `end`, `iconvert`, `Globalproperty`, `unique`, `intdec`, `plus`, `minus`, `varn`, `savematfile`, `empty`, `modulo`, `pdiv`
+  `colordef`, `matrix`, `coffg`, `diag`, `speye`, `sparse`, `recursionlimit`, `for`, `fileinfo`, `end`, `iconvert`, `Globalproperty`, `unique`, `intdec`, `plus`, `minus`, `varn`, `savematfile`, `empty`, `modulo`, `pdiv`, `unix_g`, `unix_s`, `unix_w`, `unix_x`, `dos`
 * rewritten: `consolebox`, `double`, `isoview`, `pixel_drawing_mode`, `householder`, `or`, `|,||`,
  `and`, `&,&&`, `format`, `type`, `typeof`, `brackets`, `setlanguage`, `sleep`, `isinf`, `unique`,
  `bitor`, `bitxor`, `bitand`, `macr2tree`, `geomean`, `clf`, `getPreferencesValue`, `gcd`, `lcm`, `isglobal`,
  `whereis`, `mode`, `%onprompt`, `toeplitz`, `param3d`, `param3d1`, `argn`, `gettext`, `poly`,
  `mtlb_int8`, `mtlb_int16`, `mtlb_int32`, `mtlb_int64`, `mtlb_uint8`, `mtlb_uint16`, `mtlb_uint32`, `mtlb_uint64`, `intersect`,
- `load`
+ `load`, `host`
 * reorganized:
   - `else`, `elseif`, `end`, `try`, `sciargs`, `global`, `halt`, `empty`, `power`, `numderivative`
   - `pixel_drawing_mode`, `show_window`, `twinkle`, `uigetcolor`, `winsid`, `xdel`, `xgrid`, `xname`, `xnumb`
@@ -503,6 +503,7 @@ Known issues
 * [#15542](http://bugzilla.scilab.org/show_bug.cgi?id=15542): `whereis('my_user_defined_fun')` returned [] and expected a function handle
 * [#15548](http://bugzilla.scilab.org/show_bug.cgi?id=15548): [%t %t]./[%f %f] crashed Scilab.
 * [#15549](http://bugzilla.scilab.org/show_bug.cgi?id=15549): unary minus incorrectly acted as the negation operator on %t.
+* [#15550](http://bugzilla.scilab.org/show_bug.cgi?id=15550): Help pages of `unix*`, `host`, `dos` and `consolebox` were poor and needed some improvements.
 * [#15551](http://bugzilla.scilab.org/show_bug.cgi?id=15551): arithmetic operators gave wrong results with booleans.
 * [#15553](http://bugzilla.scilab.org/show_bug.cgi?id=15553): TOWS_c block failed with 0 simulation time.
 * [#15557](http://bugzilla.scilab.org/show_bug.cgi?id=15557): `mtlb_std(1:10)` yielded an error.
index c6014ec..7265853 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="host">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="en" xml:id="host">
     <refnamediv>
         <refname>host</refname>
-        <refpurpose>Unix or DOS command execution</refpurpose>
+        <refpurpose>executes a Windows, Linux, or MacOS command</refpurpose>
+    </refnamediv>
+    <refnamediv xml:id="unix">
+        <refname>unix</refname>
+        <refpurpose>alias of host()</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>stat=host(command-name)</synopsis>
+        <synopsis>status = host(commands)</synopsis>
+        <para/>
+        <synopsis>status = unix(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>command-name</term>
+                <term>commands</term>
                 <listitem>
-                    <para>A character string containing Unix sh instruction</para>
+                    <para>
+                        Single text containing Windows, Linux, or MacOS instructions sent to the
+                        OS command interpreter.
+                    </para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>stat</term>
+                <term>status</term>
                 <listitem>
-                    <para>An integer flag</para>
+                    <para>
+                      integer flag: -1 if the <varname>commands</varname> can't be executed
+                      (for instance due to unsufficient memory). If <varname>commands</varname>
+                      is executed (successfully or not) : exit code number returned by the Operating
+                      System (OS) interpreter.
+                    </para>
+                    <note>
+                       With Windows, 0 is most often returned in case of successful execution.
+                    </note>
                 </listitem>
             </varlistentry>
         </variablelist>
     </refsection>
-    <refsection>
+    <refsection id="host_description">
         <title>Description</title>
         <para>
-            Sends a string <literal>command-name</literal> to Unix for execution by the command interpreter (sh under Unix, or command.com under DOS). Standard output and standard errors of the shell command are written in the calling shell.
-            <literal>stat</literal> gives -1 if host can't be called (Not enough system memory
-            available) or the command interpreter return code.
+            <literal>host(…)</literal>
+            <itemizedlist>
+                <listitem>
+                    creates a session of the OS command interpreter (<emphasis>sh</emphasis>
+                    with Linux, or <emphasis>cmd.exe</emphasis> with Windows).
+                </listitem>
+                <listitem>
+                    sends the given <literal>commands</literal> to it,
+                </listitem>
+                <listitem>
+                    lets them be executed by the OS interpreter,
+                </listitem>
+                <listitem>
+                    receives all the messages normally displayed in the OS interpreter terminal,
+                </listitem>
+                <listitem>
+                    and closes the OS interpreter session.
+                </listitem>
+            </itemizedlist>
+        </para>
+        <important>
+            The opened session of the OS interpreter is a fork of the session homing the current
+            Scilab session. As a consequence, it has the following properties:
+            <itemizedlist>
+                <listitem>
+                    Its starting current working directory (CWD) is the current one in the Scilab
+                    session when running <literal>host(…)</literal>.
+                </listitem>
+                <listitem>
+                    Its starting environment variables are copied from the OS interpreter session
+                    homing the current Scilab session. They can be modified using
+                    <link linkend="setvenv">setenv</link>, before calling host().
+                </listitem>
+                <listitem>
+                    Changing the CWD or/and the environment variables with instructions in
+                    <varname>commands</varname> does not change them in the Scilab session or/and
+                    in the underlying OS interpreter session homing it.
+                </listitem>
+            </itemizedlist>
+        </important>
+        <para>
+            The host(…) results as standard output and standard errors are written in the terminal
+            from which the Scilab session has been launched (a.k.a. the
+            <link linkend="consolebox">consolebox</link> for MS Windows)..
         </para>
+        <note>
+            host() shall be preferred to its unix() alias, whose name is misleading.
+        </note>
+        <note>
+            On MS Windows, <literal>host("cls")</literal> CLears the consolebox Screen.
+        </note>
     </refsection>
     <refsection>
         <title>Examples</title>
-        <programlisting role="example"><![CDATA[
-//create a getdir function based on host
-function wd=getdir()
-  if getos() == 'Windows' then
-    host('cd>'+TMPDIR+'\path');
-  else
-    host('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)')
-endfunction
-//call it
-wd=getdir()
- ]]></programlisting>
+        <refsect3>
+            <title>For Windows users:</title>
+            <para>
+                Current working directory in the host() and Scilab OS interpreter respective sessions:
+            </para>
+            <programlisting role="example"><![CDATA[
+pwd     // Current working directory of the Scilab session
+if getos()=="Windows"
+    host cls;
+    consolebox on;
+    host cd;        // Starting working directory in the OS interpreter session
+else
+    host pwd;
+end
+// The paths in the OS terminal/consolebox and in the Scilab console are the same  <<==
+     ]]></programlisting>
+        <para>Display in the OS terminal (consolebox):</para>
+            <programlisting role="example"><![CDATA[
+host cls;
+host "echo Scilab host() function";
+host "echo A & echo BC";
+host("echo DEF"+ascii(10)+"echo G");
+host("echo Current working directory: & cd");
+host dira;   // => error: unknown command
+     ]]></programlisting>
+        <screen><![CDATA[
+Scilab host() function
+A
+BC
+DEF
+Current working directory:
+C:\Scilab\tests
+'dira' is not a known internal or external command, executable program, or batch file.
+]]></screen>
+        <para>Environment variables in the Scilab and host() sessions:</para>
+            <programlisting role="example"><![CDATA[
+setenv TEST AAAA;
+getenv NUMBER_OF_PROCESSORS
+host cls;
+host "echo %TEST%";
+host "echo %USERNAME% %NUMBER_OF_PROCESSORS%";
+host "set TEST=BBBB";
+getenv TEST
+     ]]></programlisting>
+        Display: Rows starting with ":" are displayed in the consolebox, other ones in the Scilab console:
+        <screen><![CDATA[
+--> setenv TEST AAAA;
+--> getenv NUMBER_OF_PROCESSORS
+ ans  =
+ 2
+
+--> host cls;
+--> host "echo %TEST%";
+: AAAA
+
+--> host "echo %USERNAME% %NUMBER_OF_PROCESSORS%";
+: Samuel 2
+
+--> host "set TEST=BBBB"  // well done:
+ ans  =
+   0.
+
+--> getenv TEST
+ ans  =
+ AAAA
+]]></screen>
+        </refsect3>
+        <refsect3>
+            <title>Application example:</title>
+            <para>Portable openURL() function based on host():</para>
+            <programlisting role="example"><![CDATA[
+    function openURL(url)
+        if getos()=="Windows"
+            winopen(url)
+        elseif getos()=="Linux"
+            host("xdg-open """+url+"""")
+        elseif getos()=="Darwin"         // Mac OS
+            host("open """+url+"""")
+        else
+            warning("openURL: unknown OS")
+        end
+    endfunction
+
+    // call it:
+    openURL("https://help.scilab.org/docs/current/en_US/host.html")
+        ]]></programlisting>
+        </refsect3>
     </refsection>
     <refsection role="see also">
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="consolebox">consolebox</link>
+            </member>
+            <member>
+                <link linkend="getos">getos</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
                 <link linkend="unix_g">unix_g</link>
@@ -84,6 +229,15 @@ wd=getdir()
             <member>
                 <link linkend="unix_x">unix_x</link>
             </member>
+            <member>
+                <link linkend="dos">dos</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">List of MS Windows exit codes</ulink>
+            </member>
         </simplelist>
     </refsection>
 </refentry>
diff --git a/scilab/modules/io/help/en_US/unix.xml b/scilab/modules/io/help/en_US/unix.xml
deleted file mode 100644 (file)
index e2b10d1..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) XXXX-2008 - INRIA
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="unix">
-    <refnamediv>
-        <refname>unix</refname>
-        <refpurpose>shell (sh) command
-            execution
-        </refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>Syntax</title>
-        <synopsis>stat=unix(command-name)</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>Arguments</title>
-        <variablelist>
-            <varlistentry>
-                <term>command-name</term>
-                <listitem>
-                    <para>A character string containing Unix sh instruction</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>stat</term>
-                <listitem>
-                    <para>An integer flag</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>Description</title>
-        <para>
-            Sends a string <literal>command-name</literal> to Unix for execution by the
-            sh shell. Standard output and standard errors of the shell command are
-            written in the calling shell. <literal>stat</literal> gives -1 if unix can't be
-            called (Not enough system memory available) or the sh return code.
-        </para>
-    </refsection>
-    <refsection>
-        <title>Examples</title>
-        <programlisting role="example"><![CDATA[
-if getos() <> 'Windows' then
-  unix("ls $SCI/demos");
-end
-
-function wd=directory()
-  if getos() == 'Windows' then
-    unix('cd>'+TMPDIR+'\path');
-  else
-    unix('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)');
-endfunction
-
-wd=directory()
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>See also</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="edit">edit</link>
-            </member>
-            <member>
-                <link linkend="manedit">manedit</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
-            </member>
-            <member>
-                <link linkend="unix_s">unix_s</link>
-            </member>
-            <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_x">unix_x</link>
-            </member>
-            <member>
-                <link linkend="host">host</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>
index 4297e00..24532d4 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="en">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="en">
     <refnamediv>
         <refname>unix_g</refname>
-        <refpurpose>shell (sh) command execution, output redirected to a
-            variable
+        <refpurpose>
+          executes some Windows, Linux or MacOS instructions: output in variables
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>rep=unix_g(cmd)
-            [rep,stat]=unix_g(cmd)
-            [rep,stat,stderr]=unix_g(cmd)
+        <synopsis>
+            rep = unix_g(commands)
+            [rep, status] = unix_g(commands)
+            [rep, status, msgerr] = unix_g(commands)
         </synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>a character string</para>
+                    <para>A single text: instruction(s) to be executed</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
                 <term>rep</term>
                 <listitem>
-                    <para>a column vector of character strings (standard output)</para>
+                    <para>column of text: standard output.</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>stat</term>
+                <term>status</term>
                 <listitem>
-                    <para>an integer, the error status. stat=0 if no error occurred</para>
+                    <para>an integer, the error status. status=0 if no error occurred</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>err</term>
+                <term>msgerr</term>
                 <listitem>
-                    <para>a column vector of character strings (standard error)</para>
+                    <para>column of text: error message.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Sends a string <literal>cmd</literal> to Unix for execution by the
-            sh shell. The standard output is redirected to scilab variable
-            <literal>rep</literal>. The standard error is redirected to scilab
-            variable err or displays if you had only 2 output arguments. Unix execution
-            errors are trapped; *NOTE* that only the last shell command error is
-            reported when a list of command separated by ";" is sent: this is not
-            recommended.
+            <literal>unix_g(…)</literal> opens a new session of the Operating System (OS) command
+            interpreter (<emphasis>sh</emphasis> with Linux, <emphasis>cmd.exe</emphasis> with
+            Windows, etc..), sends <varname>commands</varname> to it,
+            lets it processing <varname>commands</varname> instructions, receives the standard
+            output and possible error message yielded by the processing, and closes the interpreter
+            session.
+        </para>
+        <para>
+            The starting working directory and environment variables of the opened interpreter
+            are set <link linkend="host_description">as described for host()</link>.
+        </para>
+        <para>
+            The standard output is recorded in the variable <varname>rep</varname>.
+        </para>
+        <para>
+            If <varname>commands</varname> includes an erroneous instruction,
+            <itemizedlist>
+              <listitem>
+                <varname>rep</varname> is set to "".
+              </listitem>
+              <listitem>
+                If the output variable <varname>msgerr</varname> is used, the error message normally
+                displayed in the OS terminal is caught and stored in it. Otherwise, the OS error
+                is displayed in the Scilab console.
+              </listitem>
+              <listitem>
+                The remaining instructions after the erroneous one are ignored.
+              </listitem>
+            </itemizedlist>
+            <warning>
+              The effects of valid instructions processed before the erroneous one remain actual
+              (for instance, deleted files). However, their standard output is lost.
+              This is why multiple instructions in <varname>commands</varname> are not recommended.
+            </warning>
         </para>
     </refsection>
     <refsection>
         <title>Examples</title>
         <programlisting role="example"><![CDATA[
-function d=DIR(path)
-  path=pathconvert(path,%t,%t)
+function d = DIR(path)
+  path = pathconvert(path,%t,%t)
   if getos() == 'Windows' then
-    d=unix_g('dir '+path)
+    d = unix_g('dir '+path)
   else
-    d=unix_g('ls '+path)
+    d = unix_g('ls '+path)
   end
 endfunction
 
@@ -96,7 +128,19 @@ DIR('SCI/etc')
                 <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="host">host</link>
+            </member>
+            <member>
+                <link linkend="getos">getos</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">list of MS Windows exit codes</ulink>
             </member>
         </simplelist>
     </refsection>
index 65f73a3..bd078dd 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="unix_s">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="en" xml:id="unix_s">
     <refnamediv>
         <refname>unix_s</refname>
-        <refpurpose>shell (sh) command execution, no output</refpurpose>
+        <refpurpose>executes some Windows, Linux or MacOS instructions: output canceled (Silent mode)</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>unix_s(cmd)</synopsis>
+        <synopsis>unix_s(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>a character string</para>
+                    <para>Single text containing some Windows, Linux, or MacOS instructions.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Sends a string <literal>cmd</literal> to Unix for execution by the sh shell. The standard
-            output is redirected  to /dev/null.
-            Unix execution errors are trapped.
+            <literal>unix_s(…)</literal> opens a new session of the Operating System (OS) command
+            interpreter (<emphasis>sh</emphasis> with Linux, <emphasis>cmd.exe</emphasis> with
+            Windows, etc..), sends <varname>commands</varname> to it,
+            lets it processing <varname>commands</varname> instructions, receives the possible
+            error message yielded by the processing, and closes the interpreter session.
         </para>
         <para>
+            The starting working directory and environment variables of the opened interpreter
+            are set <link linkend="host_description">as described for host()</link>.
+        </para>
+        <para>
+            The standard output of processed instructions is ignored: Nothing is displayed neither
+            in the Scilab console nor in the OS terminal (Windows consolebox).
+        </para>
+        <para>
+            If an instruction in <varname>commands</varname> generates an error,
+            <itemizedlist>
+                <listitem>
+                    the error message from the OS is displayed in the Scilab console,
+                </listitem>
+                <listitem>
+                    <literal>unix_s</literal> stops and displays its own error message.
+                </listitem>
+                <listitem>
+                    In <varname>commands</varname>, the remaining unprocessed instructions are ignored.
+                </listitem>
+            </itemizedlist>
             <warning>
-                *NOTE* that only the last shell command
-                error is reported when a list of command separated by ";" is sent: this is
-                not recommended.
+                The effects of valid instructions processed before the erroneous one remain actual
+                (for instance, deleted files).
+                <varname>commands</varname> with multiple instructions are not recommended.
+                They are more difficult to debug.
             </warning>
         </para>
     </refsection>
@@ -62,22 +89,25 @@ end
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index 56ed464..01fbcc7 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="unix_w">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="en" xml:id="unix_w">
     <refnamediv>
         <refname>unix_w</refname>
-        <refpurpose>shell (sh) command execution, output
-            redirected to scilab window
+        <refpurpose>executes some Windows, Linux or MacOS instructions: output in Scilab's console
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>unix_w(cmd)</synopsis>
+        <synopsis>unix_w(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>a character string</para>
+                    <para>A single text: instruction(s) Windows, Linux or MacOS to be executed.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Sends a string <literal>cmd</literal> to Unix for execution by the sh shell.
-            The standard output is redirected to scilab window. Unix execution errors
-            are trapped.
+            <literal>unix_w(…)</literal> opens a new session of the Operating System (OS) command
+            interpreter (<emphasis>sh</emphasis> with Linux, <emphasis>cmd.exe</emphasis> with
+            Windows, etc..), sends <varname>commands</varname> to it,
+            lets it processing <varname>commands</varname> instructions, receives the standard
+            output and possible error message yielded by the processing, and closes the interpreter
+            session.
         </para>
         <para>
+            The starting working directory and environment variables of the opened interpreter
+            are set <link linkend="host_description">as described for host()</link>.
+        </para>
+        <para>
+          The standard output returned by the OS is displayed in Scilab's console ("_w" stands
+          for the main Scilab's "Window").
+        </para>
+        <para>
+            If an instruction in <varname>commands</varname> generates an error,
+            <itemizedlist>
+                <listitem>
+                    the error message from the OS is displayed in the Scilab console
+                </listitem>
+                <listitem>
+                    <literal>unix_w</literal> stops and displays its own error message in the
+                    Scilab console.
+                </listitem>
+                <listitem>
+                    In <varname>commands</varname>, the remaining unprocessed instructions are ignored.
+                </listitem>
+            </itemizedlist>
             <warning>
-                *NOTE* that only the last shell command error is reported
-                when a list of command separated by ";" is sent: this is not
-                recommended.
+                The effects of valid instructions processed before the erroneous one remain actual
+                (for instance, deleted files). However, their standard output is lost: It is not
+                displayed in the Scilab console.
             </warning>
+            <varname>commands</varname> with multiple instructions are not recommended.
+            They are more difficult to debug.
         </para>
     </refsection>
     <refsection>
@@ -64,22 +93,25 @@ end
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index 3bb1b04..86da67c 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="unix_x">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="en" xml:id="unix_x">
     <refnamediv>
         <refname>unix_x</refname>
-        <refpurpose>shell (sh) command execution, output
-            redirected to a window
+        <refpurpose>executes some Windows, Linux or MacOS instructions: output in a dedicated window
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>unix_x(cmd)</synopsis>
+        <synopsis>unix_x(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>a character string</para>
+                    <para>Single text: instruction(s) Windows, Linux or MacOS to be executed.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Sends a string <literal>cmd</literal> to Unix for execution by the sh shell.
-            The standard output is redirected to a window. Unix execution errors are
-            trapped.
+            <literal>unix_x(…)</literal> opens a new session of the Operating System (OS) command
+            interpreter (<emphasis>sh</emphasis> with Linux, <emphasis>cmd.exe</emphasis> with
+            Windows, etc..), sends <varname>commands</varname> to it,
+            lets it processing <varname>commands</varname> instructions, receives the standard
+            output and possible error message yielded by the processing, and closes the interpreter
+            session.
         </para>
         <para>
+            The starting working directory and environment variables of the opened interpreter
+            are set <link linkend="host_description">as described for host()</link>.
+        </para>
+        <para>
+          The standard output returned by the OS interpreter is redirected and displayed in a
+          modeless dedicated window.
+        </para>
+        <para>
+          If an instruction in <varname>commands</varname> generates an error,
+          <itemizedlist>
+            <listitem>
+              the error message from the OS is displayed in the Scilab console
+            </listitem>
+            <listitem>
+              <literal>unix_x</literal> stops and displays its own error message.
+            </listitem>
+            <listitem>
+              In <varname>commands</varname>, the remaining unprocessed instructions are ignored.
+            </listitem>
+          </itemizedlist>
             <warning>
-                *NOTE* that only the last shell command error is reported when a
-                list of command separated by ";" is sent: this is not recommended.
+              The effects of valid instructions processed before the erroneous one remain actual
+              (for instance, deleted files). However, their standard output is lost: no
+              information window is opened.
+              <varname>commands</varname> with multiple instructions are not recommended.
+              They are more difficult to debug.
             </warning>
         </para>
     </refsection>
@@ -63,22 +92,25 @@ end
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
+            </member>
+            <member>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="powershell">powershell</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="messagebox">messagebox</link>
             </member>
         </simplelist>
     </refsection>
index 2d8b201..675b898 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="host">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="fr" xml:id="host">
     <refnamediv>
         <refname>host</refname>
-        <refpurpose>exécution d'une commande Unix ou DOS  </refpurpose>
+        <refpurpose>exécute une commande Windows, Linux, ou MacOS</refpurpose>
+    </refnamediv>
+    <refnamediv xml:id="unix">
+        <refname>unix</refname>
+        <refpurpose>alias de host()</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Séquence d'appel</title>
-        <synopsis>stat=host(command-name)</synopsis>
+        <synopsis>status = host(commands)</synopsis>
+        <para/>
+        <synopsis>status = unix(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Paramètres</title>
+        <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>command-name  </term>
+                <term>commands</term>
                 <listitem>
-                    <para>chaîne de caractères contenant les commandes à exécuter
+                    <para>texte unique constitué d'instructions à soumettre à l'interpréteur de
+                        commandes du système d'exploitation (Windows, Linux, ou MacOS) pour exécution.
                     </para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>stat  </term>
+                <term>status</term>
                 <listitem>
-                    <para>un entier
+                    <para>
+                      un entier: -1 si la commande ne peut pas être exécutée (par exemple pour
+                      mémoire insuffisante). Si la commande est exécutée (avec succès ou non) :
+                      code entier de sortie retourné par l'interpréteur de commande.
                     </para>
+                    <note>
+                       Sous Windows, 0 est le plus souvent retourné en cas d'exécution sans erreur.
+                    </note>
                 </listitem>
             </varlistentry>
         </variablelist>
     </refsection>
-    <refsection>
+    <refsection id="host_description">
         <title>Description</title>
         <para>
-            Envoie la chaîne <literal>command-name</literal> à l'interpréteur de commande
-            (sh sous Unix, ou command.com sous DOS). La sortie standard et les erreurs sont reportées dans
-            l'interpréteur de commande.
+            <literal>host(…)</literal>
+            <itemizedlist>
+                <listitem>
+                    créée une session de l'interpréteur de commande du système d'exploitation (OS)
+                    (<emphasis>sh</emphasis> avec Linux, <emphasis>cmd.exe</emphasis> avec Windows,
+                    etc..).
+                </listitem>
+                <listitem>
+                    envoie la <literal>commands</literal> à l'interpréteur,
+                </listitem>
+                <listitem>
+                    attend que l'interpréteur de l'OS l'exécute,
+                </listitem>
+                <listitem>
+                    reçoit tous les messages normalement affichés dans le terminal de l'interpréteur,
+                </listitem>
+                <listitem>
+                    et ferme la session de l'interpréteur.
+                </listitem>
+            </itemizedlist>
         </para>
+        <important>
+            La session de l'interpréteur de commandes créée est un clône de la session OS depuis
+            laquelle Scilab a été lancé. En conséquence, son contexte est le suivant :
+            <itemizedlist>
+                <listitem>
+                    Son dossier initial de travail (CWD) est le dossier de travail de la session
+                    Scilab lors de l'appel à <literal>host(…)</literal>.
+                </listitem>
+                <listitem>
+                    Ses variables d'environnement initiales sont identiques (noms et valeurs)
+                    à celles du terminal OS dans lequel la session Scilab fonctionne (consolebox),
+                    au moment où host() est appelée. Elles peuvent être modifiées avec
+                    <link linkend="setvenv">setenv</link> avant l'appel à host().
+                </listitem>
+                <listitem>
+                    Toute modification dans la session host() du dossier de travail et/ou des
+                    variables d'environnement n'a aucun effet ni sur le dossier de travail de la
+                    session Scilab, ni sur les variables d'environnement du terminal OS dans
+                    lequel la session Scilab fonctionne.
+                </listitem>
+            </itemizedlist>
+        </important>
         <para>
-            <literal>stat</literal> vaut -1 en sortie si la fonction ne peut pas être appelée (pas assez de mémoire par exemple) ou
-            alors le code de sortie de l'interpréteur de commande.
+            Les messages de résultat et/ou d'erreur issus de l'interpréteur et normalement affichés
+            dans son propre terminal sont détournés et affichés dans le terminal de lancement de
+            Scilab (pour MS Windows, dans la <link linkend="consolebox">consolebox</link>).
         </para>
+        <note>
+            host() doit être préférée à son alias unix(), dont le nom prête à confusion.
+        </note>
+        <note>
+            <literal>host cls;</literal> efface le contenu de la consolebox (MS Windows).
+        </note>
     </refsection>
     <refsection>
         <title>Exemples</title>
+        <refsect3>
+            <title>Pour les utilisateurs de Windows :</title>
+            <para>
+                Dossier de travail dans les sessions respectives de Scilab / de l'interpréteur DOS :
+            </para>
+            <programlisting role="example"><![CDATA[
+pwd                 // Dossier de travail courant dans la session Scilab
+if getos()=="Windows"
+    host cls;
+    consolebox on;
+    host cd;        // Dossier de travail initial dans la session de l'interpréteur de l'OS
+else
+    host pwd;
+end
+// Les chemins affichés dans le terminal DOS/consolebox et dans la console Scilab sont les mêmes.
+     ]]></programlisting>
+        <para>
+            Affichage dans le terminal DOS de Scilab (consolebox) :
+        </para>
         <programlisting role="example"><![CDATA[
-//creation d'un fontion pour recuperer la path courant
-function wd=getdir()
-  if getos() == 'Windows' then
-    host('cd>'+TMPDIR+'\path');
-  else
-    host('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)')
-endfunction
-//appel de la fonction
-wd=getdir()
- ]]></programlisting>
+host cls;
+host "echo Scilab host() function";
+host "echo A & echo BC";
+host("echo DEF"+ascii(10)+"echo G");
+host("echo Dossier de travail: & cd");
+host dira;   // => erreur : commande inconnue
+     ]]></programlisting>
+        <screen><![CDATA[
+Scilab host() function
+A
+BC
+DEF
+Dossier de travail:
+C:\Scilab\tests
+'dira' n'est pas reconnu en tant que commande interne
+ou externe, un programme exécutable ou un fichier de commandes.
+]]></screen>
+        <para>
+            Variables d'environnement du DOS, respectivement dans les sessions Scilab et host() :
+        </para>
+            <programlisting role="example"><![CDATA[
+setenv TEST AAAA;
+getenv NUMBER_OF_PROCESSORS
+host cls;
+host "echo %TEST%";
+host "echo %USERNAME% %NUMBER_OF_PROCESSORS%";
+host "set TEST=BBBB";
+getenv TEST
+     ]]></programlisting>
+        Affichage : les lignes ci-dessous préfixées avec ":" sont affichées dans la consolebox (DOS).
+        Les autres sont affichées dans la console Scilab :
+        <screen><![CDATA[
+--> setenv TEST AAAA;
+--> getenv NUMBER_OF_PROCESSORS
+ ans  =
+ 2
+
+--> host cls;
+--> host "echo %TEST%";
+: AAAA
+
+--> host "echo %USERNAME% %NUMBER_OF_PROCESSORS%";
+: Samuel 2
+
+--> host "set TEST=BBBB"  // correctement exécuté :
+ ans  =
+   0.
+
+--> getenv TEST
+ ans  =
+ AAAA
+]]></screen>
+        </refsect3>
+        <refsect3>
+            <title>Exemples d'application :</title>
+            <para>Fonction openURL() portable basée sur host():</para>
+            <programlisting role="example"><![CDATA[
+    function openURL(url)
+        if getos()=="Windows"
+            winopen(url)
+        elseif getos()=="Linux"
+            host("xdg-open """+url+"""")
+        elseif getos()=="Darwin"         // Mac OS
+            host("open """+url+"""")
+        else
+            warning("openURL: OS inconnu")
+        end
+    endfunction
+
+    // Utilisation :
+    openURL("https://help.scilab.org/docs/current/en_US/host.html")
+        ]]></programlisting>
+        </refsect3>
     </refsection>
     <refsection role="see also">
         <title>Voir aussi</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="consolebox">consolebox</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="getos">getos</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
                 <link linkend="unix_g">unix_g</link>
@@ -90,6 +236,15 @@ wd=getdir()
             <member>
                 <link linkend="unix_x">unix_x</link>
             </member>
+            <member>
+                <link linkend="dos">dos</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">Liste de codes de sortie des commandes MS Windows</ulink>
+            </member>
         </simplelist>
     </refsection>
 </refentry>
diff --git a/scilab/modules/io/help/fr_FR/unix.xml b/scilab/modules/io/help/fr_FR/unix.xml
deleted file mode 100644 (file)
index 6ff56d5..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) XXXX-2008 - INRIA
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="unix">
-    <refnamediv>
-        <refname>unix</refname>
-        <refpurpose>exécution d'une commande Unix ou DOS  </refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>Séquence d'appel</title>
-        <synopsis>stat=unix(command-name)</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>Paramètres</title>
-        <variablelist>
-            <varlistentry>
-                <term>command-name</term>
-                <listitem>
-                    <para>chaîne de caractères contenant les commandes à exécuter</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>stat</term>
-                <listitem>
-                    <para>un entier</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>Description</title>
-        <para>
-            Envoie la chaîne <literal>command-name</literal> à l'interpréteur de commande
-            (sh sous Unix, ou command.com sous DOS). La sortie standard et les erreurs sont reportées dans
-            l'interpréteur de commande.
-        </para>
-        <para>
-            <literal>stat</literal> vaut -1 en sortie si la fonction ne peut pas être appelée (pas assez de mémoire par exemple) ou
-            alors le code de sortie de l'interpréteur de commande.
-        </para>
-    </refsection>
-    <refsection>
-        <title>Exemples</title>
-        <programlisting role="example"><![CDATA[
-if getos() <> 'Windows' then
-  unix("ls $SCI/demos");
-end
-
-function wd=directory()
-  if getos() == 'Windows' then
-    unix('cd>'+TMPDIR+'\path');
-  else
-    unix('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)');
-endfunction
-
-wd=directory()
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>Voir aussi</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="edit">edit</link>
-            </member>
-            <member>
-                <link linkend="manedit">manedit</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
-            </member>
-            <member>
-                <link linkend="unix_s">unix_s</link>
-            </member>
-            <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_x">unix_x</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>
index fa7a612..845de03 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="fr">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="fr">
     <refnamediv>
         <refname>unix_g</refname>
-        <refpurpose>exécution d'une commande Unix ou DOS, sortie redirigée vers
-            une variable
+        <refpurpose>
+          exécute des instructions Windows, Linux ou MacOS : résultats dans des variables
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Séquence d'appel</title>
-        <synopsis>rep=unix_g(cmd)
-            [rep,stat]=unix_g(cmd)
-            [rep,stat,err]=unix_g(cmd)
+        <synopsis>
+            rep = unix_g(commands)
+            [rep, status] = unix_g(commands)
+            [rep, status, msgerr] = unix_g(commands)
         </synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Paramètres</title>
+        <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>command-name</term>
+                <term>commands</term>
                 <listitem>
-                    <para>chaîne de caractères</para>
+                    <para>chaîne de caractères unique : instructions à exécuter.</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
                 <term>rep</term>
                 <listitem>
-                    <para>vecteur colonne de chaînes de caractères (sortie
-                        standard)
+                    <para>colonne de texte : résultats normalement affichés en sortie standard.
                     </para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>stat</term>
+                <term>status</term>
                 <listitem>
-                    <para>un entier, le statut d'erreur, si stat==0 aucune
-                        erreur.
+                    <para>
+                        nombre entier : code de résultat d'exécution. status==0 est retourné si
+                        aucune erreur ne s'est produite.
                     </para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>err</term>
+                <term>msgerr</term>
                 <listitem>
-                    <para>vecteur colonne de chaînes de caractères (sortie
-                        d'erreurs)
+                    <para>Colonne de texte : message d'erreur.
                     </para>
                 </listitem>
             </varlistentry>
     <refsection>
         <title>Description</title>
         <para>
-            Envoie la chaîne <literal>command-name</literal> à l'interpréteur de
-            commande (sh sous Unix, ou command.com sous DOS). La sortie standard est
-            reporté dans la variable <literal>rep</literal>. La sortie d'erreurs est
-            reporté dans la variable <literal>err</literal> ou affichée si seulement
-            deux arguments de sortie. Les erreurs se produisant dans l'interpréteur de
-            commande sont interceptées; notez que la *dernière erreur uniquement* est
-            signalée quand <literal>command-name</literal> est une suite de commandes
-            séparées par des ";".
+            <literal>unix_g()</literal> ouvre une nouvelle session de l'interpréteur de commandes
+            du système d'exploitation (OS) (<emphasis>sh</emphasis> avec Linux,
+            <emphasis>cmd.exe</emphasis> avec MS Windows, etc..), lui envoie les instructions
+            <varname>commands</varname>, attend le traitement de celles-ci, reçoit les messages
+            de résultats standard ou le possible message d'erreur générés lors du traitement,
+            et ferme la session de l'interpréteur.
+        </para>
+        <para>
+            Le dossier de travail initial et les variables d'environnement de la session OS ouverte
+            sont établis <link linkend="host_description">comme pour host()</link>.
+        </para>
+        <para>
+            Les résultats standard habituellement affichés dans le terminal de l'interpréteur sont
+            capturés et stockés en colonne texte dans la variable <varname>rep</varname>.
+        </para>
+        <para>
+            Si <varname>commands</varname> comporte une instruction erronée,
+            <itemizedlist>
+                <listitem>
+                    <varname>rep</varname> vaut "".
+                </listitem>
+                <listitem>
+                    Si la variable de sortie <varname>msgerr</varname> est indiquée, le message d'erreur
+                    normalement affiché dans le terminal de l'interpréteur est capturé et enregistré
+                    dans celle-ci. Sinon, le message d'erreur est affiché dans la console Scilab.
+                </listitem>
+                <listitem>
+                    Les instructions suivant celle erronée sont ignorées.
+                </listitem>
+                <warning>
+                    Les opérations effectuées par les instructions valides figurant dans
+                    <varname>commands</varname> avant l'instruction
+                    erronée demeurent réelles (par exemple, fichiers supprimés). Leurs
+                    compte-rendus ou résultats d'exécution affichables sont cependant ignorés
+                    et perdus. Les instructions multiples sont déconseillées. Elles sont souvent
+                    plus difficiles à déboguer.
+                </warning>
+            </itemizedlist>
         </para>
     </refsection>
     <refsection>
         <title>Exemples</title>
         <programlisting role="example"><![CDATA[
-function d=DIR(path)
- path=pathconvert(path,%t,%t)
- if getos() == 'Windows' then
-   d=unix_g('dir '+path)
- else
-   d=unix_g('ls '+path)
- end
+function d = DIR(path)
+  path=pathconvert(path,%t,%t)
+  if getos() == 'Windows' then
+    d = unix_g('dir '+path)
+  else
+    d = unix_g('ls '+path)
+  end
 endfunction
 
 DIR('SCI/etc')
@@ -103,7 +137,19 @@ DIR('SCI/etc')
                 <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="host">host</link>
+            </member>
+            <member>
+                <link linkend="getos">getos</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">Liste de codes de sortie MS Windows</ulink>
             </member>
         </simplelist>
     </refsection>
index 4db7e27..3b8773a 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="unix_s">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+        xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+        xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+        xml:lang="fr" xml:id="unix_s">
     <refnamediv>
         <refname>unix_s</refname>
-        <refpurpose>exécution d'une commande Unix ou DOS, pas de sortie  </refpurpose>
+        <refpurpose>exécute des instructions Windows, Linux ou MacOS : résultats masqués (mode Silencieux)</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Séquence d'appel</title>
-        <synopsis>unix_s(command-name)</synopsis>
+        <synopsis>unix_s(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Paramètres</title>
+        <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>command-name</term>
+                <term>commands</term>
                 <listitem>
-                    <para>chaîne de caractères</para>
+                    <para>Texte unique contenant les instructions à exécuter.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Envoie la chaîne <literal>command-name</literal> à l'interpréteur de commande
-            (sh sous Unix, ou command.com sous DOS). La sortie standard et les erreurs ne sont pas reportées (redirection vers /dev/null sous Unix).
+            <literal>unix_s()</literal> ouvre une nouvelle session de l'interpréteur de commandes
+            du système d'exploitation (OS) (<emphasis>sh</emphasis> avec Linux,
+            <emphasis>cmd.exe</emphasis> avec MS Windows, etc..), lui envoie les instructions
+            <varname>commands</varname>, attend le traitement de celles-ci, reçoit le possible
+            message d'erreur générés lors du traitement, et ferme la session de l'interpréteur.
         </para>
         <para>
-            <warning>
-                Notez que la *dernière erreur uniquement* est signalée quand <literal>command-name</literal> est une suite de commandes séparées par des ";".
-            </warning>
+            Le dossier de travail initial et les variables d'environnement de la session OS ouverte
+            sont établis <link linkend="host_description">comme pour host()</link>.
+        </para>
+        <para>
+            Aucun résultat d'éxécution issu de l'OS  n'est affiché, ni dans la console Scilab,
+            ni dans le terminal de l'OS (la consolebox, pour Windows).
+        </para>
+        <para>
+          Si dans <varname>commands</varname> une instruction génère une erreur,
+            <itemizedlist>
+                <listitem>
+                    le message d'erreur généré par l'OS est affiché dans la console Scilab,
+                </listitem>
+                <listitem>
+                    <literal>unix_s</literal> est interrompue et affiche son propre message d'erreur.
+                </listitem>
+                <listitem>
+                    Dans <varname>commands</varname>, les instructions non traitées restantes sont
+                    ignorées.
+                </listitem>
+                <warning>
+                  Les opérations effectuées par les instructions valides figurant dans
+                  <varname>commands</varname> avant l'instruction  erronée demeurent réelles
+                  (par exemple, fichiers supprimés).
+                  Dans <varname>commands</varname>, les instructions multiples sont déconseillées.
+                  Elles sont plus difficiles à déboguer.
+                </warning>
+            </itemizedlist>
         </para>
     </refsection>
     <refsection>
@@ -59,22 +91,25 @@ end
         <title>Voir aussi</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index 5741a2d..4c5e372 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="unix_w">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="fr" xml:id="unix_w">
     <refnamediv>
         <refname>unix_w</refname>
-        <refpurpose>exécution d'une commande Unix ou DOS,
-            sortie redirigée vers la fenêtre de Scilab
+        <refpurpose>exécute des instructions Windows, Linux ou MacOS : résultats dans la console Scilab
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Séquence d'appel</title>
-        <synopsis>unix_w(command-name)</synopsis>
+        <synopsis>unix_w(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Paramètres</title>
+        <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>command-name</term>
+                <term>commands</term>
                 <listitem>
-                    <para>chaîne de caractères</para>
+                    <para>Texte unique contenant les instructions à exécuter.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Envoie la chaîne <literal>command-name</literal> à  
-            l'interpréteur de commande (sh sous Unix, ou cmd.com sous Windows). La
-            sortie standard et les erreurs sont reportées dans la variable
-            <literal>rep</literal>. Les erreurs se produisant dans l'interpréteur de commande
-            sont interceptées.
+            <literal>unix_w()</literal> ouvre une nouvelle session de l'interpréteur de commandes
+            du système d'exploitation (OS) (<emphasis>sh</emphasis> avec Linux,
+            <emphasis>cmd.exe</emphasis> avec MS Windows, etc..), lui envoie les instructions
+            <varname>commands</varname>, attend le traitement de celles-ci, reçoit les messages
+            de résultats standard ou le possible message d'erreur générés lors du traitement,
+            et ferme la session de l'interpréteur.
         </para>
         <para>
-            <warning>
-                Notez que la *dernière erreur uniquement* est signalée
-                quand <literal>command-name</literal> est une suite de commandes séparées par des
-                ";".
-            </warning>
+            Le dossier de travail initial et les variables d'environnement de la session OS ouverte
+            sont établis <link linkend="host_description">comme pour host()</link>.
+        </para>
+        <para>
+          Le résultat normalement affiché dans le terminal de l'OS est redirigé et affiché dans la
+          console Scilab ("_w" comme "main Window").
+        </para>
+        <para>
+            Si dans <varname>commands</varname> une instruction produit une erreur,
+            <itemizedlist>
+                <listitem>
+                    le message d'erreur issu de l'OS est affiché dans la console Scilab.
+                </listitem>
+                <listitem>
+                    <literal>unix_w</literal> est interrompue et affiche son propre message d'erreur
+                    dans la console Scilab.
+                </listitem>
+                <listitem>
+                    Dans <varname>commands</varname>, les instructions suivantes sont ignorées.
+                </listitem>
+                <warning>
+                    Les opérations effectuées par les instructions valides figurant avant l'instruction
+                    erronées demeurent réelles (par exemple, suppression de fichiers). Leurs
+                    compte-rendus ou résultats affichables sont cependant ignorés : ils ne sont pas
+                    affichés dans la console Scilab.
+                    Les <literal>commands</literal> comportant plusieurs instructions sont
+                    déconseillées. Elles sont plus difficiles à déboguer.
+                </warning>
+
+            </itemizedlist>
         </para>
     </refsection>
     <refsection>
@@ -66,22 +95,25 @@ end
         <title>Voir aussi</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index d014ec4..34e2efa 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="unix_x">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="fr" xml:id="unix_x">
     <refnamediv>
         <refname>unix_x</refname>
-        <refpurpose>exécution d'une commande Unix ou DOS,
-            sortie redirigée vers une fenêtre
+        <refpurpose>exécute des instructions Windows, Linux ou MacOS : résultats dans une fenêtre d'information
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Séquence d'appel</title>
-        <synopsis>unix_x(command-name)</synopsis>
+        <synopsis>unix_x(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Paramètres</title>
+        <title>Arguments</title>
         <variablelist>
             <varlistentry>
-                <term>command-name</term>
+                <term>commands</term>
                 <listitem>
-                    <para>chaîne de caractères</para>
+                    <para>Texte unique contenant les instructions à exécuter.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Description</title>
         <para>
-            Envoie la chaîne <literal>command-name</literal> à  l'interpréteur
-            de commande (sh sous Unix, ou command.com sous DOS). La sortie standard et
-            les erreurs sont reportées dans une fenêtre . Les erreurs se produisant dans
-            l'interpréteur de commande sont interceptées.
+            <literal>unix_x()</literal> ouvre une nouvelle session de l'interpréteur de commandes
+            du système d'exploitation (OS) (<emphasis>sh</emphasis> avec Linux,
+            <emphasis>cmd.exe</emphasis> avec MS Windows, etc..), lui envoie les instructions
+            <varname>commands</varname>, attend le traitement de celles-ci, reçoit les messages
+            de résultats standard ou le possible message d'erreur générés lors du traitement,
+            et ferme la session de l'interpréteur.
         </para>
         <para>
-            <warning>
-                Notez que la *dernière erreur
-                uniquement* est signalée quand <literal>command-name</literal> est une suite de
-                commandes séparées par des ";".
-            </warning>
+            Le dossier de travail initial et les variables d'environnement de la session OS ouverte
+            sont établis <link linkend="host_description">comme pour host()</link>.
+        </para>
+        <para>
+          Les résultats renvoyés par l'interpéteur de l'OS sont redirigés et affichés dans
+          une fenêtre d'information indépendante non bloquante.
+        </para>
+        <para>
+            Si dans <varname>commands</varname> une instruction produit une erreur,
+            <itemizedlist>
+                <listitem>
+                    le message d'erreur issu de l'OS est affiché dans la console Scilab.
+                </listitem>
+                <listitem>
+                    <literal>unix_x</literal> est interrompue et affiche son propre message d'erreur
+                    dans la console Scilab.
+                </listitem>
+                <listitem>
+                    Dans <varname>commands</varname>, les instructions suivantes sont ignorées.
+                </listitem>
+                <warning>
+                    Les opérations effectuées par les instructions valides figurant avant l'instruction
+                    erronées demeurent réelles (par exemple, suppression de fichiers). Leurs
+                    compte-rendus ou résultats affichables sont cependant ignorés : aucune fenêtre
+                    d'information n'est ouverte. Les <literal>commands</literal> avec plusieurs
+                    instructions sont déconseillées. Elles sont plus difficiles à déboguer.
+                </warning>
+            </itemizedlist>
         </para>
     </refsection>
     <refsection>
@@ -65,22 +93,25 @@ end
         <title>Voir aussi</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="messagebox">messagebox</link>
             </member>
         </simplelist>
     </refsection>
diff --git a/scilab/modules/io/help/ja_JP/host.xml b/scilab/modules/io/help/ja_JP/host.xml
deleted file mode 100644 (file)
index 169f8de..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) XXXX-2008 - INRIA
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="host">
-    <refnamediv>
-        <refname>host</refname>
-        <refpurpose>Unix または DOS コマンドを実行</refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>呼び出し手順</title>
-        <synopsis>stat=host(command-name)</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>パラメータ</title>
-        <variablelist>
-            <varlistentry>
-                <term>commmand-name</term>
-                <listitem>
-                    <para>Unix sh 命令を有する文字列</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>stat</term>
-                <listitem>
-                    <para>整数フラグ</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>説明n</title>
-        <para>
-            コマンドインタプリタ(Unixではsh, DOSでは command.com)により実行される
-            文字列<literal>command-name</literal>をUnixに送信します.
-            シェルコマンドの標準出力および標準エラーは呼び出し側のシェルに
-            書き込まれます.
-            <literal>stat</literal>は,
-            ホストがコールできない場合(十分なシステムメモリが確保できない場合)に -1,
-            またはコマンドインタプリタのリターンコードを返します.
-        </para>
-    </refsection>
-    <refsection>
-        <title>例</title>
-        <programlisting role="example"><![CDATA[
-//ホストに基づくgetdir関数を作成
-function wd=getdir()
-  if getos() == 'Windows' then
-    host('cd>'+TMPDIR+'\path');
-  else
-    host('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)')
-endfunction
-//call it
-wd=getdir()
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>参照</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="edit">edit</link>
-            </member>
-            <member>
-                <link linkend="manedit">manedit</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
-            </member>
-            <member>
-                <link linkend="unix_s">unix_s</link>
-            </member>
-            <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_x">unix_x</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>
diff --git a/scilab/modules/io/help/ja_JP/unix.xml b/scilab/modules/io/help/ja_JP/unix.xml
deleted file mode 100644 (file)
index 01fa754..0000000
+++ /dev/null
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) XXXX-2008 - INRIA
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="unix">
-    <refnamediv>
-        <refname>unix</refname>
-        <refpurpose>シェル (sh) コマンドを実行
-        </refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>呼び出し手順</title>
-        <synopsis>stat=unix(command-name)</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>パラメータ</title>
-        <variablelist>
-            <varlistentry>
-                <term>command-name</term>
-                <listitem>
-                    <para>Unix sh 命令を含む文字列</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>stat</term>
-                <listitem>
-                    <para>整数フラグ</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>説明</title>
-        <para>
-            sh シェルにより実行するために文字列<literal>command-name</literal>を
-            Unixに送信します.
-            シェルコマンドの標準出力と標準エラーが呼び出し側のシェルに書き込まれます.
-            Unixがコールされない場合(十分なシステムメモリが有効でない場合)に -1 または sh
-            のリターンコードが返されます.
-        </para>
-    </refsection>
-    <refsection>
-        <title>例</title>
-        <programlisting role="example"><![CDATA[
-if getos() <> 'Windows' then
-  unix("ls $SCI/demos");
-end
-function wd=directory()
-  if getos() == 'Windows' then
-    unix('cd>'+TMPDIR+'\path');
-  else
-    unix('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)');
-endfunction
-wd=directory()
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>参照</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="edit">edit</link>
-            </member>
-            <member>
-                <link linkend="manedit">manedit</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
-            </member>
-            <member>
-                <link linkend="unix_s">unix_s</link>
-            </member>
-            <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_x">unix_x</link>
-            </member>
-            <member>
-                <link linkend="host">host</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>
index 0096e6f..476851d 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="ja">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="ja">
     <refnamediv>
         <refname>unix_g</refname>
-        <refpurpose>シェル (sh)コマンドを実行, 出力を変数にリダイレクト</refpurpose>
+        <refpurpose>いくつかのWindows、LinuxまたはMacOS命令を実行し、変数で出力する</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>呼び出し手順</title>
-        <synopsis>rep=unix_g(cmd)
-            [rep,stat]=unix_g(cmd)
-            [rep,stat,stderr]=unix_g(cmd)
+        <synopsis>
+            rep = unix_g(commands)
+            [rep, status] = unix_g(commands)
+            [rep, status, msgerr] = unix_g(commands)
         </synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>パラメータ</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
                     <para>文字列</para>
                 </listitem>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>stat</term>
+                <term>status</term>
                 <listitem>
-                    <para>整数, エラーステータス. エラーが発生しない場合, stat=0</para>
+                    <para>整数, エラーステータス. エラーが発生しない場合, status=0</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>err</term>
+                <term>msgerr</term>
                 <listitem>
-                    <para>文字列の列ベクトル  (標準エラー)</para>
+                    <para>テキストの列:エラーメッセージ。</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>説明</title>
         <para>
-            shシェルで実行する文字列 <literal>cmd</literal> をUnixに送信します.
-            標準出力はScilab変数<literal>rep</literal>にリダイレクトされます.
-            標準エラーはScilab変数 err にリダイレクトされるか,出力引数が2つのみの場合に表示されます.
-            Unixの実行エラーはトラップされます; *注意*
-            コマンドのリストを ";" で区切った場合,
-            最後のシェルコマンドエラーのみが
-            リポートされます.これは推奨されません.
+            <literal>unix_g()</literal>は、オペレーティングシステム(OS)(<emphasis>sh</emphasis>、
+            Linuxでは<emphasis>cmd.exe</emphasis>)のコマンドインタープリタの新しいセッションを開き、 等..)。
+            次に、<varname>commands</varname>がOSインタプリタに送信され、その命令が処理されます。
+            処理によって得られた標準出力とエラーメッセージが受信され、インタプリタセッションが閉じられます。
+        </para>
+        <para>
+            開いているインタプリタの開始作業ディレクトリと環境変数は、
+            <link linkend="host_description">host()</link>ページで説明されているように定義されています。
+        </para>
+        <para>
+            標準出力は変数<varname>rep</varname>に記録されます。.
+        </para>
+        <para>
+            <varname>commands</varname>に誤った命令が含まれていると、
+            <itemizedlist>
+              <listitem>
+                <varname>rep</varname>が ""に設定されています.
+              </listitem>
+              <listitem>
+                出力変数<varname>msgerr</varname>を使用すると、
+                通常はOS端末に表示されるエラーメッセージがキャッチされて格納されます。
+                それ以外の場合は、OSエラーがScilabコンソールに表示されます。
+              </listitem>
+              <listitem>
+                誤った命令の後の残りの命令は無視される。
+              </listitem>
+            </itemizedlist>
+            <warning>
+                The effects of valid instructions processed before the erroneous one remain actual
+                (for instance, deleted files). However, their standard output is lost.
+                複数の命令を持つ<varname>commands</varname>はお勧めできません。 それらはデバッグするのがより困難です。
+            </warning>
         </para>
     </refsection>
     <refsection>
         <title>例</title>
         <programlisting role="example"><![CDATA[
-function d=DIR(path)
-  path=pathconvert(path,%t,%t)
+function d = DIR(path)
+  path = pathconvert(path,%t,%t)
   if getos() == 'Windows' then
-    d=unix_g('dir '+path)
+    d = unix_g('dir '+path)
   else
-    d=unix_g('ls '+path)
+    d = unix_g('ls '+path)
   end
 endfunction
+
 DIR('SCI/etc')
  ]]></programlisting>
     </refsection>
@@ -93,7 +124,19 @@ DIR('SCI/etc')
                 <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="host">host</link>
+            </member>
+            <member>
+                <link linkend="getos">getos</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">List of MS Windows exit codes</ulink>
             </member>
         </simplelist>
     </refsection>
index 4c2beac..d66f71b 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="unix_s">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="ja" xml:id="unix_s">
     <refnamediv>
         <refname>unix_s</refname>
-        <refpurpose>シェル (sh)コマンドを実行, 出力なし</refpurpose>
+        <refpurpose>Windows、LinuxまたはMacOSの命令を静かに実行する</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>呼び出し手順</title>
-        <synopsis>unix_s(cmd)</synopsis>
+        <synopsis>unix_s(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>パラメータ</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>文字列</para>
+                    <para>いくつかのWindows、Linux、またはMacOS命令を含むテキスト。</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>説明</title>
         <para>
-            shシェルで実行する文字列 <literal>cmd</literal>を Unixに送信します.
-            標準出力は /dev/null にリダイレクトされます.
-            Unix実行エラーはトラップされます; *注意*
-            コマンドのリストを ";" で区切った場合,
-            最後のシェルコマンドエラーのみが
-            リポートされます.これは推奨されません.
+            <literal>unix_s()</literal>は、オペレーティングシステム(OS)(<emphasis>sh</emphasis>、
+            Linuxでは<emphasis>cmd.exe</emphasis>)のコマンドインタープリタの新しいセッションを開き、 等..)。
+            次に、<varname>commands</varname>がOSインタプリタに送信され、その命令が処理されます。
+            処理によって得られた標準出力とエラーメッセージが受信され、インタプリタセッションが閉じられます。
+        </para>
+        <para>
+            開いているインタプリタの開始作業ディレクトリと環境変数は、
+            <link linkend="host_description">host()</link>ページで説明されているように定義されています。
+        </para>
+        <para>
+            <varname>commands</varname>に誤った命令が含まれていると、
+            <itemizedlist>
+                <listitem>
+                    OSからのエラーメッセージがScilabコンソールに表示されます
+                </listitem>
+                <listitem>
+                    <literal>unix_s</literal>が停止し、独自のエラーメッセージが表示されます。
+                </listitem>
+                <listitem>
+                    <varname>commands</varname>の残りの命令は無視されます。
+                </listitem>
+                </itemizedlist>
+            <warning>
+                The effects of valid instructions processed before the erroneous one remain actual
+                (for instance, deleted files).
+                複数の命令を持つ<varname>commands</varname>はお勧めできません。 それらはデバッグするのがより困難です。
+            </warning>
         </para>
     </refsection>
     <refsection>
@@ -58,22 +83,25 @@ end
         <title>参照</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index 76b868f..1275219 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="unix_w">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="ja" xml:id="unix_w">
     <refnamediv>
         <refname>unix_w</refname>
-        <refpurpose>シェル (sh) コマンドを実行, 出力をScilabウインドウにリダイレクトする</refpurpose>
+        <refpurpose>いくつかのWindows、LinuxまたはMacOS命令を実行し、結果をScilabコンソールに表示する</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>呼び出し手順</title>
-        <synopsis>unix_w(cmd)</synopsis>
+        <synopsis>unix_w(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>パラメータ</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>文字列</para>
+                    <para>単一のテキスト:実行されるべきWindows、LinuxまたはMacOSの命令。</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>説明</title>
         <para>
-            shシェルで実行する文字列 <literal>cmd</literal> を Unixに送信します .
-            標準出力はScilabウインドウにリダイレクトされます.
-            Unix実行エラーはトラップされます; *注意*
-            コマンドのリストを ";" で区切った場合,
-            最後のシェルコマンドエラーのみが
-            リポートされます.これは推奨されません.
+            <literal>unix_w()</literal>は、オペレーティングシステム(OS)(<emphasis>sh</emphasis>、
+            Linuxでは<emphasis>cmd.exe</emphasis>)のコマンドインタープリタの新しいセッションを開き、 等..)。
+            次に、<varname>commands</varname>がOSインタプリタに送信され、その命令が処理されます。
+            処理によって得られた標準出力とエラーメッセージが受信され、インタプリタセッションが閉じられます。
+        </para>
+        <para>
+            開いているインタプリタの開始作業ディレクトリと環境変数は、
+            <link linkend="host_description">host()</link>ページで説明されているように定義されています。
+        </para>
+        <para>
+          OSから返される標準出力はScilabのコンソールに表示されます("_w"はScilabのメインウィンドウを表します)。
+        </para>
+        <para>
+            <varname>commands</varname>の命令がエラーを生成した場合、,
+            <itemizedlist>
+                <listitem>
+                    OSからのエラーメッセージがScilabコンソールに表示されます
+                </listitem>
+                <listitem>
+                    <literal>unix_w</literal>が停止し、独自のエラーメッセージが表示されます。
+                </listitem>
+                <listitem>
+                    <varname>commands</varname>の残りの命令は無視されます。
+                </listitem>
+            </itemizedlist>
+            <warning>
+              誤った命令の前に処理された有効な命令の効果は、実際に残っている(例えば、ファイルを削除する)。
+              ただし、標準出力は失われます。 Scilabコンソールには表示されません。
+              複数の命令を持つ<varname>commands</varname>はお勧めできません。 それらはデバッグするのがより困難です。
+            </warning>
         </para>
     </refsection>
     <refsection>
@@ -58,22 +86,25 @@ end
         <title>参照</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index b153d48..c224ca2 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="unix_x">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="ja" xml:id="unix_x">
     <refnamediv>
         <refname>unix_x</refname>
-        <refpurpose>シェル (sh) コマンドを実行, 出力はウインドウにリダイレクト
+        <refpurpose>
+            いくつかのWindows、LinuxまたはMacOS命令を実行する:
+            結果はポップアップメッセージボックスに表示される
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>呼び出し手順</title>
-        <synopsis>unix_x(cmd)</synopsis>
+        <synopsis>unix_x(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>パラメータ</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>文字列</para>
+                    <para>単一のテキスト:実行されるべきWindows、LinuxまたはMacOSの命令。</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>説明</title>
         <para>
-            shシェルで実行する文字列 <literal>cmd</literal> を Unix に送信します.
-            標準出力はウインドウにリダイレクトされます.
-            Unix実行エラーはトラップされます; *注意*
-            コマンドのリストを ";" で区切った場合,
-            最後のシェルコマンドエラーのみが
-            リポートされます.これは推奨されません.
+            <literal>unix_x()</literal>は、オペレーティングシステム(OS)(<emphasis>sh</emphasis>、
+            Linuxでは<emphasis>cmd.exe</emphasis>)のコマンドインタープリタの新しいセッションを開き、 等..)。
+            次に、<varname>commands</varname>がOSインタプリタに送信され、その命令が処理されます。
+            処理によって得られた標準出力とエラーメッセージが受信され、インタプリタセッションが閉じられます。
+        </para>
+        <para>
+            開いているインタプリタの開始作業ディレクトリと環境変数は、
+            <link linkend="host_description">host()</link>ページで説明されているように定義されています。
+        </para>
+        <para>
+          OSインタプリタによって返される標準出力はリダイレクトされ、専用のモードレスウィンドウに表示されます。
+        </para>
+        <para>
+            <varname>commands</varname>の命令がエラーを生成した場合、,
+            <itemizedlist>
+                <listitem>
+                    OSからのエラーメッセージがScilabコンソールに表示されます
+                </listitem>
+                <listitem>
+                    <literal>unix_x</literal>が停止し、独自のエラーメッセージが表示されます。
+                </listitem>
+                <listitem>
+                    <varname>commands</varname>の残りの命令は無視されます。
+                </listitem>
+            </itemizedlist>
+            <warning>
+              誤った命令の前に処理された有効な命令の効果は、実際に残っている(例えば、ファイルを削除する)。
+              ただし、標準出力は失われます。情報ウィンドウは開かれません。
+              複数の命令を持つ<varname>commands</varname>はお勧めできません。 それらはデバッグするのがより困難です。
+            </warning>
         </para>
     </refsection>
     <refsection>
@@ -59,22 +89,25 @@ end
         <title>参照</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="messagebox">messagebox</link>
             </member>
         </simplelist>
     </refsection>
diff --git a/scilab/modules/io/help/pt_BR/host.xml b/scilab/modules/io/help/pt_BR/host.xml
deleted file mode 100644 (file)
index a5ceee9..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) XXXX-2008 - INRIA
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="host" xml:lang="pt">
-    <refnamediv>
-        <refname>host</refname>
-        <refpurpose>execução de comandos do Unix ou DOS</refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>Seqüência de Chamamento</title>
-        <synopsis>stat=host(command-name)</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>Parâmetros</title>
-        <variablelist>
-            <varlistentry>
-                <term>command-name</term>
-                <listitem>
-                    <para>um string contendo uma instrução sh Unix </para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>stat</term>
-                <listitem>
-                    <para>um flag ("indicador") inteiro </para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>Descrição</title>
-        <para>
-            Envia um string <literal>command-name</literal> para o Unix para
-            execução pelo interpretador de comando (sh em Unix, ou command.com em
-            DOS). As saídas e os erros padrões do comando do shell são escritos no
-            shell chamado. <literal>stat</literal> fornece -1 se o "host" (significa
-            "anfitrião") não pode ser chamado (memória disponível do sistema
-            insuficiente) ou se o interpretador de comando retorna o código.
-        </para>
-    </refsection>
-    <refsection>
-        <title>Exemplos</title>
-        <programlisting role="example"><![CDATA[
-//criando uma função getdir baseda no host
-function wd=getdir()
-  if getos() == 'Windows' then
-    host('cd>'+TMPDIR+'\path');
-  else
-    host('pwd>'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)')
-endfunction
-//chamando-a
-wd=getdir()
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>Ver Também</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="edit">edit</link>
-            </member>
-            <member>
-                <link linkend="manedit">manedit</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
-            </member>
-            <member>
-                <link linkend="unix_s">unix_s</link>
-            </member>
-            <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_x">unix_x</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>
diff --git a/scilab/modules/io/help/pt_BR/unix.xml b/scilab/modules/io/help/pt_BR/unix.xml
deleted file mode 100644 (file)
index 588af9f..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) XXXX-2008 - INRIA
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix" xml:lang="pt">
-    <refnamediv>
-        <refname>unix</refname>
-        <refpurpose>execução de comando shell (sh)</refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>Seqüência de Chamamento</title>
-        <synopsis>stat=unix(command-name)</synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>Parâmetros</title>
-        <variablelist>
-            <varlistentry>
-                <term>command-name</term>
-                <listitem>
-                    <para>string contendo uma instrução Unix sh</para>
-                </listitem>
-            </varlistentry>
-            <varlistentry>
-                <term>stat</term>
-                <listitem>
-                    <para>flag inteiro</para>
-                </listitem>
-            </varlistentry>
-        </variablelist>
-    </refsection>
-    <refsection>
-        <title>Descrição</title>
-        <para>
-            Envia um string <literal>command-name</literal> ao Unix para
-            execução com o shell sh. Saída e erros padrões do shell de comando são
-            escritos no shell chamado. <literal>stat</literal> retorna -1 se o Unix
-            não pode ser chamado (memória do sistema disponível insuficiente) ou o
-            código de retorno sh.
-        </para>
-    </refsection>
-    <refsection>
-        <title>Exemplos</title>
-        <programlisting role="example"><![CDATA[
-if getos() <> 'Windows' then
-  unix("ls $SCI/demos");
-end
-
-function wd=directory()
-  if getos() == 'Windows' then
-    unix('cd&gt;'+TMPDIR+'\path');
-  else
-    unix('pwd&gt;'+TMPDIR+'/path');
-  end
-  wd=read(TMPDIR+'/path',1,1,'(a)');
-endfunction
-
-wd=directory()
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>Ver Também</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="edit">edit</link>
-            </member>
-            <member>
-                <link linkend="manedit">manedit</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
-            </member>
-            <member>
-                <link linkend="unix_s">unix_s</link>
-            </member>
-            <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_x">unix_x</link>
-            </member>
-            <member>
-                <link linkend="host">host</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>
index 871d5a3..b29b190 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="pt">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_g" xml:lang="pt">
     <refnamediv>
         <refname>unix_g</refname>
-        <refpurpose>execução de um comando shell (sh), saída redirecionada a uma
-            variável
+        <refpurpose>
+            executa algumas instruções do Windows, Linux ou MacOS, saída em variáveis
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Seqüência de Chamamento</title>
-        <synopsis>rep=unix_g(cmd)
-            [rep,stat]=unix_g(cmd)
-            [rep,stat,stderr]=unix_g(cmd)
+        <synopsis>
+            rep = unix_g(commands)
+            [rep, status] = unix_g(commands)
+            [rep, status, msgerr] = unix_g(commands)
         </synopsis>
     </refsynopsisdiv>
     <refsection>
         <title>Parâmetros</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>string</para>
+                    <para>Texto contendo instruções do Windows ou Linux ou MacOS.</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
                 <term>rep</term>
                 <listitem>
-                    <para>vetor coluna de strings (saída padrão)</para>
+                    <para>coluna de texto : saída padrão</para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>stat</term>
+                <term>status</term>
                 <listitem>
-                    <para>inteiro o status de erro. stat=0 se nenhum erro tiver
-                        ocorrido
+                    <para>
+                      inteiro o status de erro. status=0 se nenhum erro tiver ocorrido.
                     </para>
                 </listitem>
             </varlistentry>
             <varlistentry>
-                <term>err</term>
+                <term>msgerr</term>
                 <listitem>
-                    <para>vetor coluna de strings (erro padrão)</para>
+                    <para>coluna de texto : erro padrão</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     <refsection>
         <title>Descrição</title>
         <para>
-            Envia um string <literal>cmd</literal> ao Unix para execução pelo
-            comando shell (sh). A saída padrão é redirecionada para a variável Scilab
-            <literal>rep</literal>. O erro padrão é redirecionado à variável Scilab
-            err ou é exibido se você forneceu apenas dois argumentos de saída. Erros
-            de execução Unix são detectados. Note que apenas o último erro de comando
-            shell é reportado quando uma lista de comandos separados por ";" é
-            enviada. Isto não é recomentdado.
+            <literal>unix_g()</literal> abre uma nova sessão do interpretador de comandos do
+            Sistema Operacional (SO) (<emphasis>sh</emphasis> com Linux, <emphasis>cmd.exe</emphasis>
+            com MS Windows, etc ..), envia <varname>commands</varname> para ele, permite processar
+            instruções do <varname>comandos</varname>, recebe a saída e a possível mensagem de erro
+            gerada pelo processamento, e fecha a sessão do intérprete.
         </para>
-    </refsection>
+        <para>
+            O diretório de trabalho inicial e as variáveis de ambiente do interpretador aberto
+            estão definidos <link linkend="host_description">como descrito para host()</link>.
+        </para>
+        <para>
+            A saída é redirecionada para a variável <varname>rep</varname>.
+        </para>
+        <para>
+            Se os <varname>commands</varname> incluírem uma instrução errônea,
+            <itemizedlist>
+              <listitem>
+                <varname>rep</varname> está definido como "".
+              </listitem>
+              <listitem>
+                Se a variável de saída <varname>msgerr</varname> for usada, a mensagem de erro
+                normalmente exibida no terminal do SO será capturada e armazenada nela.
+                Caso contrário, o erro do sistema operacional é exibido no console do Scilab.
+              </listitem>
+              <listitem>
+                As instruções restantes nos <varname>commands</varname> são então ignoradas.
+              </listitem>
+            </itemizedlist>
+            <warning>
+                Os efeitos de instruções válidas processadas antes do erro permanecem reais
+                (por exemplo, arquivos deletados). No entanto, sua saída padrão é perdida.
+                Os <varname>commands</varname> com múltiplas instruções não são recomendados.
+                Eles são mais difíceis de depurar.
+          </warning>
+        </para>
+
+        </refsection>
     <refsection>
         <title>Exemplos</title>
         <programlisting role="example"><![CDATA[
-function d=DIR(path)
-  path=pathconvert(path,%t,%t)
+function d = DIR(path)
+  path = pathconvert(path,%t,%t)
   if getos() == 'Windows' then
-    d=unix_g('dir '+path)
+    d = unix_g('dir '+path)
   else
-    d=unix_g('ls '+path)
+    d = unix_g('ls '+path)
   end
 endfunction
 
@@ -98,7 +131,19 @@ DIR('SCI/etc')
                 <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="host">host</link>
+            </member>
+            <member>
+                <link linkend="getos">getos</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">List of MS Windows exit codes</ulink>
             </member>
         </simplelist>
     </refsection>
index 6c88def..4ee40cf 100644 (file)
@@ -1,7 +1,8 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_s" xml:lang="pt">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns5="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_s" xml:lang="pt">
     <refnamediv>
         <refname>unix_s</refname>
-        <refpurpose>execução do comando shell (sh), sem saída</refpurpose>
+        <refpurpose>
+           executa silenciosamente algumas instruções do Windows, Linux ou MacOS
+        </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
-        <title>Seqüência de Chamamento</title>
-        <synopsis>unix_s(cmd)</synopsis>
+        <title>Seqüência de Chamamento</title>
+        <synopsis>unix_s(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Parâmetros</title>
+        <title>Parâmetros</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>string</para>
+                    <para>Texto único contendo algumas instruções do Windows, Linux ou MacOS.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     </refsection>
     <refsection>
-        <title>Descrição</title>
+        <title>Descrição</title>
         <para>
-            Envia um string <literal>cmd</literal> ao Unix para execução pelo
-            shell sh. A saída padrão é redirecionada para /dev/null. Erros de execução
-            Unix são detectados; Note que apenas o último erro de comando shell é
-            reportado quando uma lista de comandos separados por ";" é enviada: isto
-            não é recomendado.
+            <literal>unix_s()</literal> abre uma nova sessão do interpretador de comandos do
+            Sistema Operacional (SO) (<emphasis>sh</emphasis> com Linux, <emphasis>cmd.exe</emphasis>
+            com MS Windows, etc ..), envia <varname>commands</varname> para ele, permite processar
+            instruções do <varname>comandos</varname>, recebe a possível mensagem de erro
+            gerada pelo processamento, e fecha a sessão do intérprete.
+        </para>
+        <para>
+            O diretório de trabalho inicial e as variáveis de ambiente do interpretador aberto
+            estão definidos <link linkend="host_description">como descrito para host()</link>.
+        </para>
+        <para>
+            A saída é ignorada : nada é exibido nem no console do Scilab nem no terminal do SO
+            (Windows consolebox).
+        </para>
+        <para>
+           a mensagem de erro do
+          sistema operacional será exibida no console do Scilab e o <literal>unix_s</literal>
+          será interrompido e exibirá sua própria mensagem de erro. As seguintes instruções
+          (separadas por ";") nos <varname>commands</varname> são então ignoradas.
+        </para>
+        <para>
+            Se uma instrução nos <varname>commands</varname> gera um erro,
+            <itemizedlist>
+              <listitem>
+                A mensagem de erro do interpretador do sistema operacional é exibida no console
+                do Scilab
+              </listitem>
+              <listitem>
+                 <literal>unix_s</literal> para e exibe sua própria mensagem de erro.
+              </listitem>
+              <listitem>
+                As instruções restantes nos <varname>commands</varname> são então ignoradas.
+              </listitem>
+            </itemizedlist>
+            <warning>
+                Os efeitos de instruções válidas processadas antes do erro permanecem reais
+                (por exemplo, arquivos deletados).
+                Os <varname>commands</varname> com múltiplas instruções não são recomendados.
+                Eles são mais difíceis de depurar.
+          </warning>
         </para>
     </refsection>
     <refsection>
@@ -54,25 +95,28 @@ end
  ]]></programlisting>
     </refsection>
     <refsection role="see also">
-        <title>Ver Também</title>
+        <title>Ver Também</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index 263aac5..61948f3 100644 (file)
@@ -1,7 +1,8 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_w" xml:lang="pt">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns3="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_w" xml:lang="pt">
     <refnamediv>
         <refname>unix_w</refname>
-        <refpurpose>execução de comando shell (sh), saída redirecionada à janela
-            do Scilab
+        <refpurpose>
+           executa algumas instruções do Windows, Linux ou MacOS, resulta no console do Scilab
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
-        <title>Seqüência de Chamamento</title>
-        <synopsis>unix_w(cmd)</synopsis>
+        <title>Seqüência de Chamamento</title>
+        <synopsis>unix_w(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Parâmetros</title>
+        <title>Parâmetros</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>string</para>
+                    <para>Texto único contendo algumas instruções do Windows, Linux ou MacOS.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     </refsection>
     <refsection>
-        <title>Descrição</title>
+        <title>Descrição</title>
         <para>
-            Envia um string <literal>cmd</literal> ao Unix para execução com o
-            comando shell (sh). A saída é redirecionada à janela do Scilab. Erros de
-            execução Unix são detectados. Note que apenas o último erro de comando
-            shell é reportado quando uma lista de comandos separados por ";" é
-            enviada: isto não é recomandado.
+            <literal>unix_w()</literal> abre uma nova sessão do interpretador de comandos do
+            Sistema Operacional (SO) (<emphasis>sh</emphasis> com Linux, <emphasis>cmd.exe</emphasis>
+            com MS Windows, etc ..), envia <varname>commands</varname> para ele, permite processar
+            instruções do <varname>comandos</varname>, recebe a saída e a possível mensagem de erro
+            gerada pelo processamento, e fecha a sessão do intérprete.
+        </para>
+        <para>
+            O diretório de trabalho inicial e as variáveis de ambiente do interpretador aberto
+            estão definidos <link linkend="host_description">como descrito para host()</link>.
+        </para>
+        <para>
+            A saída retornada pelo sistema operacional é exibida no console do Scilab
+            ("_w" significa a "Janela" do Scilab principal).
+        </para>
+        <para>
+            Se uma instrução nos <varname>commands</varname> gera um erro,
+            <itemizedlist>
+                <listitem>
+                    A mensagem de erro do interpretador do sistema operacional é exibida no console
+                    do Scilab
+                </listitem>
+                <listitem>
+                    <literal>unix_w</literal> para e exibe sua própria mensagem de erro no console
+                    do Scilab.
+                </listitem>
+                <listitem>
+                    As instruções restantes nos <varname>commands</varname> são então ignoradas.
+                </listitem>
+            </itemizedlist>
+            <warning>
+                Os efeitos de instruções válidas processadas antes do erro permanecem reais
+                (por exemplo, arquivos deletados). No entanto, a saída é perdida: ela não é exibida
+                no console do Scilab.
+                Os <varname>commands</varname> com múltiplas instruções não são recomendados.
+                Eles são mais difíceis de depurar.
+            </warning>
         </para>
     </refsection>
     <refsection>
@@ -56,25 +91,28 @@ end
  ]]></programlisting>
     </refsection>
     <refsection role="see also">
-        <title>Ver Também</title>
+        <title>Ver Também</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_x">unix_x</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="getos">getos</link>
             </member>
         </simplelist>
     </refsection>
index 1a2d20d..75c8792 100644 (file)
@@ -1,7 +1,8 @@
-<?xml version="1.0" encoding="ISO-8859-1"?>
+<?xml version="1.0" encoding="UTF-8"?>
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) XXXX-2008 - INRIA
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:id="unix_x" xml:lang="pt">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns4="http://www.w3.org/1999/xhtml"
+          xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook"
+          xmlns:scilab="http://www.scilab.org" xml:id="unix_x" xml:lang="pt">
     <refnamediv>
         <refname>unix_x</refname>
-        <refpurpose>execução do comando shell (sh), saída redirecionada a uma
-            janela
+        <refpurpose>
+           executar algumas instruções do Windows, Linux ou MacOS, resulta em uma janela
+           de mensagem pop-up
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
-        <title>Seqüência de Chamamento</title>
-        <synopsis>unix_x(cmd)</synopsis>
+        <title>Seqüência de Chamamento</title>
+        <synopsis>unix_x(commands)</synopsis>
     </refsynopsisdiv>
     <refsection>
-        <title>Parâmetros</title>
+        <title>Parâmetros</title>
         <variablelist>
             <varlistentry>
-                <term>cmd</term>
+                <term>commands</term>
                 <listitem>
-                    <para>string</para>
+                    <para>Texto único contendo algumas instruções do Windows, Linux ou MacOS.</para>
                 </listitem>
             </varlistentry>
         </variablelist>
     </refsection>
     <refsection>
-        <title>Descrição</title>
+        <title>Descrição</title>
         <para>
-            Envia um string <literal>cmd</literal> ao Unix para uma execução
-            através do shel sh. A saída padrão é redirecionada a uma janela. Erros de
-            execução Unix são detectados. Note que apenas o último erro de comando de
-            shell é reportado quando uma lista de comandos separados por";" é enviada.
-            Isto não é recomendado.
+            <literal>unix_x()</literal> abre uma nova sessão do interpretador de comandos do
+            Sistema Operacional (SO) (<emphasis>sh</emphasis> com Linux, <emphasis>cmd.exe</emphasis>
+            com MS Windows, etc ..), envia <varname>commands</varname> para ele, permite processar
+            instruções do <varname>comandos</varname>, recebe a saída e a possível mensagem de erro
+            gerada pelo processamento, e fecha a sessão do intérprete.
+        </para>
+        <para>
+            O diretório de trabalho inicial e as variáveis de ambiente do interpretador aberto
+            estão definidos <link linkend="host_description">como descrito para host()</link>.
+        </para>
+        <para>
+          A saída retornada pelo SO é redirecionada e exibida em uma janela de mensagem
+          sem bloqueio.
+        </para>
+        <para>
+            Se uma instrução nos <varname>commands</varname> gera um erro,
+            <itemizedlist>
+                <listitem>
+                    A mensagem de erro do interpretador do sistema operacional é exibida no console
+                    do Scilab
+                </listitem>
+                <listitem>
+                    <literal>unix_x</literal> para e exibe sua própria mensagem de erro.
+                </listitem>
+                <listitem>
+                    As instruções restantes nos <varname>commands</varname> são então ignoradas.
+                </listitem>
+            </itemizedlist>
+            <warning>
+                Os efeitos de instruções válidas processadas antes do erro permanecem reais
+                (por exemplo, arquivos deletados). No entanto, a saída dessas instruções é perdida e
+                nenhuma janela de informações é aberta.
+                Os <varname>commands</varname> com múltiplas instruções não são recomendados.
+                Eles são mais difíceis de depurar.
+            </warning>
         </para>
     </refsection>
     <refsection>
@@ -56,25 +91,28 @@ end
  ]]></programlisting>
     </refsection>
     <refsection role="see also">
-        <title>Ver Também</title>
+        <title>Ver Também</title>
         <simplelist type="inline">
             <member>
-                <link linkend="edit">edit</link>
+                <link linkend="unix_g">unix_g</link>
             </member>
             <member>
-                <link linkend="manedit">manedit</link>
+                <link linkend="unix_s">unix_s</link>
             </member>
             <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="unix_w">unix_w</link>
             </member>
             <member>
-                <link linkend="unix_s">unix_s</link>
+                <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <link linkend="setenv">setenv</link>
             </member>
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="messagebox">messagebox</link>
             </member>
         </simplelist>
     </refsection>
index abcb7a9..25a8cc3 100644 (file)
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="consolebox">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+        xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+        xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+        xml:lang="en" xml:id="consolebox">
     <refnamediv>
         <refname>consolebox</refname>
-        <refpurpose>show or hide the OS window running Scilab (MS Windows)</refpurpose>
+        <refpurpose>shows or hides the MS Windows terminal running the Scilab session</refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
         <synopsis>
             consolebox on
             consolebox off
-            status = consolebox("toogle")
+            status = consolebox("toggle")
             status = consolebox()
         </synopsis>
     </refsynopsisdiv>
     </refsection>
     <refsection role="description">
         <title>Description</title>
-        <itemizedlist>
-            <listitem><literal>consolebox on</literal> : makes the OS window visible
-            and adds its button in the task bar. The consolebox
-            black window lays on the background, and then may be masked
-            by other windows of the OS desktop.
-            </listitem>
-            <listitem><literal>consolebox off</literal> : masks the OS window and
-            its button from the task bar.
-            </listitem>
-            <listitem><literal>consolebox toogle</literal> : toogles the OS window's
-            visibility.
-            </listitem>
-            <listitem><literal>status = consolebox()</literal> : queries
-             the visibility of the OS window.
-            </listitem>
-        </itemizedlist>
-        <para>The "consolebox" black window is the "hidden" terminal of the
-        Operating system from
-        which the current Scilab session has been run. It is somewhat the
-        "dark side" of your session :) Each Scilab session
-        has its own "consolebox". Its lifetime is the Scilab session lifetime:
-        The consolebox of a session is killed
-        when the Scilab session is quit.
+        <note>
+            <literal>consolebox(…)</literal> is available only if the Scilab session runs in
+            normal (standard desktop) mode (<literal>getscilabmode()=="STD"</literal>).
+        </note>
+        <para>
+            The "consolebox" black window is the "hidden" terminal of the Operating system from
+            which the current Scilab session has been run. It is somewhat the "dark side" of your
+            session :)
         </para>
-        <para>Some low level Scilab functions (such as the documentation builder
-        or other ones) send most of their errors messages in this window. They
-        would be considered as some spam in the Scilab console. Nevertheless,
-        these messages are very helpful for
-        debugging. <literal>consolebox on</literal> make them visible.
+        <para>
+            <table>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>consolebox on</literal></emphasis>
+                    </td>
+                    <td>
+                        makes the OS window visible and adds its button in the task bar.
+                        The black consolebox window lays in the background, and then may
+                        be masked by other windows of the OS desktop.
+                    </td>
+                </tr>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>consolebox off</literal></emphasis>
+                    </td>
+                    <td>
+                        masks the OS window and its button from the task bar.
+                    </td>
+                </tr>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>consolebox toggle</literal></emphasis>
+                    </td>
+                    <td>
+                        toggles the OS window's visibility, and returns its new status "on"|"off".
+                    </td>
+                </tr>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>status = consolebox()</literal></emphasis>
+                    </td>
+                    <td>
+                        queries the visibility of the OS window.
+                    </td>
+                </tr>
+            </table>
         </para>
-        <para>The "consolebox" black window can't be closed interactively:
-        its X-cross at the upper-right corner is disabled. Killing it kills Scilab session.
+        <para>
+            Each Scilab session has its own "consolebox". The consolebox of a session is killed
+            when the Scilab session is quit.
         </para>
         <para>
-            When some external OS instructions are send to the operating
-            system through
-            <link linkend="host">host(..)</link> or equivalently
-            <link linkend="unix">unix(..)</link>, or any other
-            <link linkend="unix_w">unix_w(..)</link>,
-            <link linkend="unix_g">unix_g(..)</link>,
-            <link linkend="unix_s">unix_s(..)</link>, or
-            <link linkend="unix_x">unix_x(..)</link> Scilab function,
-            these OS instructions are processed within the Scilab consolebox.
-            <para><literal>host(..)</literal> and
-                <literal>unix(..)</literal> show the results in the consolebox itself
-            </para>
-            <para><literal>unix_g, unix_w, unix_x, unix_s</literal> catch results
-                returned by the OS and cancel any display in the consolebox:
-            <itemizedlist>
-                <listitem>
-                    <literal>r = unix_g(..)</literal>
-                    <emphasis role="bold">g</emphasis>rabs and returns the
-                    results in any variable <literal>r</literal>.
-                </listitem>
-                <listitem>
-                    <literal>unix_w(..)</literal> displays results in Scilab's console,
-                    and returns nothing.
-                </listitem>
-                <listitem>
-                    <literal>unix_x(..)</literal> displays results in a messagebox.
-                </listitem>
-                <listitem>
-                    <literal>unix_s(..)</literal> runs
-                    <emphasis role="bold">s</emphasis>ilently: it returns and
-                    displays no results returned from the OS.
-                </listitem>
-            </itemizedlist>
-            </para>
+            The "consolebox" black window can't be closed interactively: its X-cross at the
+            upper-right corner is disabled. Killing it kills Scilab session.
         </para>
-        <note><literal>host("cls")</literal> clears the consolebox screen</note>
+        <para>
+            <literal>host</literal> and <literal>unix</literal> display their results in the
+            consolebox. <literal>unix_g, unix_w, unix_x, unix_s</literal> catch results returned
+            by the OS and cancel any display in the consolebox.
+        </para>
+        <important>
+            Some low level Scilab functions (such as the documentation builder or other ones)
+            send most of their errors messages in the consolebox. These messages would be considered
+            as spam in the Scilab console. <literal>consolebox on</literal> allows to read them
+            very helpfully for debugging.
+        </important>
         <note>
-            When the console has the focus, pressing the <literal>F12</literal> key toggles
+            When the Scilab console has the focus, pressing the <literal>F12</literal> key toggles
             the consolebox on|off
         </note>
+        <note><literal>host("cls")</literal> clears the consolebox screen</note>
     </refsection>
     <refsection>
         <title>Examples</title>
         <programlisting role="example"><![CDATA[
 consolebox on
-mprintf("See the consolebox button appearing in the task bar.\n"+..
-  "Click on it to bring the consolebox on the foreground.\n");
+// See the consolebox button appearing in the task bar.   <==
+
+// Click on it to bring the consolebox on the foreground. <==
 sleep(10,"s")
-consolebox('toggle')
+consolebox toggle
 sleep(5,"s")
-// Now: press the F12 key to toggle the consolebox
+
+// Now: press the F12 key to toggle the consolebox        <==
 consolebox on
-consolebox()
+consolebox
 
-// Instructions passed to host() or unix() or other unix_#() functions are
-// processed in the consolebox:
+// Instructions passed to host() or unix() are echoed in the consolebox:
 host("echo Test of output") // displays "Test of output" in the consolebox
-host("cls")  // clears the consolebox screen
-host("set")  // lists all defined MS Windows environnement variables
+host cls   // clears the consolebox screen
+host set   // lists all defined MS Windows environnement variables
 
-// Other unix_#() commands catch results returned by the Operating System
+// Other unix_#() commands catch results returned by the Operating System,
 //  instead of displaying them in the consolebox:
-host("cls")
+host cls
 unix_w("echo Test of output") // "Test of output" is now displayed in Scilab console
+unix_x set;          // Results are displayed in a messagebox. Nothing in consolebox
 r = unix_g("set");   // Environment variables are returned in r.
 r                    //   Nothing is displayed in the consolebox
-unix_x("set");       // Results are displayed in a messagebox. Nothing in consolebox
-
  ]]></programlisting>
     </refsection>
     <refsection role="see also">
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="console">console</link>
-            </member>
-            <member>
                 <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="console">console</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="tbx_builder_help">tbx_builder_help</link>
             </member>
         </simplelist>
     </refsection>
index a39ab90..fcf9726 100644 (file)
@@ -2,6 +2,7 @@
 <!--
  * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
  * Copyright (C) INRIA - Allan CORNET
+ * Copyright (C) 2018 - Samuel GOUGEON
  *
  * Copyright (C) 2012 - 2016 - Scilab Enterprises
  *
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="dos">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="en" xml:id="dos">
     <refnamediv>
         <refname>dos</refname>
-        <refpurpose>shell (cmd) command execution (Windows
-            only)
+        <refpurpose>executes some DOS instructions (Windows only)
         </refpurpose>
     </refnamediv>
     <refsynopsisdiv>
         <title>Syntax</title>
-        <synopsis>bOK=dos(command-name)
-            bOK=dos(command-name,'-echo')
-            [output,bOK]=dos(command-name)
-            [output,bOK,exitcode]=dos(command-name)
-            [output,bOK]=dos(command-name,'-echo')
-            [output,bOK,exitcode]=dos(command-name,'-echo')
+        <synopsis>
+            bOK = dos(commands)
+            [output, bOK] = dos(commands)
+            [output, bOK, exitcode] = dos(commands)
+            .. = dos(commands, '-echo')
         </synopsis>
     </refsynopsisdiv>
     <refsection>
+        <title>Arguments</title>
+        <variablelist>
+            <varlistentry>
+                <term>commands</term>
+                <listitem>
+                    <para>
+                        Single text containing instructions sent to the MS Windows cmd.exe command
+                        interpreter.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>'-echo'</term>
+                <listitem>
+                    <para>
+                        Forces the display of results (Windows standard output and error message)
+                        in the Scilab console.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>bOK</term>
+                <listitem>
+                    <para>
+                        Single boolean: <literal>%T</literal> if <varname>commands</varname>
+                        has been executed without cmd.exe error, <literal>%F</literal> otherwise.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>output</term>
+                <listitem>
+                    <para>
+                        Column of text: standard output and standard errors yielded by the
+                        MS Windows interpreter.
+                    </para>
+                </listitem>
+            </varlistentry>
+            <varlistentry>
+                <term>exitcode</term>
+                <listitem>
+                    <para>Integer exit code returned by cmd.exe after completion.
+                    </para>
+                </listitem>
+            </varlistentry>
+        </variablelist>
+    </refsection>
+    <refsection>
         <title>Description</title>
-        <para>Sends a string command-name to Windows for execution by the cmd shell.
-            Standard output and standard errors of the shell command are written in
-            the calling shell. bOK returns if command has been executed.
+        <para>
+            <literal>dos()</literal> opens a new session of the MS Windows command interpreter
+            <emphasis>cmd.exe</emphasis>, sends the <varname>commands</varname> to it,
+            lets it processing <varname>commands</varname> instructions, receives the standard
+            output and possible error message yielded by the processing, and closes the interpreter
+            session.
         </para>
-        <para>[output,bOK] = dos(command-name,'-echo') forces the output to the
-            Command Window, even though it is also being assigned into a variable.
+        <para>
+            The starting current working directory and environment variables of the cmd.exe
+            session are set <link linkend="host_description">as described for host()</link>.
         </para>
-        <para>exitcode value returned by the external process.</para>
-        <para>To open the notepad editor and return control immediately to Scilab
-            dos('start notepad')
+        <para>
+            The standard output and error messages yielded by the OS interpreter are never
+            displayed in the OS terminal running Scilab (the <link linkend="consolebox">consolebox</link>).
+            They are managed in the following ways:
+            <itemizedlist>
+                <listitem>
+                    If the <varname>output</varname> argument is expected, the standard output
+                    and errors messages are returned in it as a column of text.
+                </listitem>
+                <listitem>
+                    If the <varname>'-echo'</varname> option is used, the standard output and
+                    errors messages are (in addition) displayed in the Scilab console.
+                </listitem>
+            </itemizedlist>
         </para>
+        <note>
+            For Scilab on MS Windows, the functions <link linkend="unix_g">unix_g()</link>,
+            <link linkend="unix_s">unix_s()</link>, <link linkend="unix_w">unix_w()</link> and
+            <link linkend="unix_x">unix_x()</link> are based on <literal>dos()</literal>.
+        </note>
     </refsection>
     <refsection>
         <title>Examples</title>
+        <para/>
         <programlisting role="example"><![CDATA[
-[s,w] = dos('dir');
-[s,w] = dos('dir','-echo');
+[r, s] = dos('dir');
+r
+[r, s] = dos('dir','-echo');
+
 dos('start notepad')
+
 dos('taskkill /IM notepad.exe') // Caution, this command will kill all launched notepad's process
-[s, w] = dos('foo')
-[s, w, code] = dos('dir')
-[s, w, code] = dos('foo')
+
+[r, s, code] = dos('foo')
+[r, s, code] = dos('dir')
+     ]]></programlisting>
+        <para>Current working directory and environment variables in the cmd.exe session:</para>
+        <programlisting role="example"><![CDATA[
+pwd()                           // in the Scilab session
+[r, ok] = dos("cd"); r          // in the dos() session
+
+setenv TEST AAAA ;              // in the Windows interpreter running the Scilab session
+[r,ok] = dos("echo %TEST%"); r  // in the dos() session
+
+// Environment variables set in a dos() session are lost when dos() returns:
+dos("set TEST=BBBB")
+[r,ok] = dos("echo %TEST%"); r
+getenv TEST
  ]]></programlisting>
+    <screen><![CDATA[
+--> pwd()                           // in the Scilab session
+ ans  =
+ C:\Scilab\tests
+
+--> [r, ok] = dos("cd"); r          // in the dos() session
+ r  =
+ C:\Scilab\tests
+
+--> setenv TEST AAAA ;              // in the Windows interpreter running the Scilab session
+--> [r,ok] = dos("echo %TEST%"); r  // in the dos() session
+ r  =
+ AAAA
+
+--> // Environment variables set in a dos() session are lost when dos() returns:
+--> dos("set TEST=BBBB")
+ ans  =
+  T
+
+--> [r,ok] = dos("echo %TEST%"); r
+ r  =
+ AAAA
+
+--> getenv TEST
+ ans  =
+ AAAA
+]]></screen>
     </refsection>
+
     <refsection role="see also">
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="setenv">setenv</link>
+            </member>
+            <member>
+                <link linkend="host">host</link>
+            </member>
+            <member>
+                <link linkend="unix_g">unix_g</link>
+            </member>
+            <member>
+                <link linkend="powershell">powershell</link>
+            </member>
+            <member>
+                <ulink url="https://msdn.microsoft.com/en-us/library/windows/desktop/ms681382.aspx">List of MS Windows exit codes</ulink>
             </member>
         </simplelist>
     </refsection>
index 29c6fe2..29f04f5 100644 (file)
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="en" xml:id="winopen">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="en" xml:id="winopen">
     <refnamediv>
         <refname>winopen</refname>
         <refpurpose>Open file in appropriate application
@@ -38,7 +41,7 @@
         <title>See also</title>
         <simplelist type="inline">
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="host">host</link>
             </member>
         </simplelist>
     </refsection>
index 537adb8..2482227 100644 (file)
  * along with this program.
  *
  -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="consolebox">
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+        xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+        xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+        xml:lang="fr" xml:id="consolebox">
     <refnamediv>
         <refname>consolebox</refname>
         <refpurpose>affiche ou cache le terminal Windows de lancement de Scilab</refpurpose>
         <synopsis>
             consolebox on
             consolebox off
-            status = consolebox("toogle")
+            status = consolebox("toggle")
             status = consolebox()
         </synopsis>
     </refsynopsisdiv>
     <refsection role="arguments">
-        <title>Paramètres</title>
+        <title>Arguments</title>
         <variablelist>
             <varlistentry>
                 <term>status</term>
                 <listitem>
-                    <para><varname>"on" | "off"</varname> : visibilité du
-                    terminal Windows après l'instruction
-                    <function>consolebox</function>.
+                    <para>
+                        <varname>"on" | "off"</varname> : visibilité du terminal Windows après
+                        l'instruction <function>consolebox</function>.
                     </para>
                 </listitem>
             </varlistentry>
     </refsection>
     <refsection role="description">
         <title>Description</title>
-        <itemizedlist>
-            <listitem><literal>consolebox on</literal> : affiche le terminal
-            Windows et ajoute son bouton à la barre des tâches. La fenêtre noire
-            du terminal (consolebox) est située en arrière fond et peut donc
-            être masquée par d'autres fenêtres du bureau Windows.
-            </listitem>
-            <listitem><literal>consolebox off</literal> : masque le terminal
-            et supprime son bouton de la barre des tâches.
-            </listitem>
-            <listitem><literal>consolebox toogle</literal> : commute la
-            visibilité du terminal.
-            </listitem>
-            <listitem><literal>status = consolebox()</literal> : indique
-            la visibilité actuelle du terminal Windows.
-            </listitem>
-        </itemizedlist>
-        <para>La fenêtre noire "consolebox" est le terminal (par défaut caché)
-        du système d'exploitation Windows depuis lequel la session courante de
-        Scilab a été lancée et se déroule. C'est en quelque sorte le "coté sombre"
-        de votre session Scilab :) Chaque session Scilab a sa propre "consolebox".
-        Sa durée de vie est celle de la session Scilab. La consolebox d'une session
-        Scilab cesse d'exister dés lors que la session Scilab est fermée.
+        <note>
+            La fonction <literal>consolebox(…)</literal> est disponible uniquement si la session
+            Scilab a été lancée en mode normal (<literal>getscilabmode()=="STD"</literal>).
+        </note>
+        <para>
+            La fenêtre noire "consolebox" est le terminal (par défaut caché) du système
+            d'exploitation Windows depuis lequel la session courante de Scilab a été lancée et se
+            déroule. C'est en quelque sorte le "coté sombre" de votre session Scilab :)
         </para>
-        <para>Certaines fonctions Scilab de bas niveau (tel que le compilateur
-        de la documentation Scilab, ou d'autres fonctions) envoient leurs
-        messages d'erreur dans la consolebox, sans quoi ces messages spammeraient
-        la console Scilab habituelle. Ces messages peuvent néanmoins être très
-        utiles pour le débogage. <literal>consolebox on</literal> permet de les
-        consulter.
+        <para>
+            <table>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>consolebox on</literal></emphasis>
+                    </td>
+                    <td>
+                        affiche le terminal  Windows et ajoute son bouton à la barre des tâches.
+                        La fenêtre noire du terminal (consolebox) est située en arrière plan
+                        et peut donc être masquée par d'autres fenêtres du bureau Windows.
+                    </td>
+                </tr>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>consolebox off</literal></emphasis>
+                    </td>
+                    <td>
+                        masque le terminal et supprime son bouton de la barre des tâches.
+                    </td>
+                </tr>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>consolebox toggle</literal></emphasis>
+                    </td>
+                    <td>
+                        commute la visibilité du terminal, et retourne le nouvel état "on"|"off".
+                    </td>
+                </tr>
+                <tr>
+                    <td valign="top" style="white-space: nowrap">
+                        <emphasis role="bold"><literal>status = consolebox()</literal></emphasis>
+                    </td>
+                    <td>
+                        indique la visibilité actuelle du terminal Windows.
+                    </td>
+                </tr>
+            </table>
         </para>
-        <para>La fenêtre noire de la "consolebox" ne peut pas être fermée
-        "à la main" : la croix X de son coin supérieur droit est désactivée.
-        La suppression forcée de la consolebox ferme la session Scilab immédiatement.
+        <para>
+            Chaque session Scilab a sa propre "consolebox". La consolebox d'une session Scilab
+            cesse d'exister dés lors que la session Scilab est fermée.
         </para>
         <para>
-            Lorsque des instructions DOS/Windows externes sont envoyées par
-            Scilab au système d'exploitation via les fonctions
-            <link linkend="host">host(..)</link> ou de manière équivalente par
-            <link linkend="unix">unix(..)</link>, ou
-            <link linkend="unix_w">unix_w(..)</link>,
-            <link linkend="unix_g">unix_g(..)</link>,
-            <link linkend="unix_s">unix_s(..)</link>, ou
-            <link linkend="unix_x">unix_x(..)</link>,
-            ces instructions Windows sont reçues et traitées par la consolebox.
-            <para><literal>host(..)</literal> et
-                <literal>unix(..)</literal> affichent les résultats à même
-                la consolebox.
-            </para>
-            <para><literal>unix_g, unix_w, unix_x, unix_s</literal> interceptent
-            les résultats donnés par Windows et en suppriment l'affichage
-            dans la consolebox :
-            <itemizedlist>
-                <listitem>
-                    <literal>r = unix_g(..)</literal> saisit
-                    (<emphasis role="bold">g</emphasis>rabs) et retourne les
-                    résultats dans une variable texte <literal>r</literal>.
-                </listitem>
-                <listitem>
-                    <literal>unix_w(..)</literal> affiche les résultats dans la
-                    console Scilab (<emphasis role="bold">w</emphasis>indow).
-                </listitem>
-                <listitem>
-                    <literal>unix_x(..)</literal> affiche les résultats dans
-                    une <link linkend="messagebox">messagebox</link>.
-                </listitem>
-                <listitem>
-                    <literal>unix_s(..)</literal> travaille en
-                    <emphasis role="bold">s</emphasis>ilence, sans rien afficher
-                    ni retourner.
-                </listitem>
-            </itemizedlist>
-            </para>
+            La fenêtre noire de la "consolebox" ne peut pas être fermée "à la main" : la croix X
+            de son coin supérieur droit est désactivée. La suppression forcée de la consolebox
+            ferme la session Scilab immédiatement.
         </para>
-        <note><literal>host("cls")</literal> efface le contenu de la consolebox.</note>
+        <para>
+            <literal>host</literal> et <literal>unix</literal> affichent leurs résultats d'exécution
+            dans la consolebox. <literal>dos, unix_g, unix_w, unix_x, unix_s</literal> interceptent
+            les résultats donnés par Windows et en suppriment l'affichage dans la consolebox.
+        </para>
+        <important>
+            Certaines fonctions Scilab de bas niveau (tel que le compilateur des pages d'aide de
+            Scilab, ou d'autres fonctions) envoient leurs messages d'erreur dans la consolebox,
+            sans quoi ces messages pollueraient la console du bureau Scilab.
+            <literal>consolebox on</literal> permet de consulter ces messages très utiles pour le
+            débogage.
+        </important>
         <note>
-            Lorsque la console a le focus, la touche <literal>F12</literal> permet de faire
+            Lorsque la console Scilab a le focus, la touche <literal>F12</literal> permet de faire
             apparaitre ou disparaitre la consolebox.
         </note>
+        <note><literal>host("cls")</literal> efface le contenu de la consolebox.</note>
     </refsection>
     <refsection>
         <title>Exemples</title>
         <programlisting role="example"><![CDATA[
 consolebox on
-mprintf("\nLe bouton de la consolebox apparaît dans la barre des tâches.\n"+..
-        "Cliquer dessus amène la consolebox au premier plan.\n");
+// Le bouton de la consolebox apparaît dans la barre des tâches.  <==
+// Cliquer dessus amène la consolebox au premier plan :           <==
 sleep(10,"s")
-consolebox('toggle')
+consolebox toggle
 sleep(5,"s")
-// Maintenant : tester la touche F12 pour faire apparaitre/disparaitre la consolebox
+// Maintenant : tester la touche F12 pour faire apparaitre/disparaitre la consolebox <==
 consolebox on
 consolebox()
 
-// Les instructions passées à host() ou unix() ou autres fonctions unix_#() sont
-// traitées dans la consolebox :
-host("echo Texte à afficher") // Affiche "Texte à afficher" dans la consolebox
-host("cls")  // efface le contenu de la consolebox
-host("set")  // liste toutes les variables d'environnement Windows définies
+// Les instructions passées à host() ou unix() affichent leurs sorties dans la consolebox :
+host("echo Texte à afficher")
+host cls   // efface le contenu affiché dans la consolebox
+host set   // liste toutes les variables d'environnement Windows définies
 
-// Les autres fonctions unix_#() interceptent les résultats donnés par Windows
+// Les autres fonctions unix_#() interceptent les résultats donnés par Windows,
 //  au lieu de les afficher dans la consolebox :
-host("cls")
+host cls
 unix_w("echo Texte à afficher") // "Texte à afficher" s'affiche dans la console Scilab
+unix_x set;          // Une fenêtre s'ouvre et affiche les résultats.
+                     //  Rien dans la consolebox.
 r = unix_g("set");   // Les variables d'environnement Windows sont retournées dans r.
 r                    //  Rien n'est affiché dans la consolebox.
-unix_x("set");       // Une messagebox s'ouvre et affiche les résultats.
-                     //  Rien dans la consolebox.
  ]]></programlisting>
     </refsection>
     <refsection role="see also">
         <title>Voir aussi</title>
         <simplelist type="inline">
             <member>
-                <link linkend="console">console</link>
-            </member>
-            <member>
                 <link linkend="host">host</link>
             </member>
             <member>
-                <link linkend="unix_w">unix_w</link>
-            </member>
-            <member>
-                <link linkend="unix_g">unix_g</link>
+                <link linkend="console">console</link>
             </member>
             <member>
-                <link linkend="unix_x">unix_x</link>
+                <link linkend="tbx_builder_help">tbx_builder_help</link>
             </member>
         </simplelist>
     </refsection>
index a10359f..d1d9714 100644 (file)
@@ -1,5 +1,22 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="fr" xml:id="winopen">
+<!--
+ * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+ * Copyright (C) INRIA - Allan CORNET
+ *
+ * Copyright (C) 2012 - 2016 - Scilab Enterprises
+ *
+ * This file is hereby licensed under the terms of the GNU GPL v2.0,
+ * pursuant to article 5.3.4 of the CeCILL v.2.1.
+ * This file was originally licensed under the terms of the CeCILL v2.1,
+ * and continues to be available under such terms.
+ * For more information, see the COPYING file which you should have received
+ * along with this program.
+ *
+ -->
+<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
+          xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
+          xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
+          xml:lang="fr" xml:id="winopen">
     <refnamediv>
         <refname>winopen</refname>
         <refpurpose>Ouvre le fichier avec l'application
@@ -22,7 +39,7 @@
         <title>Voir aussi</title>
         <simplelist type="inline">
             <member>
-                <link linkend="unix">unix</link>
+                <link linkend="host">host</link>
             </member>
         </simplelist>
     </refsection>
diff --git a/scilab/modules/windows_tools/help/ja_JP/dos.xml b/scilab/modules/windows_tools/help/ja_JP/dos.xml
deleted file mode 100644 (file)
index fd2cfe8..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
- * Copyright (C) INRIA - Allan CORNET
- *
- * Copyright (C) 2012 - 2016 - Scilab Enterprises
- *
- * This file is hereby licensed under the terms of the GNU GPL v2.0,
- * pursuant to article 5.3.4 of the CeCILL v.2.1.
- * This file was originally licensed under the terms of the CeCILL v2.1,
- * and continues to be available under such terms.
- * For more information, see the COPYING file which you should have received
- * along with this program.
- *
- -->
-<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org" xml:lang="ja" xml:id="dos">
-    <refnamediv>
-        <refname>dos</refname>
-        <refpurpose>シェル (cmd) コマンド実行 (Windows専用)</refpurpose>
-    </refnamediv>
-    <refsynopsisdiv>
-        <title>呼び出し手順</title>
-        <synopsis>bOK=dos(command-name)
-            bOK=dos(command-name,'-echo')
-            [output,bOK]=dos(command-name)
-            [output,bOK,exitcode]=dos(command-name)
-            [output,bOK]=dos(command-name,'-echo')
-            [output,bOK,exitcode]=dos(command-name,'-echo')
-        </synopsis>
-    </refsynopsisdiv>
-    <refsection>
-        <title>説明</title>
-        <para>コマンドシェルで実行するために
-            コマンド名の文字列をWindowsに送信します.
-            シェルコマンドの標準出力および標準エラーが呼び出し側のシェルに
-            書き込まれます.
-            コマンドが実行された場合は, bOK が返されます.
-        </para>
-        <para>[output,bOK] = dos(command-name,'-echo') は,
-            出力先が特定の変数へ割り付けられている場合でも
-            コマンドウインドウへの出力を強制的に行ないます.
-        </para>
-        <para>外部プロセスによる終了コードの値が返されます.</para>
-        <para>
-            ノートパッドエディタをオープンした後,すぐに
-            Scilabに制御を戻すには以下のようにします:
-            dos('start notepad')
-        </para>
-    </refsection>
-    <refsection>
-        <title>例</title>
-        <programlisting role="example"><![CDATA[
-[s,w] = dos('dir');
-[s,w] = dos('dir','-echo');
-dos('start notepad')
-dos('taskkill /IM notepad.exe') // 注意:このコマンドは全てのノートパッドのプロセスを終了します
-[s, w] = dos('foo')
-[s, w, code] = dos('dir')
-[s, w, code] = dos('foo')
- ]]></programlisting>
-    </refsection>
-    <refsection role="see also">
-        <title>参照</title>
-        <simplelist type="inline">
-            <member>
-                <link linkend="unix">unix</link>
-            </member>
-        </simplelist>
-    </refsection>
-</refentry>