mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +00:00 
			
		
		
		
	merge with 3.3
This commit is contained in:
		
						commit
						7ef90a1a37
					
				
					 5 changed files with 83 additions and 3 deletions
				
			
		|  | @ -145,6 +145,45 @@ def run(self): | |||
|         return ret | ||||
| 
 | ||||
| 
 | ||||
| # Support for including Misc/NEWS | ||||
| 
 | ||||
| import re | ||||
| import codecs | ||||
| from docutils.statemachine import string2lines | ||||
| from sphinx.util.nodes import nested_parse_with_titles | ||||
| 
 | ||||
| issue_re = re.compile('Issue #([0-9]+)') | ||||
| 
 | ||||
| class MiscNews(Directive): | ||||
|     has_content = False | ||||
|     required_arguments = 1 | ||||
|     optional_arguments = 0 | ||||
|     final_argument_whitespace = False | ||||
|     option_spec = {} | ||||
| 
 | ||||
|     def run(self): | ||||
|         fname = self.arguments[0] | ||||
|         source = self.state_machine.input_lines.source( | ||||
|             self.lineno - self.state_machine.input_offset - 1) | ||||
|         source_dir = path.dirname(path.abspath(source)) | ||||
|         try: | ||||
|             fp = codecs.open(path.join(source_dir, fname), encoding='utf-8') | ||||
|             try: | ||||
|                 content = fp.read() | ||||
|             finally: | ||||
|                 fp.close() | ||||
|         except Exception: | ||||
|             text = 'The NEWS file is not available.' | ||||
|             node = nodes.strong(text, text) | ||||
|             return [node] | ||||
|         content = issue_re.sub(r'`Issue #\1 <http://bugs.python.org/\1>`__', | ||||
|                                content) | ||||
|         # remove first 3 lines as they are the main heading | ||||
|         lines = content.splitlines()[3:] | ||||
|         self.state_machine.insert_input(lines, fname) | ||||
|         return [] | ||||
| 
 | ||||
| 
 | ||||
| # Support for building "topic help" for pydoc | ||||
| 
 | ||||
| pydoc_topic_labels = [ | ||||
|  | @ -276,3 +315,4 @@ def setup(app): | |||
|     app.add_description_unit('2to3fixer', '2to3fixer', '%s (2to3 fixer)') | ||||
|     app.add_directive_to_domain('py', 'decorator', PyDecoratorFunction) | ||||
|     app.add_directive_to_domain('py', 'decoratormethod', PyDecoratorMethod) | ||||
|     app.add_directive('miscnews', MiscNews) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Georg Brandl
						Georg Brandl