Documentation/Source/eric5.DebugClients.Python3.FlexCompleter.html

changeset 58
37f0444c3479
parent 21
b88a0e6268bd
child 409
0ea528e80202
--- a/Documentation/Source/eric5.DebugClients.Python3.FlexCompleter.html	Thu Jan 14 17:27:31 2010 +0000
+++ b/Documentation/Source/eric5.DebugClients.Python3.FlexCompleter.html	Thu Jan 14 18:35:52 2010 +0000
@@ -22,51 +22,51 @@
 <body><a NAME="top" ID="top"></a>
 <h1>eric5.DebugClients.Python3.FlexCompleter</h1>
 <p>
-&#87;&#111;&#114;&#100; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#102;&#111;&#114; &#116;&#104;&#101; &#101;&#114;&#105;&#99;&#53; &#115;&#104;&#101;&#108;&#108;
+Word completion for the eric5 shell
 </p><p>
-&#60;&#104;&#52;&#62;&#78;&#79;&#84;&#69; &#102;&#111;&#114; &#101;&#114;&#105;&#99;&#53; v&#97;&#114;&#105;&#97;&#110;&#116;&#60;/&#104;&#52;&#62;
+<h4>NOTE for eric5 variant</h4>
 </p><p>
-    &#84;&#104;&#105;&#115; v&#101;&#114;&#115;&#105;&#111;&#110; &#105;&#115; &#97; &#114;&#101;-&#105;&#109;&#112;&#108;&#101;&#109;&#101;&#110;&#116;&#97;&#116;&#105;&#111;&#110; &#111;&#102; &#114;&#108;&#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; 
-    &#97;&#115; &#102;&#111;&#117;&#110;&#100; &#105;&#110; &#116;&#104;&#101; &#80;y&#116;&#104;&#111;&#110;&#51; &#108;&#105;&#98;&#114;&#97;&#114;y. &#73;&#116; &#105;&#115; &#109;&#111;&#100;&#105;&#102;&#105;&#101;&#100; &#116;&#111; w&#111;&#114;&#107; w&#105;&#116;&#104; &#116;&#104;&#101; &#101;&#114;&#105;&#99;&#53; 
-    &#100;&#101;&#98;&#117;&#103; &#99;&#108;&#105;&#101;&#110;&#116;&#115;.
+    This version is a re-implementation of rlcompleter 
+    as found in the Python3 library. It is modified to work with the eric5 
+    debug clients.
 </p><p>
-&#60;&#104;&#52;&#62;&#79;&#114;&#105;&#103;&#105;&#110;&#97;&#108; &#114;&#108;&#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#100;&#111;&#99;&#117;&#109;&#101;&#110;&#116;&#97;&#116;&#105;&#111;&#110;&#60;/&#104;&#52;&#62;
+<h4>Original rlcompleter documentation</h4>
 </p><p>
-    &#84;&#104;&#105;&#115; &#114;&#101;&#113;&#117;&#105;&#114;&#101;&#115; &#116;&#104;&#101; &#108;&#97;&#116;&#101;&#115;&#116; &#101;x&#116;&#101;&#110;&#115;&#105;&#111;&#110; &#116;&#111; &#116;&#104;&#101; &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101; &#109;&#111;&#100;&#117;&#108;&#101;. &#84;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114;
-    &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#115; &#107;&#101;yw&#111;&#114;&#100;&#115;, &#98;&#117;&#105;&#108;&#116;-&#105;&#110;&#115; &#97;&#110;&#100; &#103;&#108;&#111;&#98;&#97;&#108;&#115; &#105;&#110; &#97; &#115;&#101;&#108;&#101;&#99;&#116;&#97;&#98;&#108;&#101; &#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101; (w&#104;&#105;&#99;&#104;
-    &#100;&#101;&#102;&#97;&#117;&#108;&#116;&#115; &#116;&#111; &#95;&#95;&#109;&#97;&#105;&#110;&#95;&#95;)&#59; w&#104;&#101;&#110; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#110;&#103; &#78;&#65;&#77;&#69;.&#78;&#65;&#77;&#69;..., &#105;&#116; &#101;v&#97;&#108;&#117;&#97;&#116;&#101;&#115; (!) &#116;&#104;&#101;
-    &#101;x&#112;&#114;&#101;&#115;&#115;&#105;&#111;&#110; &#117;&#112; &#116;&#111; &#116;&#104;&#101; &#108;&#97;&#115;&#116; &#100;&#111;&#116; &#97;&#110;&#100; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#115; &#105;&#116;&#115; &#97;&#116;&#116;&#114;&#105;&#98;&#117;&#116;&#101;&#115;.
+    This requires the latest extension to the readline module. The completer
+    completes keywords, built-ins and globals in a selectable namespace (which
+    defaults to __main__); when completing NAME.NAME..., it evaluates (!) the
+    expression up to the last dot and completes its attributes.
 </p><p>
-    &#73;&#116;'&#115; v&#101;&#114;y &#99;&#111;&#111;&#108; &#116;&#111; &#100;&#111; "&#105;&#109;&#112;&#111;&#114;&#116; &#115;y&#115;" &#116;y&#112;&#101; "&#115;y&#115;.", &#104;&#105;&#116; &#116;&#104;&#101;
-    &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#107;&#101;y (&#116;w&#105;&#99;&#101;), &#97;&#110;&#100; &#115;&#101;&#101; &#116;&#104;&#101; &#108;&#105;&#115;&#116; &#111;&#102; &#110;&#97;&#109;&#101;&#115; &#100;&#101;&#102;&#105;&#110;&#101;&#100; &#98;y &#116;&#104;&#101;
-    &#115;y&#115; &#109;&#111;&#100;&#117;&#108;&#101;!
+    It's very cool to do "import sys" type "sys.", hit the
+    completion key (twice), and see the list of names defined by the
+    sys module!
 </p><p>
-    &#84;&#105;&#112;&#58; &#116;&#111; &#117;&#115;&#101; &#116;&#104;&#101; &#116;&#97;&#98; &#107;&#101;y &#97;&#115; &#116;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#107;&#101;y, &#99;&#97;&#108;&#108;
+    Tip: to use the tab key as the completion key, call
 </p><p>
-        &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101;.&#112;&#97;&#114;&#115;&#101;&#95;&#97;&#110;&#100;&#95;&#98;&#105;&#110;&#100;("&#116;&#97;&#98;&#58; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;")
+        readline.parse_and_bind("tab: complete")
 </p><p>
-    &#60;&#98;&#62;&#78;&#111;&#116;&#101;&#115;&#60;/&#98;&#62;&#58;
-    &#60;&#117;&#108;&#62;
-    &#60;&#108;&#105;&#62;
-    &#69;x&#99;&#101;&#112;&#116;&#105;&#111;&#110;&#115; &#114;&#97;&#105;&#115;&#101;&#100; &#98;y &#116;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110; &#97;&#114;&#101; *&#105;&#103;&#110;&#111;&#114;&#101;&#100;* (&#97;&#110;&#100;
-    &#103;&#101;&#110;&#101;&#114;&#97;&#108;&#108;y &#99;&#97;&#117;&#115;&#101; &#116;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#116;&#111; &#102;&#97;&#105;&#108;).  &#84;&#104;&#105;&#115; &#105;&#115; &#97; &#102;&#101;&#97;&#116;&#117;&#114;&#101; -- &#115;&#105;&#110;&#99;&#101;
-    &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101; &#115;&#101;&#116;&#115; &#116;&#104;&#101; &#116;&#116;y &#100;&#101;v&#105;&#99;&#101; &#105;&#110; &#114;&#97;w (&#111;&#114; &#99;&#98;&#114;&#101;&#97;&#107;) &#109;&#111;&#100;&#101;, &#112;&#114;&#105;&#110;&#116;&#105;&#110;&#103; &#97;
-    &#116;&#114;&#97;&#99;&#101;&#98;&#97;&#99;&#107; w&#111;&#117;&#108;&#100;&#110;'&#116; w&#111;&#114;&#107; w&#101;&#108;&#108; w&#105;&#116;&#104;&#111;&#117;&#116; &#115;&#111;&#109;&#101; &#99;&#111;&#109;&#112;&#108;&#105;&#99;&#97;&#116;&#101;&#100; &#104;&#111;&#111;&#112;&#108;&#97; &#116;&#111; &#115;&#97;v&#101;,
-    &#114;&#101;&#115;&#101;&#116; &#97;&#110;&#100; &#114;&#101;&#115;&#116;&#111;&#114;&#101; &#116;&#104;&#101; &#116;&#116;y &#115;&#116;&#97;&#116;&#101;.
-    &#60;/&#108;&#105;&#62;
-    &#60;&#108;&#105;&#62;
-    &#84;&#104;&#101; &#101;v&#97;&#108;&#117;&#97;&#116;&#105;&#111;&#110; &#111;&#102; &#116;&#104;&#101; &#78;&#65;&#77;&#69;.&#78;&#65;&#77;&#69;... &#102;&#111;&#114;&#109; &#109;&#97;y &#99;&#97;&#117;&#115;&#101; &#97;&#114;&#98;&#105;&#116;&#114;&#97;&#114;y
-    &#97;&#112;&#112;&#108;&#105;&#99;&#97;&#116;&#105;&#111;&#110; &#100;&#101;&#102;&#105;&#110;&#101;&#100; &#99;&#111;&#100;&#101; &#116;&#111; &#98;&#101; &#101;x&#101;&#99;&#117;&#116;&#101;&#100; &#105;&#102; &#97;&#110; &#111;&#98;&#106;&#101;&#99;&#116; w&#105;&#116;&#104; &#97;
-    &#95;&#95;&#103;&#101;&#116;&#97;&#116;&#116;&#114;&#95;&#95; &#104;&#111;&#111;&#107; &#105;&#115; &#102;&#111;&#117;&#110;&#100;.  &#83;&#105;&#110;&#99;&#101; &#105;&#116; &#105;&#115; &#116;&#104;&#101; &#114;&#101;&#115;&#112;&#111;&#110;&#115;&#105;&#98;&#105;&#108;&#105;&#116;y &#111;&#102; &#116;&#104;&#101;
-    &#97;&#112;&#112;&#108;&#105;&#99;&#97;&#116;&#105;&#111;&#110; (&#111;&#114; &#116;&#104;&#101; &#117;&#115;&#101;&#114;) &#116;&#111; &#101;&#110;&#97;&#98;&#108;&#101; &#116;&#104;&#105;&#115; &#102;&#101;&#97;&#116;&#117;&#114;&#101;, &#73; &#99;&#111;&#110;&#115;&#105;&#100;&#101;&#114; &#116;&#104;&#105;&#115; &#97;&#110;
-    &#97;&#99;&#99;&#101;&#112;&#116;&#97;&#98;&#108;&#101; &#114;&#105;&#115;&#107;.  &#77;&#111;&#114;&#101; &#99;&#111;&#109;&#112;&#108;&#105;&#99;&#97;&#116;&#101;&#100; &#101;x&#112;&#114;&#101;&#115;&#115;&#105;&#111;&#110;&#115; (&#101;.&#103;. &#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110; &#99;&#97;&#108;&#108;&#115; &#111;&#114;
-    &#105;&#110;&#100;&#101;x&#105;&#110;&#103; &#111;&#112;&#101;&#114;&#97;&#116;&#105;&#111;&#110;&#115;) &#97;&#114;&#101; *&#110;&#111;&#116;* &#101;v&#97;&#108;&#117;&#97;&#116;&#101;&#100;.
-    &#60;/&#108;&#105;&#62;
-    &#60;&#108;&#105;&#62;
-    &#87;&#104;&#101;&#110; &#116;&#104;&#101; &#111;&#114;&#105;&#103;&#105;&#110;&#97;&#108; &#115;&#116;&#100;&#105;&#110; &#105;&#115; &#110;&#111;&#116; &#97; &#116;&#116;y &#100;&#101;v&#105;&#99;&#101;, &#71;&#78;&#85; &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101; &#105;&#115; &#110;&#101;v&#101;&#114;
-    &#117;&#115;&#101;&#100;, &#97;&#110;&#100; &#116;&#104;&#105;&#115; &#109;&#111;&#100;&#117;&#108;&#101; (&#97;&#110;&#100; &#116;&#104;&#101; &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101; &#109;&#111;&#100;&#117;&#108;&#101;) &#97;&#114;&#101; &#115;&#105;&#108;&#101;&#110;&#116;&#108;y &#105;&#110;&#97;&#99;&#116;&#105;v&#101;.
-    &#60;/&#108;&#105;&#62;
-    &#60;/&#117;&#108;&#62;
+    <b>Notes</b>:
+    <ul>
+    <li>
+    Exceptions raised by the completer function are *ignored* (and
+    generally cause the completion to fail).  This is a feature -- since
+    readline sets the tty device in raw (or cbreak) mode, printing a
+    traceback wouldn't work well without some complicated hoopla to save,
+    reset and restore the tty state.
+    </li>
+    <li>
+    The evaluation of the NAME.NAME... form may cause arbitrary
+    application defined code to be executed if an object with a
+    __getattr__ hook is found.  Since it is the responsibility of the
+    application (or the user) to enable this feature, I consider this an
+    acceptable risk.  More complicated expressions (e.g. function calls or
+    indexing operations) are *not* evaluated.
+    </li>
+    <li>
+    When the original stdin is not a tty device, GNU readline is never
+    used, and this module (and the readline module) are silently inactive.
+    </li>
+    </ul>
 </p>
 <h3>Global Attributes</h3>
 <table>
@@ -76,21 +76,21 @@
 <table>
 <tr>
 <td><a href="#Completer">Completer</a></td>
-<td>&#67;&#108;&#97;&#115;&#115; &#105;&#109;&#112;&#108;&#101;&#109;&#101;&#110;&#116;&#105;&#110;&#103; &#116;&#104;&#101; &#99;&#111;&#109;&#109;&#97;&#110;&#100; &#108;&#105;&#110;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#111;&#98;&#106;&#101;&#99;&#116;.</td>
+<td>Class implementing the command line completer object.</td>
 </tr>
 </table>
 <h3>Functions</h3>
 <table>
 <tr>
 <td><a href="#get_class_members">get_class_members</a></td>
-<td>&#77;&#111;&#100;&#117;&#108;&#101; &#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110; &#116;&#111; &#114;&#101;&#116;&#114;&#105;&#101;v&#101; &#116;&#104;&#101; &#99;&#108;&#97;&#115;&#115; &#109;&#101;&#109;&#98;&#101;&#114;&#115;.</td>
+<td>Module function to retrieve the class members.</td>
 </tr>
 </table>
 <hr /><hr />
 <a NAME="Completer" ID="Completer"></a>
 <h2>Completer</h2>
 <p>
-    &#67;&#108;&#97;&#115;&#115; &#105;&#109;&#112;&#108;&#101;&#109;&#101;&#110;&#116;&#105;&#110;&#103; &#116;&#104;&#101; &#99;&#111;&#109;&#109;&#97;&#110;&#100; &#108;&#105;&#110;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#111;&#98;&#106;&#101;&#99;&#116;.
+    Class implementing the command line completer object.
 </p>
 <h3>Derived from</h3>
 object
@@ -102,119 +102,119 @@
 <table>
 <tr>
 <td><a href="#Completer.__init__">Completer</a></td>
-<td>&#67;&#114;&#101;&#97;&#116;&#101; &#97; &#110;&#101;w &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#102;&#111;&#114; &#116;&#104;&#101; &#99;&#111;&#109;&#109;&#97;&#110;&#100; &#108;&#105;&#110;&#101;.</td>
+<td>Create a new completer for the command line.</td>
 </tr><tr>
 <td><a href="#Completer._callable_postfix">_callable_postfix</a></td>
-<td>&#80;&#114;&#111;&#116;&#101;&#99;&#116;&#101;&#100; &#109;&#101;&#116;&#104;&#111;&#100; &#116;&#111; &#99;&#104;&#101;&#99;&#107; &#102;&#111;&#114; &#97; &#99;&#97;&#108;&#108;&#97;&#98;&#108;&#101;.</td>
+<td>Protected method to check for a callable.</td>
 </tr><tr>
 <td><a href="#Completer.attr_matches">attr_matches</a></td>
-<td>&#67;&#111;&#109;&#112;&#117;&#116;&#101; &#109;&#97;&#116;&#99;&#104;&#101;&#115; w&#104;&#101;&#110; &#116;&#101;x&#116; &#99;&#111;&#110;&#116;&#97;&#105;&#110;&#115; &#97; &#100;&#111;&#116;.</td>
+<td>Compute matches when text contains a dot.</td>
 </tr><tr>
 <td><a href="#Completer.complete">complete</a></td>
-<td>&#82;&#101;&#116;&#117;&#114;&#110; &#116;&#104;&#101; &#110;&#101;x&#116; &#112;&#111;&#115;&#115;&#105;&#98;&#108;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#102;&#111;&#114; '&#116;&#101;x&#116;'.</td>
+<td>Return the next possible completion for 'text'.</td>
 </tr><tr>
 <td><a href="#Completer.global_matches">global_matches</a></td>
-<td>&#67;&#111;&#109;&#112;&#117;&#116;&#101; &#109;&#97;&#116;&#99;&#104;&#101;&#115; w&#104;&#101;&#110; &#116;&#101;x&#116; &#105;&#115; &#97; &#115;&#105;&#109;&#112;&#108;&#101; &#110;&#97;&#109;&#101;.</td>
+<td>Compute matches when text is a simple name.</td>
 </tr>
 </table>
 <a NAME="Completer.__init__" ID="Completer.__init__"></a>
 <h4>Completer (Constructor)</h4>
 <b>Completer</b>(<i>namespace = None</i>)
 <p>
-        &#67;&#114;&#101;&#97;&#116;&#101; &#97; &#110;&#101;w &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#102;&#111;&#114; &#116;&#104;&#101; &#99;&#111;&#109;&#109;&#97;&#110;&#100; &#108;&#105;&#110;&#101;.
+        Create a new completer for the command line.
 </p><p>
-        &#67;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114;(&#91;&#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101;&#93;) -&#62; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#105;&#110;&#115;&#116;&#97;&#110;&#99;&#101;.
+        Completer([namespace]) -> completer instance.
 </p><p>
-        &#73;&#102; &#117;&#110;&#115;&#112;&#101;&#99;&#105;&#102;&#105;&#101;&#100;, &#116;&#104;&#101; &#100;&#101;&#102;&#97;&#117;&#108;&#116; &#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101; w&#104;&#101;&#114;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110;&#115; &#97;&#114;&#101; &#112;&#101;&#114;&#102;&#111;&#114;&#109;&#101;&#100;
-        &#105;&#115; &#95;&#95;&#109;&#97;&#105;&#110;&#95;&#95; (&#116;&#101;&#99;&#104;&#110;&#105;&#99;&#97;&#108;&#108;y, &#95;&#95;&#109;&#97;&#105;&#110;&#95;&#95;.&#95;&#95;&#100;&#105;&#99;&#116;&#95;&#95;). &#78;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101;&#115; &#115;&#104;&#111;&#117;&#108;&#100; &#98;&#101;
-        &#103;&#105;v&#101;&#110; &#97;&#115; &#100;&#105;&#99;&#116;&#105;&#111;&#110;&#97;&#114;&#105;&#101;&#115;.
+        If unspecified, the default namespace where completions are performed
+        is __main__ (technically, __main__.__dict__). Namespaces should be
+        given as dictionaries.
 </p><p>
-        &#67;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114; &#105;&#110;&#115;&#116;&#97;&#110;&#99;&#101;&#115; &#115;&#104;&#111;&#117;&#108;&#100; &#98;&#101; &#117;&#115;&#101;&#100; &#97;&#115; &#116;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#109;&#101;&#99;&#104;&#97;&#110;&#105;&#115;&#109; &#111;&#102;
-        &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101; v&#105;&#97; &#116;&#104;&#101; &#115;&#101;&#116;&#95;&#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114;() &#99;&#97;&#108;&#108;&#58;
+        Completer instances should be used as the completion mechanism of
+        readline via the set_completer() call:
 </p><p>
-        &#114;&#101;&#97;&#100;&#108;&#105;&#110;&#101;.&#115;&#101;&#116;&#95;&#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114;(&#67;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114;(&#109;y&#95;&#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101;).&#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;)
+        readline.set_completer(Completer(my_namespace).complete)
 </p><dl>
 <dt><i>namespace</i></dt>
 <dd>
-&#84;&#104;&#101; &#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101; &#102;&#111;&#114; &#116;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#114;.
+The namespace for the completer.
 </dd>
 </dl><a NAME="Completer._callable_postfix" ID="Completer._callable_postfix"></a>
 <h4>Completer._callable_postfix</h4>
 <b>_callable_postfix</b>(<i>val, word</i>)
 <p>
-        &#80;&#114;&#111;&#116;&#101;&#99;&#116;&#101;&#100; &#109;&#101;&#116;&#104;&#111;&#100; &#116;&#111; &#99;&#104;&#101;&#99;&#107; &#102;&#111;&#114; &#97; &#99;&#97;&#108;&#108;&#97;&#98;&#108;&#101;.
+        Protected method to check for a callable.
 </p><dl>
 <dt><i>val</i></dt>
 <dd>
-v&#97;&#108;&#117;&#101; &#116;&#111; &#99;&#104;&#101;&#99;&#107; (&#111;&#98;&#106;&#101;&#99;&#116;)
+value to check (object)
 </dd><dt><i>word</i></dt>
 <dd>
-w&#111;&#114;&#100; &#116;&#111; &#97;&#109;&#109;&#101;&#110;&#100; (&#115;&#116;&#114;&#105;&#110;&#103;)
+word to ammend (string)
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-&#97;&#109;&#109;&#101;&#110;&#100;&#101;&#100; w&#111;&#114;&#100; (&#115;&#116;&#114;&#105;&#110;&#103;)
+ammended word (string)
 </dd>
 </dl><a NAME="Completer.attr_matches" ID="Completer.attr_matches"></a>
 <h4>Completer.attr_matches</h4>
 <b>attr_matches</b>(<i>text</i>)
 <p>
-        &#67;&#111;&#109;&#112;&#117;&#116;&#101; &#109;&#97;&#116;&#99;&#104;&#101;&#115; w&#104;&#101;&#110; &#116;&#101;x&#116; &#99;&#111;&#110;&#116;&#97;&#105;&#110;&#115; &#97; &#100;&#111;&#116;.
+        Compute matches when text contains a dot.
 </p><p>
-        &#65;&#115;&#115;&#117;&#109;&#105;&#110;&#103; &#116;&#104;&#101; &#116;&#101;x&#116; &#105;&#115; &#111;&#102; &#116;&#104;&#101; &#102;&#111;&#114;&#109; &#78;&#65;&#77;&#69;.&#78;&#65;&#77;&#69;....&#91;&#78;&#65;&#77;&#69;&#93;, &#97;&#110;&#100; &#105;&#115;
-        &#101;v&#97;&#108;&#117;&#97;&#116;&#97;&#98;&#108;&#101; &#105;&#110; &#115;&#101;&#108;&#102;.&#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101;, &#105;&#116; w&#105;&#108;&#108; &#98;&#101; &#101;v&#97;&#108;&#117;&#97;&#116;&#101;&#100; &#97;&#110;&#100; &#105;&#116;&#115; &#97;&#116;&#116;&#114;&#105;&#98;&#117;&#116;&#101;&#115;
-        (&#97;&#115; &#114;&#101;v&#101;&#97;&#108;&#101;&#100; &#98;y &#100;&#105;&#114;()) &#97;&#114;&#101; &#117;&#115;&#101;&#100; &#97;&#115; &#112;&#111;&#115;&#115;&#105;&#98;&#108;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110;&#115;.  (&#70;&#111;&#114; &#99;&#108;&#97;&#115;&#115;
-        &#105;&#110;&#115;&#116;&#97;&#110;&#99;&#101;&#115;, &#99;&#108;&#97;&#115;&#115; &#109;&#101;&#109;&#98;&#101;&#114;&#115; &#97;&#114;&#101; &#97;&#114;&#101; &#97;&#108;&#115;&#111; &#99;&#111;&#110;&#115;&#105;&#100;&#101;&#114;&#101;&#100;.)
+        Assuming the text is of the form NAME.NAME....[NAME], and is
+        evaluatable in self.namespace, it will be evaluated and its attributes
+        (as revealed by dir()) are used as possible completions.  (For class
+        instances, class members are are also considered.)
 </p><p>
-        &#60;&#98;&#62;&#87;&#65;&#82;&#78;&#73;&#78;&#71;&#60;/&#98;&#62;&#58; &#116;&#104;&#105;&#115; &#99;&#97;&#110; &#115;&#116;&#105;&#108;&#108; &#105;&#110;v&#111;&#107;&#101; &#97;&#114;&#98;&#105;&#116;&#114;&#97;&#114;y &#67; &#99;&#111;&#100;&#101;, &#105;&#102; &#97;&#110; &#111;&#98;&#106;&#101;&#99;&#116;
-        w&#105;&#116;&#104; &#97; &#95;&#95;&#103;&#101;&#116;&#97;&#116;&#116;&#114;&#95;&#95; &#104;&#111;&#111;&#107; &#105;&#115; &#101;v&#97;&#108;&#117;&#97;&#116;&#101;&#100;.
+        <b>WARNING</b>: this can still invoke arbitrary C code, if an object
+        with a __getattr__ hook is evaluated.
 </p><dl>
 <dt><i>text</i></dt>
 <dd>
-&#84;&#104;&#101; &#116;&#101;x&#116; &#116;&#111; &#98;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#100;. (&#115;&#116;&#114;&#105;&#110;&#103;)
+The text to be completed. (string)
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-&#65; &#108;&#105;&#115;&#116; &#111;&#102; &#97;&#108;&#108; &#109;&#97;&#116;&#99;&#104;&#101;&#115;.
+A list of all matches.
 </dd>
 </dl><a NAME="Completer.complete" ID="Completer.complete"></a>
 <h4>Completer.complete</h4>
 <b>complete</b>(<i>text, state</i>)
 <p>
-        &#82;&#101;&#116;&#117;&#114;&#110; &#116;&#104;&#101; &#110;&#101;x&#116; &#112;&#111;&#115;&#115;&#105;&#98;&#108;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#102;&#111;&#114; '&#116;&#101;x&#116;'.
+        Return the next possible completion for 'text'.
 </p><p>
-        &#84;&#104;&#105;&#115; &#105;&#115; &#99;&#97;&#108;&#108;&#101;&#100; &#115;&#117;&#99;&#99;&#101;&#115;&#115;&#105;v&#101;&#108;y w&#105;&#116;&#104; &#115;&#116;&#97;&#116;&#101; &#61;&#61; &#48;, &#49;, &#50;, ... &#117;&#110;&#116;&#105;&#108; &#105;&#116;
-        &#114;&#101;&#116;&#117;&#114;&#110;&#115; &#78;&#111;&#110;&#101;.  &#84;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110; &#115;&#104;&#111;&#117;&#108;&#100; &#98;&#101;&#103;&#105;&#110; w&#105;&#116;&#104; '&#116;&#101;x&#116;'.
+        This is called successively with state == 0, 1, 2, ... until it
+        returns None.  The completion should begin with 'text'.
 </p><dl>
 <dt><i>text</i></dt>
 <dd>
-&#84;&#104;&#101; &#116;&#101;x&#116; &#116;&#111; &#98;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#100;. (&#115;&#116;&#114;&#105;&#110;&#103;)
+The text to be completed. (string)
 </dd><dt><i>state</i></dt>
 <dd>
-&#84;&#104;&#101; &#115;&#116;&#97;&#116;&#101; &#111;&#102; &#116;&#104;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110;. (&#105;&#110;&#116;&#101;&#103;&#101;&#114;)
+The state of the completion. (integer)
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-&#84;&#104;&#101; &#112;&#111;&#115;&#115;&#105;&#98;&#108;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#105;&#111;&#110;&#115; &#97;&#115; &#97; &#108;&#105;&#115;&#116; &#111;&#102; &#115;&#116;&#114;&#105;&#110;&#103;&#115;.
+The possible completions as a list of strings.
 </dd>
 </dl><a NAME="Completer.global_matches" ID="Completer.global_matches"></a>
 <h4>Completer.global_matches</h4>
 <b>global_matches</b>(<i>text</i>)
 <p>
-        &#67;&#111;&#109;&#112;&#117;&#116;&#101; &#109;&#97;&#116;&#99;&#104;&#101;&#115; w&#104;&#101;&#110; &#116;&#101;x&#116; &#105;&#115; &#97; &#115;&#105;&#109;&#112;&#108;&#101; &#110;&#97;&#109;&#101;.
+        Compute matches when text is a simple name.
 </p><dl>
 <dt><i>text</i></dt>
 <dd>
-&#84;&#104;&#101; &#116;&#101;x&#116; &#116;&#111; &#98;&#101; &#99;&#111;&#109;&#112;&#108;&#101;&#116;&#101;&#100;. (&#115;&#116;&#114;&#105;&#110;&#103;)
+The text to be completed. (string)
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-&#65; &#108;&#105;&#115;&#116; &#111;&#102; &#97;&#108;&#108; &#107;&#101;yw&#111;&#114;&#100;&#115;, &#98;&#117;&#105;&#108;&#116;-&#105;&#110; &#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110;&#115; &#97;&#110;&#100; &#110;&#97;&#109;&#101;&#115; &#99;&#117;&#114;&#114;&#101;&#110;&#116;&#108;y
-        &#100;&#101;&#102;&#105;&#110;&#101;&#100; &#105;&#110; &#115;&#101;&#108;&#102;.&#110;&#97;&#109;&#101;&#115;&#112;&#97;&#99;&#101; &#116;&#104;&#97;&#116; &#109;&#97;&#116;&#99;&#104;.
+A list of all keywords, built-in functions and names currently
+        defined in self.namespace that match.
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
@@ -223,16 +223,16 @@
 <h2>get_class_members</h2>
 <b>get_class_members</b>(<i>klass</i>)
 <p>
-    &#77;&#111;&#100;&#117;&#108;&#101; &#102;&#117;&#110;&#99;&#116;&#105;&#111;&#110; &#116;&#111; &#114;&#101;&#116;&#114;&#105;&#101;v&#101; &#116;&#104;&#101; &#99;&#108;&#97;&#115;&#115; &#109;&#101;&#109;&#98;&#101;&#114;&#115;.
+    Module function to retrieve the class members.
 </p><dl>
 <dt><i>klass</i></dt>
 <dd>
-&#84;&#104;&#101; &#99;&#108;&#97;&#115;&#115; &#111;&#98;&#106;&#101;&#99;&#116; &#116;&#111; &#98;&#101; &#97;&#110;&#97;&#108;y&#115;&#101;&#100;.
+The class object to be analysed.
 </dd>
 </dl><dl>
 <dt>Returns:</dt>
 <dd>
-&#65; &#108;&#105;&#115;&#116; &#111;&#102; &#97;&#108;&#108; &#110;&#97;&#109;&#101;&#115; &#100;&#101;&#102;&#105;&#110;&#101;&#100; &#105;&#110; &#116;&#104;&#101; &#99;&#108;&#97;&#115;&#115;.
+A list of all names defined in the class.
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>

eric ide

mercurial