On Feb 19, 2006, at 5:03 PM, Raymond Hettinger wrote: >>> @cmdloop.aliases('goodbye') >>> @cmdloop.shorthelp('say goodbye') >>> @cmdloop.usage('goodbye TARGET') >>> >>> to just: >>> >>> @cmdloop.addspec(aliases=['goodbye'], shorthelp ='say >>> goodbye', >>> usage='goodbye TARGET') >>> >>> leaving the possibility of multiple decorators when one line gets >>> to long: >>> >>> @cmdloop.addspec(aliases=['goodbye'], shorthelp ='say >>> goodbye') >>> @cmdloop.addspec(usage='goodbye TARGET # where TARGET is >>> a filename >>> in >>> the current directory') > >> Well, why not support both, and leave it up to the user? > > Having only one method keeps the API simple. Also, the addspec() > approach > allows the user to choose between single and multiple lines. > > BTW, addspec() could be made completely general by supporting all > possible > keywords at once: > > def addspec(**kwds): > def decorator(func): > func.__dict__.update(kwds) > return func > return decorator > > With an open definition like that, users can specify new attributes > with less > effort. Doesn't this discussion belong on c.l.p / python-list? -bob
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4