Salome HOME
sat #8897 : prise en compte du cas overwrite où version est un dictionnaire
[tools/sat.git] / doc / build / html / write_command.html
index d5f0c6e646476886b6a6580a8164a7488795f763..ce276e2f0d5298fa63cec1b7982a0aef766a1fc3 100644 (file)
@@ -2,31 +2,20 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
-
 <html xmlns="http://www.w3.org/1999/xhtml">
   <head>
+    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-    
-    <title>Add a user custom command &mdash; salomeTools 5.0.0dev documentation</title>
-    
+    <title>Add a user custom command &#8212; salomeTools 5.0.0dev documentation</title>
     <link rel="stylesheet" href="_static/alabaster.css" type="text/css" />
     <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
-    <link rel="stylesheet" href="/volatile/wambeke/SAT5/SAT5_S840_MATIX24/SAT/doc/src/custom.css" type="text/css" />
-    
-    <script type="text/javascript">
-      var DOCUMENTATION_OPTIONS = {
-        URL_ROOT:    '',
-        VERSION:     '5.0.0dev',
-        COLLAPSE_INDEX: false,
-        FILE_SUFFIX: '.html',
-        HAS_SOURCE:  true
-      };
-    </script>
+    <script type="text/javascript" src="_static/documentation_options.js"></script>
     <script type="text/javascript" src="_static/jquery.js"></script>
     <script type="text/javascript" src="_static/underscore.js"></script>
     <script type="text/javascript" src="_static/doctools.js"></script>
-    <script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
-    <link rel="top" title="salomeTools 5.0.0dev documentation" href="index.html" />
+    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
+    <link rel="index" title="Index" href="genindex.html" />
+    <link rel="search" title="Search" href="search.html" />
     <link rel="next" title="src" href="commands/apidoc/modules.html" />
     <link rel="prev" title="Command generate" href="commands/generate.html" />
    
@@ -35,8 +24,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />
 
-  </head>
-  <body>
+  </head><body>
   
 
     <div class="document">
 <p class="last">This documentation is for <a class="reference external" href="https://docs.python.org/2.7">Python</a> developers.</p>
 </div>
 <p>The salomeTools product provides a simple way to develop commands.
-The first thing to do is to add a file with <em>.py</em> extension in the <tt class="docutils literal"><span class="pre">commands</span></tt> directory of salomeTools.</p>
+The first thing to do is to add a file with <em>.py</em> extension in the <code class="docutils literal notranslate"><span class="pre">commands</span></code> directory of salomeTools.</p>
 <p>Here are the basic requirements that must be followed in this file in order to add a command.</p>
 </div>
 <div class="section" id="basic-requirements">
 <h2>Basic requirements<a class="headerlink" href="#basic-requirements" title="Permalink to this headline">¶</a></h2>
-<p>By adding a file <em>mycommand.py</em> in the <tt class="docutils literal"><span class="pre">commands</span></tt> directory, salomeTools will define a new command named <tt class="docutils literal"><span class="pre">mycommand</span></tt>.</p>
+<p>By adding a file <em>mycommand.py</em> in the <code class="docutils literal notranslate"><span class="pre">commands</span></code> directory, salomeTools will define a new command named <code class="docutils literal notranslate"><span class="pre">mycommand</span></code>.</p>
 <p>In <em>mycommand.py</em>, there must be the following method:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="n">args</span><span class="p">,</span> <span class="n">runner</span><span class="p">,</span> <span class="n">logger</span><span class="p">):</span>
-    <span class="c"># your algorithm ...</span>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="n">args</span><span class="p">,</span> <span class="n">runner</span><span class="p">,</span> <span class="n">logger</span><span class="p">):</span>
+    <span class="c1"># your algorithm ...</span>
     <span class="k">pass</span>
 </pre></div>
 </div>
@@ -70,38 +58,38 @@ But there are some useful services provided by salomeTools :</p>
 <ul class="simple">
 <li>You can give some options to your command:</li>
 </ul>
-<div class="highlight-python"><div class="highlight"><pre><span class="kn">import</span> <span class="nn">src</span>
+<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">src</span>
 
-<span class="c"># Define all possible option for mycommand command :  &#39;sat mycommand &lt;options&gt;&#39;</span>
+<span class="c1"># Define all possible option for mycommand command :  &#39;sat mycommand &lt;options&gt;&#39;</span>
 <span class="n">parser</span> <span class="o">=</span> <span class="n">src</span><span class="o">.</span><span class="n">options</span><span class="o">.</span><span class="n">Options</span><span class="p">()</span>
-<span class="n">parser</span><span class="o">.</span><span class="n">add_option</span><span class="p">(</span><span class="s">&#39;m&#39;</span><span class="p">,</span> <span class="s">&#39;myoption&#39;</span><span class="p">,</span> \
-                  <span class="s">&#39;boolean&#39;</span><span class="p">,</span> <span class="s">&#39;myoption&#39;</span><span class="p">,</span> \
-                  <span class="s">&#39;My option changes the behavior of my command.&#39;</span><span class="p">)</span>
+<span class="n">parser</span><span class="o">.</span><span class="n">add_option</span><span class="p">(</span><span class="s1">&#39;m&#39;</span><span class="p">,</span> <span class="s1">&#39;myoption&#39;</span><span class="p">,</span> \
+                  <span class="s1">&#39;boolean&#39;</span><span class="p">,</span> <span class="s1">&#39;myoption&#39;</span><span class="p">,</span> \
+                  <span class="s1">&#39;My option changes the behavior of my command.&#39;</span><span class="p">)</span>
 
 <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="n">args</span><span class="p">,</span> <span class="n">runner</span><span class="p">,</span> <span class="n">logger</span><span class="p">):</span>
-    <span class="c"># Parse the options</span>
+    <span class="c1"># Parse the options</span>
     <span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">args</span><span class="p">)</span> <span class="o">=</span> <span class="n">parser</span><span class="o">.</span><span class="n">parse_args</span><span class="p">(</span><span class="n">args</span><span class="p">)</span>
-    <span class="c"># algorithm</span>
+    <span class="c1"># algorithm</span>
 </pre></div>
 </div>
 <ul class="simple">
 <li>You can add a <em>description</em> method that will display a message when the user will call the help:</li>
 </ul>
-<div class="highlight-python"><div class="highlight"><pre> <span class="kn">import</span> <span class="nn">src</span>
+<div class="highlight-python notranslate"><div class="highlight"><pre><span></span> <span class="kn">import</span> <span class="nn">src</span>
 
- <span class="c"># Define all possible option for mycommand command : &#39;sat mycommand &lt;options&gt;&#39;</span>
+ <span class="c1"># Define all possible option for mycommand command : &#39;sat mycommand &lt;options&gt;&#39;</span>
  <span class="n">parser</span> <span class="o">=</span> <span class="n">src</span><span class="o">.</span><span class="n">options</span><span class="o">.</span><span class="n">Options</span><span class="p">()</span>
- <span class="n">parser</span><span class="o">.</span><span class="n">add_option</span><span class="p">(</span><span class="s">&#39;m&#39;</span><span class="p">,</span> <span class="s">&#39;myoption&#39;</span><span class="p">,</span> \
-                   <span class="s">&#39;boolean&#39;</span><span class="p">,</span> <span class="s">&#39;myoption&#39;</span><span class="p">,</span> \
-                   <span class="s">&#39;My option changes the behavior of my command.&#39;</span><span class="p">)</span>
+ <span class="n">parser</span><span class="o">.</span><span class="n">add_option</span><span class="p">(</span><span class="s1">&#39;m&#39;</span><span class="p">,</span> <span class="s1">&#39;myoption&#39;</span><span class="p">,</span> \
+                   <span class="s1">&#39;boolean&#39;</span><span class="p">,</span> <span class="s1">&#39;myoption&#39;</span><span class="p">,</span> \
+                   <span class="s1">&#39;My option changes the behavior of my command.&#39;</span><span class="p">)</span>
 
 <span class="hll"> <span class="k">def</span> <span class="nf">description</span><span class="p">():</span>
-</span><span class="hll">     <span class="k">return</span> <span class="n">_</span><span class="p">(</span><span class="s">&quot;The help of mycommand.&quot;</span><span class="p">)</span>
+</span><span class="hll">     <span class="k">return</span> <span class="n">_</span><span class="p">(</span><span class="s2">&quot;The help of mycommand.&quot;</span><span class="p">)</span>
 </span>
  <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="n">args</span><span class="p">,</span> <span class="n">runner</span><span class="p">,</span> <span class="n">logger</span><span class="p">):</span>
-     <span class="c"># Parse the options</span>
+     <span class="c1"># Parse the options</span>
      <span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">args</span><span class="p">)</span> <span class="o">=</span> <span class="n">parser</span><span class="o">.</span><span class="n">parse_args</span><span class="p">(</span><span class="n">args</span><span class="p">)</span>
-     <span class="c"># algorithm</span>
+     <span class="c1"># algorithm</span>
 </pre></div>
 </div>
 </div>
@@ -113,7 +101,7 @@ It gives access to <em>runner.cfg</em> which is the data model defined from all
 For example, <em>runner.cfg.APPLICATION.workdir</em>
 contains the root directory of the current application.</p>
 <p>The <em>runner</em> variable gives also access to other commands of salomeTools:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="c"># as CLI_ &#39;sat prepare ...&#39;</span>
+<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># as CLI_ &#39;sat prepare ...&#39;</span>
 <span class="n">runner</span><span class="o">.</span><span class="n">prepare</span><span class="p">(</span><span class="n">runner</span><span class="o">.</span><span class="n">cfg</span><span class="o">.</span><span class="n">VARS</span><span class="o">.</span><span class="n">application</span><span class="p">)</span>
 </pre></div>
 </div>
@@ -124,7 +112,7 @@ contains the root directory of the current application.</p>
 It gives access to the write method.</p>
 <p>When this method is called, the message passed as parameter
 will be displayed in the terminal and written in an xml log file.</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">logger</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">&quot;My message&quot;</span><span class="p">,</span> <span class="mi">3</span><span class="p">)</span> <span class="c"># 3 as default</span>
+<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">logger</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s2">&quot;My message&quot;</span><span class="p">,</span> <span class="mi">3</span><span class="p">)</span> <span class="c1"># 3 as default</span>
 </pre></div>
 </div>
 <p>The second argument defines the level of verbosity
@@ -134,7 +122,7 @@ It has to be between 1 and 5 (the most verbose level).</p>
 <div class="section" id="hello-example">
 <h2>HELLO example<a class="headerlink" href="#hello-example" title="Permalink to this headline">¶</a></h2>
 <p>Here is a <em>hello</em> command, file <em>commands/hello.py</em>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="kn">import</span> <span class="nn">src</span>
+<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">src</span>
 
 <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">hello.py</span>
@@ -143,34 +131,34 @@ It has to be between 1 and 5 (the most verbose level).</p>
 <span class="sd">&quot;&quot;&quot;</span>
 
 <span class="n">parser</span> <span class="o">=</span> <span class="n">src</span><span class="o">.</span><span class="n">options</span><span class="o">.</span><span class="n">Options</span><span class="p">()</span>
-<span class="n">parser</span><span class="o">.</span><span class="n">add_option</span><span class="p">(</span><span class="s">&#39;f&#39;</span><span class="p">,</span> <span class="s">&#39;french&#39;</span><span class="p">,</span> <span class="s">&#39;boolean&#39;</span><span class="p">,</span> <span class="s">&#39;french&#39;</span><span class="p">,</span> <span class="s">&quot;french set hello message in french.&quot;</span><span class="p">)</span>
+<span class="n">parser</span><span class="o">.</span><span class="n">add_option</span><span class="p">(</span><span class="s1">&#39;f&#39;</span><span class="p">,</span> <span class="s1">&#39;french&#39;</span><span class="p">,</span> <span class="s1">&#39;boolean&#39;</span><span class="p">,</span> <span class="s1">&#39;french&#39;</span><span class="p">,</span> <span class="s2">&quot;french set hello message in french.&quot;</span><span class="p">)</span>
 
 <span class="k">def</span> <span class="nf">description</span><span class="p">():</span>
-    <span class="k">return</span> <span class="n">_</span><span class="p">(</span><span class="s">&quot;The help of hello.&quot;</span><span class="p">)</span>
+    <span class="k">return</span> <span class="n">_</span><span class="p">(</span><span class="s2">&quot;The help of hello.&quot;</span><span class="p">)</span>
 
 <span class="k">def</span> <span class="nf">run</span><span class="p">(</span><span class="n">args</span><span class="p">,</span> <span class="n">runner</span><span class="p">,</span> <span class="n">logger</span><span class="p">):</span>
-    <span class="c"># Parse the options</span>
+    <span class="c1"># Parse the options</span>
     <span class="p">(</span><span class="n">options</span><span class="p">,</span> <span class="n">args</span><span class="p">)</span> <span class="o">=</span> <span class="n">parser</span><span class="o">.</span><span class="n">parse_args</span><span class="p">(</span><span class="n">args</span><span class="p">)</span>
-    <span class="c"># algorithm</span>
+    <span class="c1"># algorithm</span>
     <span class="k">if</span> <span class="ow">not</span> <span class="n">options</span><span class="o">.</span><span class="n">french</span><span class="p">:</span>
-        <span class="n">logger</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">&#39;HELLO! WORLD!</span><span class="se">\n</span><span class="s">&#39;</span><span class="p">)</span>
+        <span class="n">logger</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">&#39;HELLO! WORLD!</span><span class="se">\n</span><span class="s1">&#39;</span><span class="p">)</span>
     <span class="k">else</span><span class="p">:</span>
-        <span class="n">logger</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">&#39;Bonjour tout le monde!</span><span class="se">\n</span><span class="s">&#39;</span><span class="p">)</span>
+        <span class="n">logger</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s1">&#39;Bonjour tout le monde!</span><span class="se">\n</span><span class="s1">&#39;</span><span class="p">)</span>
 </pre></div>
 </div>
 <p>A first call of hello:</p>
-<div class="highlight-bash"><div class="highlight"><pre><span class="c"># Get the help of hello:</span>
+<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span><span class="c1"># Get the help of hello:</span>
 ./sat --help hello
 
-<span class="c"># To get bonjour</span>
+<span class="c1"># To get bonjour</span>
 ./sat hello --french
 Bonjour tout le monde!
 
-<span class="c"># To get hello</span>
+<span class="c1"># To get hello</span>
 ./sat hello
 HELLO! WORLD!
 
-<span class="c"># To get the log</span>
+<span class="c1"># To get the log</span>
 ./sat log
 </pre></div>
 </div>
@@ -181,7 +169,7 @@ HELLO! WORLD!
           </div>
         </div>
       </div>
-      <div class="sphinxsidebar">
+      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
         <div class="sphinxsidebarwrapper">
             <p class="logo"><a href="index.html">
               <img class="logo" src="_static/sat_v5.0.png" alt="Logo"/>
@@ -206,22 +194,23 @@ HELLO! WORLD!
   </ul></li>
 </ul>
 </div>
-  <h3>This Page</h3>
-  <ul class="this-page-menu">
-    <li><a href="_sources/write_command.txt"
-           rel="nofollow">Show Source</a></li>
-  </ul>
-<div id="searchbox" style="display: none">
+  <div role="note" aria-label="source link">
+    <h3>This Page</h3>
+    <ul class="this-page-menu">
+      <li><a href="_sources/write_command.rst.txt"
+            rel="nofollow">Show Source</a></li>
+    </ul>
+   </div>
+<div id="searchbox" style="display: none" role="search">
   <h3>Quick search</h3>
+    <div class="searchformwrapper">
     <form class="search" action="search.html" method="get">
       <input type="text" name="q" />
       <input type="submit" value="Go" />
       <input type="hidden" name="check_keywords" value="yes" />
       <input type="hidden" name="area" value="default" />
     </form>
-    <p class="searchtip" style="font-size: 90%">
-    Enter search terms or a module, class or function name.
-    </p>
+    </div>
 </div>
 <script type="text/javascript">$('#searchbox').show(0);</script>
         </div>
@@ -232,11 +221,11 @@ HELLO! WORLD!
       &copy;2018, CEA.
       
       |
-      Powered by <a href="http://sphinx-doc.org/">Sphinx 1.1.3</a>
-      &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster </a>
+      Powered by <a href="http://sphinx-doc.org/">Sphinx 1.7.3</a>
+      &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.10</a>
       
       |
-      <a href="_sources/write_command.txt"
+      <a href="_sources/write_command.rst.txt"
           rel="nofollow">Page source</a>
     </div>