| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
Bugs fixed:
- Case-sensitive parsing was completely broken, this has been fixed
- <Ctrl>+D to quit wasn't working when case-sensitive parsing was enabled, this is fixed
Added a "case_sensitive.py" example in the examples directory for quickly testing case-sensitive command parsing behavior.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Bug fixes:
- case_insensitive is no longer a runtime-settable parameter, but it was still listed as such
- Fixed a recursive loop bug when abbreviated commands are enabled and it could get stuck in the editor forever
- Added additional command abbreviations to the "exclude from history" list
- Fixed argparse_example.py and pirate.py examples
Other changes:
- Organized all attributes used to configure the ParserManager into a single location
- Set the default value of "abbrev" to False (which controls whether or not abbreviated commands are allowed)
- With good tab-completion of command names, using abbreviated commands isn't a particularly useful feature
- And it can create problems
|
|
|
|
|
|
| |
It was pretty useless, it just printed a message and sat there and waited for the user to hit enter.
It didn't feel like it belonged in a top-level framework. If a particular application wants this functionality, it is a 2 line change to add it back.
|
|
|
|
|
|
|
| |
Also:
- Updated pythong_scripting.py example to show how to colorize text
- Updated contributing.md to show how to run code coverage in parallel using python-xdist and -nauto
- Updated contributing.md to talk more about looking at unit test results within the PR
|
|
|
|
| |
The self.settable object is now an OrderedDict instead of a custom StubbornDict.
|
|
|
|
|
|
|
|
| |
Load and relative load now require a file path
Edit will use a temporary file by default and delete it when done
Save will use a temporary file by default and inform the user what it is
Also changed the default value for autorun_on_edit to False so that it can safely be used as an actual file editor.
|
|
|
|
| |
Also removed default argument for _relative_load and load
|
|
|
|
|
|
| |
Cleaned up the examples directory by adding a scripts subdirectory.
This makes it a bit clearer which Python files are example cmd2 applications and which are example Python scripts for use with the pyscript command.
|
|
|
|
|
|
|
|
|
|
|
| |
Now by default all @options commands get passed a list of argument strings instead of a single argument string.
This is a much easier and more robust behavior to deal with. Additionally, command-line arguments are intelligently separated based on location of quotes to group things into a single argument.
WARNING: This change breaks backward compatibility for older applicaitons based on cmd2. To change the behavior to the way it used to be, add the following code to the __init__() method of our class derived from cmd2.Cmd:
cmd2.set_use_arg_list(False)
This change really does make it easier for developers new to using cmd2 however. It is to the point where I create all custom commands with @options, even if I use an empty list for the options because the argument parsing is just much better this way.
|
|
|
|
|
|
|
|
|
| |
Added information related to the new pyscript command.
The old way of running Python scripts via "py run()" should be considered deprecated. The new "pyscript" command
is superior in two significant ways:
1) It supports tab-completion of file system paths
2) It allows the user to pass command-line arguments to scripts
|
|
|
|
|
|
|
|
| |
This command is explicitly for running Python script files within an embedded Python interpreter.
The advantages over the py command with "run" are:
- Tab-completion of file system paths is supported
- Command-line arguments can be passed to the Python script
|
|
|
|
| |
Updated these to reflect that the list command has been removed
|
|
|
|
| |
command completion
|
|
|
|
|
|
| |
Than it is for Python 2 on Windows or Python 3 on Linux or Mac.
Go figure. You would think it would be the same for Python 3 across platforms.
|
| |
|
|
|
|
| |
Also added a unit test for this feature.
|
|
|
|
|
|
| |
The last two arguments (err and war) are now optional.
Only the 1st argument (out) is required.
err and war default to empty strings.
|
| |
|
|
|
|
| |
A few other miscellaneous minor tweaks for whitespace and such.
|
|
|
|
|
|
| |
Added the pirate8.py example from Catherine's PyCon2010 talk as pirate.py with some cleanups done.
Added an example of a complete_* method for command argument completion to the python_scripting.py example.
|
|
|
|
| |
be achieved via the py command and python scripts.
|
|
|
|
| |
inner loop of an application.
|
|
|
|
|
|
| |
Fixed a bug where the allow_cli_args attribute wasn't properly preventing OptParse from prasing the args looking for "-t" or "--test" for transcript testing.
Added an example of using Argparse with cmd2.
|
|
Changes include:
1) Added CONTRIBUTING.md with detailed instructions for how to contribute, which should be especially useful to those new to open source in general or GitHub in particular
2) Added CODE_OF_CONDUCT.md which sets ground rules for participants’ behavior and helps to facilitate a friendly, welcoming environment
3) Renamed the "example" directory to "examples" in the hope that one day soon there may be more than a single example ;-)
|