diff options
| author | kotfu <kotfu@kotfu.net> | 2019-08-23 19:09:02 -0600 | 
|---|---|---|
| committer | kotfu <kotfu@kotfu.net> | 2019-08-23 19:09:02 -0600 | 
| commit | 9fd5f6274da443db4f37273d1284e6d09f94aab5 (patch) | |
| tree | fa28b7229004097c7df16442cb4551c1bbaff7ab /examples/remove_builtin_commands.py | |
| parent | 65cf54ae758bc1e036710c571f6c785820c7e10d (diff) | |
| download | cmd2-git-9fd5f6274da443db4f37273d1284e6d09f94aab5.tar.gz | |
Add documentation and example for removing built-in commands
For #765
Diffstat (limited to 'examples/remove_builtin_commands.py')
| -rwxr-xr-x | examples/remove_builtin_commands.py | 31 | 
1 files changed, 31 insertions, 0 deletions
| diff --git a/examples/remove_builtin_commands.py b/examples/remove_builtin_commands.py new file mode 100755 index 00000000..4c1794d6 --- /dev/null +++ b/examples/remove_builtin_commands.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# coding=utf-8 +"""A simple example demonstrating how to remove unused commands. + +Commands can be removed from  help menu and tab completion by appending their command name to the hidden_commands list. +These commands will still exist and can be executed and help can be retrieved for them by +name, they just won't clutter the help menu. + +Commands can also be removed entirely by using Python's "del". +""" + +import cmd2 + + +class RemoveBuiltinCommands(cmd2.Cmd): +    """ Example cmd2 application where we remove some unused built-in commands.""" + +    def __init__(self): +        super().__init__() + +        # To hide commands from displaying in the help menu, add them to the hidden_commands list +        self.hidden_commands.append('py') + +        # To remove built-in commands entirely, delete their "do_*" function from the cmd2.Cmd class +        del cmd2.Cmd.do_edit + + +if __name__ == '__main__': +    import sys +    app = RemoveBuiltinCommands() +    sys.exit(app.cmdloop()) | 
