blob: bb39ba5c43b81e1219c1aff8b05b9439d201d3fa (
plain) (
tree)
|
|
Extending BE
============
To write a plugin, you simply create a new file in the becommands
directory. Take a look at one of the simpler plugins (e.g. open.py)
for an example of how that looks, and to start getting a feel for the
libbe interface.
To fit into the current framework, your extension module should
provide the following elements:
__desc__
A short string describing the purpose of your plugin
execute(args)
The entry function for your plugin. args is everything from
sys.argv after the name of your plugin (e.g. for the command
`be open abc', args=['abc']).
help()
Return the string to be output by `be help <yourplugin>',
`be <yourplugin> --help', etc.
While that's all that's strictly necessary, many plugins (all the
current ones) use libbe.cmdutil.CmdOptionParser to provide a
consistent interface
get_parser()
Return an instance of CmdOptionParser("<usage string>"). You can
alter the parser (e.g. add some more options) before returning it.
Again, you can just browse around in becommands to get a feel for things.
|