From: David G. <go...@us...> - 2002-07-28 17:38:07
|
Update of /cvsroot/docutils/docutils/docutils In directory usw-pr-cvs1:/tmp/cvs-serv20666/docutils/docutils Modified Files: frontend.py Log Message: - Added ``store_multiple()`` option callback. - Added "--source-url" option. - Return source & destination path in option values object. Index: frontend.py =================================================================== RCS file: /cvsroot/docutils/docutils/docutils/frontend.py,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** frontend.py 27 Jul 2002 15:49:37 -0000 1.13 --- frontend.py 28 Jul 2002 17:38:04 -0000 1.14 *************** *** 18,21 **** --- 18,34 ---- + def store_multiple(option, opt, value, parser, *args, **kwargs): + """ + Store multiple values in `parser.values`. (Option callback.) + + Store `None` for each attribute named in `args`, and store the value for + each key (attribute name) in `kwargs`. + """ + for attribute in args: + setattr(parser.values, attribute, None) + for key, value in kwargs.items(): + setattr(parser.values, key, value) + + class OptionParser(optik.OptionParser): *************** *** 54,62 **** ['--no-datestamp'], {'action': 'store_const', 'const': None, 'dest': 'datestamp'}), ! ('Include a "View document source" link.', ['--source-link', '-s'], {'action': 'store_true'}), ('Do not include a "View document source" link.', ! ['--no-source-link'], {'action': 'store_false', ! 'dest': 'source_link'}), ('Enable backlinks from section headers to table of contents ' 'entries. This is the default.', --- 67,79 ---- ['--no-datestamp'], {'action': 'store_const', 'const': None, 'dest': 'datestamp'}), ! ('Include a "View document source" link (relative to destination).', ['--source-link', '-s'], {'action': 'store_true'}), + ('Use the supplied <url> for a "View document source" link; ' + 'implies --source-link.', + ['--source-url'], {'metavar': '<url>'}), ('Do not include a "View document source" link.', ! ['--no-source-link'], ! {'action': 'callback', 'callback': store_multiple, ! 'callback_args': ('source_link', 'source_url')}), ('Enable backlinks from section headers to table of contents ' 'entries. This is the default.', *************** *** 159,164 **** values.report_level = self.check_threshold(values.report_level) values.halt_level = self.check_threshold(values.halt_level) ! source, destination = self.check_args(args) ! return values, source, destination def check_threshold(self, level): --- 176,181 ---- values.report_level = self.check_threshold(values.report_level) values.halt_level = self.check_threshold(values.halt_level) ! values.source, values.destination = self.check_args(args) ! return values def check_threshold(self, level): |