• Home
  • Raw
  • Download

Lines Matching +refs:is +refs:completion +refs:line

1 :mod:`cmd` --- Support for line-oriented command interpreters
5 :synopsis: Build line-oriented command interpreters.
12 The :class:`Cmd` class provides a simple framework for writing line-oriented
19 A :class:`Cmd` instance or subclass instance is a line-oriented interpreter
20 framework. There is no good reason to instantiate :class:`Cmd` itself; rather,
24 The optional argument *completekey* is the :mod:`readline` name of a completion
25 key; it defaults to :kbd:`Tab`. If *completekey* is not :const:`None` and
26 :mod:`readline` is available, command completion is done automatically.
53 the line as argument.
55 The optional argument is a banner or intro string to be issued before the first
58 If the :mod:`readline` module is loaded, input will automatically inherit
64 An end-of-file on input is passed back as the string ``'EOF'``.
67 has a method :meth:`do_foo`. As a special case, a line beginning with the
68 character ``'?'`` is dispatched to the method :meth:`do_help`. As another
69 special case, a line beginning with the character ``'!'`` is dispatched to the
70 method :meth:`do_shell` (if such a method is defined).
73 The *stop* argument to :meth:`postcmd` is the return value from the command's
76 If completion is enabled, completing commands will be done automatically, and
77 completing of commands args is done by calling :meth:`complete_foo` with
78 arguments *text*, *line*, *begidx*, and *endidx*. *text* is the string prefix
79 we are attempting to match: all returned matches must begin with it. *line* is
80 the current input line with leading whitespace removed, *begidx* and *endidx*
82 provide different completion depending upon which position the argument is in.
86 :meth:`help_bar`, and if that is not present, prints the docstring of
88 available help topics (that is, all commands with corresponding
98 return value is a flag indicating whether interpretation of commands by the
99 interpreter should stop. If there is a :meth:`do_\*` method for the command
100 *str*, the return value of that method is returned, otherwise the return value
101 from the :meth:`default` method is returned.
106 Method called when an empty line is entered in response to the prompt. If this
107 method is not overridden, it repeats the last nonempty command entered.
110 .. method:: Cmd.default(line)
112 Method called on an input line when the command prefix is not recognized. If
113 this method is not overridden, it prints an error message and returns.
116 .. method:: Cmd.completedefault(text, line, begidx, endidx)
118 Method called to complete an input line when no command-specific
119 :meth:`complete_\*` method is available. By default, it returns an empty list.
122 .. method:: Cmd.precmd(line)
124 Hook method executed just before the command line *line* is interpreted, but
125 after the input prompt is generated and issued. This method is a stub in
126 :class:`Cmd`; it exists to be overridden by subclasses. The return value is
128 :meth:`precmd` implementation may re-write the command or simply return *line*
132 .. method:: Cmd.postcmd(stop, line)
134 Hook method executed just after a command dispatch is finished. This method is
135 a stub in :class:`Cmd`; it exists to be overridden by subclasses. *line* is the
136 command line which was executed, and *stop* is a flag which indicates whether
145 Hook method executed once when :meth:`cmdloop` is called. This method is a stub
151 Hook method executed once when :meth:`cmdloop` is about to return. This method
152 is a stub in :class:`Cmd`; it exists to be overridden by subclasses.
174 A list of queued input lines. The cmdqueue list is checked in
175 :meth:`cmdloop` when new input is needed; if it is nonempty, its elements
193 topics (that is, there are :meth:`help_\*` methods without corresponding
200 (that is, there are :meth:`do_\*` methods without corresponding :meth:`help_\*`
207 empty, no ruler line is drawn. It defaults to ``'='``.
216 support :program:`Emacs`\ -like line editing and command-history keystrokes.)