Sat, 02 Jan 2010 18:19:35 +0000
Updated documentation.
17
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | <?xml version="1.0" encoding="utf-8"?> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | <!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | <html><head> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | <title>eric5.DebugClients.Python.FlexCompleter</title> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | <style> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | b'body {\n background:white;\n margin: 0em 1em 10em 1em;\n color: black;\n}\n\nh1 { color: white; background: #4FA4FF; }\nh2 { color: white; background: #4FA4FF; }\nh3 { color: white; background: #00557F; }\nh4 { color: white; background: #00557F; }\n \na { color: #AA5500; }\n' |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | </style> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | </head> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | <body><a NAME="top" ID="top"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | <h1>eric5.DebugClients.Python.FlexCompleter</h1> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | Word completion for the eric5 shell |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | <h4>NOTE for eric5 variant</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | This version is a re-implementation of FlexCompleter |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | as found in the PyQwt package. It is modified to work with the eric5 debug |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | clients. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | <h4>NOTE for the PyQwt variant</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | This version is a re-implementation of FlexCompleter |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | with readline support for PyQt&sip-3.6 and earlier. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | Full readline support is present in PyQt&sip-snapshot-20030531 and later. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | <h4>NOTE for FlexCompleter</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | This version is a re-implementation of rlcompleter with |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | selectable namespace. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | The problem with rlcompleter is that it's hardwired to work with |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | __main__.__dict__, and in some cases one may have 'sandboxed' namespaces. So |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | this class is a ripoff of rlcompleter, with the namespace to work in as an |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | optional parameter. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | This class can be used just like rlcompleter, but the Completer class now has |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | a constructor with the optional 'namespace' parameter. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | A patch has been submitted to Python@sourceforge for these changes to go in |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | the standard Python distribution. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | <h4>Original rlcompleter documentation</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | This requires the latest extension to the readline module (the |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | completes keywords, built-ins and globals in __main__; when completing |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | NAME.NAME..., it evaluates (!) the expression up to the last dot and |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | completes its attributes. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | It's very cool to do "import string" type "string.", hit the |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | completion key (twice), and see the list of names defined by the |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59 | string module! |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | Tip: to use the tab key as the completion key, call |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | 'readline.parse_and_bind("tab: complete")' |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | <b>Notes</b>: |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | <ul> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67 | <li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68 | Exceptions raised by the completer function are *ignored* (and |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | generally cause the completion to fail). This is a feature -- since |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | readline sets the tty device in raw (or cbreak) mode, printing a |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | traceback wouldn't work well without some complicated hoopla to save, |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | reset and restore the tty state. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | </li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | <li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | The evaluation of the NAME.NAME... form may cause arbitrary |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | application defined code to be executed if an object with a |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | __getattr__ hook is found. Since it is the responsibility of the |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | application (or the user) to enable this feature, I consider this an |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | acceptable risk. More complicated expressions (e.g. function calls or |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | indexing operations) are *not* evaluated. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | </li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | <li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83 | GNU readline is also used by the built-in functions input() and |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84 | raw_input(), and thus these also benefit/suffer from the completer |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85 | features. Clearly an interactive application can benefit by |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | specifying its own completer function and using raw_input() for all |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | its input. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | </li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | <li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
90 | When the original stdin is not a tty device, GNU readline is never |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | used, and this module (and the readline module) are silently inactive. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | </li> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | </ul> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | </p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | <h3>Global Attributes</h3> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | <table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | <tr><td>__all__</td></tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | </table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | <h3>Classes</h3> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | <table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | <tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | <td><a href="#Completer">Completer</a></td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | <td>Class implementing the command line completer object.</td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | </tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | </table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | <h3>Functions</h3> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | <table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | <tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | <td><a href="#get_class_members">get_class_members</a></td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | <td>Module function to retrieve the class members.</td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | </tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | </table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | <hr /><hr /> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | <a NAME="Completer" ID="Completer"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | <h2>Completer</h2> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | Class implementing the command line completer object. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
118 | </p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | <h3>Derived from</h3> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | object |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | <h3>Class Attributes</h3> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | <table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
123 | <tr><td>None</td></tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
124 | </table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
125 | <h3>Methods</h3> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | <table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | <tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | <td><a href="#Completer.__init__">Completer</a></td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | <td>Create a new completer for the command line.</td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | </tr><tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | <td><a href="#Completer.attr_matches">attr_matches</a></td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | <td>Compute matches when text contains a dot.</td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | </tr><tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | <td><a href="#Completer.complete">complete</a></td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | <td>Return the next possible completion for 'text'.</td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | </tr><tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | <td><a href="#Completer.global_matches">global_matches</a></td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | <td>Compute matches when text is a simple name.</td> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | </tr> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | </table> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | <a NAME="Completer.__init__" ID="Completer.__init__"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | <h4>Completer (Constructor)</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | <b>Completer</b>(<i>namespace = None</i>) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | Create a new completer for the command line. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | Completer([namespace]) -> completer instance. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | If unspecified, the default namespace where completions are performed |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
150 | is __main__ (technically, __main__.__dict__). Namespaces should be |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | given as dictionaries. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
153 | Completer instances should be used as the completion mechanism of |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | readline via the set_completer() call: |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | readline.set_completer(Completer(my_namespace).complete) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | </p><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | <dt><i>namespace</i></dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | The namespace for the completer. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
161 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | </dl><a NAME="Completer.attr_matches" ID="Completer.attr_matches"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | <h4>Completer.attr_matches</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | <b>attr_matches</b>(<i>text</i>) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
165 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
166 | Compute matches when text contains a dot. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
167 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | Assuming the text is of the form NAME.NAME....[NAME], and is |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
169 | evaluatable in self.namespace, it will be evaluated and its attributes |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
170 | (as revealed by dir()) are used as possible completions. (For class |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | instances, class members are are also considered.) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | <b>WARNING</b>: this can still invoke arbitrary C code, if an object |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | with a __getattr__ hook is evaluated. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | </p><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | <dt><i>text</i></dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
178 | The text to be completed. (string) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | </dl><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | <dt>Returns:</dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
182 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
183 | A list of all matches. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | </dl><a NAME="Completer.complete" ID="Completer.complete"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | <h4>Completer.complete</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
187 | <b>complete</b>(<i>text, state</i>) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | Return the next possible completion for 'text'. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | </p><p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | This is called successively with state == 0, 1, 2, ... until it |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | returns None. The completion should begin with 'text'. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
193 | </p><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | <dt><i>text</i></dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
196 | The text to be completed. (string) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | </dd><dt><i>state</i></dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | The state of the completion. (integer) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | </dl><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | <dt>Returns:</dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
204 | The possible completions as a list of strings. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | </dl><a NAME="Completer.global_matches" ID="Completer.global_matches"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | <h4>Completer.global_matches</h4> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | <b>global_matches</b>(<i>text</i>) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
209 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | Compute matches when text is a simple name. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
211 | </p><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
212 | <dt><i>text</i></dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
213 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | The text to be completed. (string) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | </dl><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | <dt>Returns:</dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | A list of all keywords, built-in functions and names currently |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
220 | defined in self.namespace that match. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | </dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | <div align="right"><a href="#top">Up</a></div> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | <hr /><hr /> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
225 | <a NAME="get_class_members" ID="get_class_members"></a> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | <h2>get_class_members</h2> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | <b>get_class_members</b>(<i>klass</i>) |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | <p> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | Module function to retrieve the class members. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | </p><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | <dt><i>klass</i></dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | The class object to be analysed. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | </dl><dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | <dt>Returns:</dt> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | <dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | A list of all names defined in the class. |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | </dd> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | </dl> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | <div align="right"><a href="#top">Up</a></div> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | <hr /> |
edde1fe80b3e
Updated documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | </body></html> |