https://github.com/alecthomas/cly
A Python module for adding powerful text-based consoles to your application.
https://github.com/alecthomas/cly
Last synced: over 1 year ago
JSON representation
A Python module for adding powerful text-based consoles to your application.
- Host: GitHub
- URL: https://github.com/alecthomas/cly
- Owner: alecthomas
- License: other
- Created: 2015-02-25T23:07:05.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2024-02-01T20:38:30.000Z (over 2 years ago)
- Last Synced: 2025-04-12T06:12:21.756Z (over 1 year ago)
- Language: Python
- Size: 48.8 KB
- Stars: 4
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README
- License: COPYING
Awesome Lists containing this project
README
CLY is a Python module for simplifying the creation of interactive shells. Kind
of like the builtin `cmd` module on steroids.
It has the following features:
- An XML (honestly, it's better than you think) grammar format.
- Tab completion of all commands.
- Contextual help.
- Extensible grammar - you can define your own commands with full dynamic
completion, contextual help, and so on.
- Simple. Grammars are constructed from objects using a convenient
''function-like'' syntax.
- Flexible command grouping and ordering.
- Grammar parser, including completion and help enumeration, can be used
independently of the readline-based shell. This allows CLY's parser to
be used in other environments (think "web-based shell" ;))
- Lots of other cool stuff.