| Commit message (Collapse) | Author | Age | Files | Lines |
| | |
|
| |
|
|
| |
this is no longer needed
|
| | |
|
| |
|
|
|
|
| |
class of argparse.ArgumentParser
when developers read the code in cmd2.py.
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
argparse_custom.py.
Lazy loading AutoCompleter in cmd2 instance methods to allow argparse_completer.py to import
cmd2.Cmd class. This Architecture makes more sense because AutoCompleter depends on cmd2.Cmd.
|
| | |
|
| | |
|
| |
|
|
| |
year
|
| |
|
|
|
|
|
|
|
|
|
|
| |
cmd2.Cmd.cmdloop() now returns self.exit_code which should be an integer
Also:
- Refactored examples to call sys.exit(app.cmdloop()) in their __main__
- Running transcript tests now sets the exit_code accordingly based on success/failure
- Updated CHANGELOG
- Updated README
- Updated Sphinx docs
- Added unit test for case when transcript test fails
|
| | |
|
| | |
|
| |
|
|
|
| |
Deleted bash tab completion support.
AutoCompleter no longer assumes CompletionItem results are sorted.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit contains a very large number of trivial changes in order to fix flake8 errors and warnings. Predominantly these are whitespace changes.
Additionally, the build for Python 3.7 on TravisCI has been tweaked to fail if there are any flake8 errors using the following commandline:
* flake8 . --count --ignore=E252 --max-complexity=31 --max-line-length=127 --show-source --statistics
NOTE: In the future the max cyclomatic complexity should be lowered, but some improvements need to be made first.
One flake8 error is being ignored entirely:
* E252 missing whitespace around parameter equals
* ignored because it doesn't correctly deal with default argument values after a type hint
A few flake8 errors are being selectively ignored in certain files:
* C901 fuction is too complex
* ignored in argparse_completer.py because the complex code is an override of argparse complexity
* E302 expected 2 blank lines after ...
* ignored in all unit test files for convenience
* F401 module imported but unused
* ignored in cmd2/__init__.py because imports are for convenience of cmd2 developers and backwards compatibility
* F821 undefined name
* ignored in cmd2 script files which are intended to run only within cmd2 applications via pyscript where "app" and "cmd" are defined
|
| | |
|
| |\ |
|
| | |
| |
| |
| | |
argparse
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
- Once the argument list can match a positional and that positional is tagged
with nargs=argparse.REMAINDER it will consume all tokens including flag tokens.
AutoCompleter now correctly detects this case will no longer attempt to complete
flag tokens
- A single-character token that is a flag prefix doesn't count as a flag and is
parsed as a value. AutoCompleter now correctly detects this case.
|
| |/
|
|
|
|
|
|
| |
ArgparseFunctor
Should correctly force all subsequent arguments to go to the REMAINDER argument once it is detected.
Re-arranged the command generation in ArgparseFunctor to print flag arguments before positionals
Also forces the remainder arguments to always be last.
|
| |
|
|
| |
easier to format help/description text
|
| |
|
|
| |
tabular results. Updated the example to demonstrate pre-sorted tabular results.
|
| |
|
|
| |
constant. Updated example to use the constant.
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
because they were failing for me.
Added detection of ==SUPPRESS== in subcommand group names to avoid printing it in the help hint.
Added some examples to tab_autocompletion to demonstrate how to tie in to cmd2 path_complete
|
| |
|
|
| |
completion. Saving state - more to come.
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| | |
Added some shared definitions to cmd2/__init__.py -> maybe there's a better place for these?
Figured out how to trick bash into showing argument hints. It's a bit weird.
Updated all of the tests and examples to import cmd2 resources from their new location without the automatic imports in cmd2/__init__.py
For #369
|
| | |
| |
| |
| |
| |
| |
| | |
Removed all legacy pystate objects.
Changed default behavior to clear _last_result before each command
Added utility for creating named tuples with default values
Added tests to exercise new changes.
|
| | | |
|
| |/
|
|
|
|
| |
argparse command positional and flag arguments.
Added initial set of tests
|
| |
|
|
| |
completion provider. The default completion implementation in Cmd2 automatically passes self to AutoCompleter to be passed to the class method.
|
| | |
|
| | |
|
| |
|
|
| |
all tests are passing yet.
|
| | |
|
| |
|
|
| |
tests due to the lack of a real terminal. Some more comments.
|
| | |
|
| |
|
|
|
| |
Updated AutoCompleter (#349) to match new directory structure from
packaging effort.
|
| |
|
|
|
|
|
|
|
| |
function arguments.
Added example for fully custom completion functions mixed with argparse/AutoCompleter handling
- Also demonstrates the ability to pass in a list, tuple, or dict of parameters to append to the custom completion function.
Added new test cases exercising the custom completion function calls.
Added AutoCompleter and rl_utils to the coverage report.
|
| | |
|
| |
|
|
| |
Added more type hinting to AutoCompleter.
|
| | |
|
| |
|
|
|
|
|
|
|
| |
- Fixed a few bugs in AutoCompleter dealing with nargs='+' or nargs='*'
- Adjusted some help output dealing with narg ranges
- Fixed spacing problem with printing argument help
* examples/tab_autocompletion.py
- Removed debug code.
- Minor changes.
|
| |
|