mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	The MacPython introductory help is now called MacPython Help, and the
optional full documentation Python Documentation.
This commit is contained in:
		
							parent
							
								
									f3ef038808
								
							
						
					
					
						commit
						08801db123
					
				
					 4 changed files with 41 additions and 25 deletions
				
			
		|  | @ -32,7 +32,7 @@ def initialize_options(self): | ||||||
| 		self.build_html = None | 		self.build_html = None | ||||||
| 		self.build_dest = None | 		self.build_dest = None | ||||||
| 		self.download = 1 | 		self.download = 1 | ||||||
| 		self.doc_version = '2.2.1' | 		self.doc_version = '2.2.2' | ||||||
| 		 | 		 | ||||||
| 	def finalize_options(self): | 	def finalize_options(self): | ||||||
| 		build.finalize_options(self) | 		build.finalize_options(self) | ||||||
|  | @ -46,13 +46,20 @@ def spawn(self, *args): | ||||||
| 	 | 	 | ||||||
| 	def downloadDocs(self): | 	def downloadDocs(self): | ||||||
| 		workdir = os.getcwd() | 		workdir = os.getcwd() | ||||||
| 		self.mkpath(self.build_html) | 		url = 'http://www.python.org/ftp/python/doc/%s/html-%s.tgz' % \ | ||||||
|  | 			(self.doc_version,self.doc_version) | ||||||
| 		os.chdir(self.build_base) | 		os.chdir(self.build_base) | ||||||
| 		self.spawn('curl','-O', 'http://www.python.org/ftp/python/doc/%s/html-%s.tgz' % (self.doc_version,self.doc_version)) | 		self.spawn('curl','-O', url) | ||||||
| 		os.chdir(workdir) |  | ||||||
| 		os.chdir(self.build_html) |  | ||||||
| 		self.spawn('tar', '-xzf', '../html-%s.tgz' % self.doc_version) |  | ||||||
| 		os.chdir(workdir) | 		os.chdir(workdir) | ||||||
|  | 		tarfile = 'html-%s.tgz' % self.doc_version | ||||||
|  | ## This no longer works due to name changes | ||||||
|  | ##		self.mkpath(self.build_html) | ||||||
|  | ##		os.chdir(self.build_html) | ||||||
|  | ##		self.spawn('tar', '-xzf', '../' + tarfile) | ||||||
|  | ##		os.chdir(workdir) | ||||||
|  | 		print "** Please unpack %s" % os.path.join(self.build_base, tarfile) | ||||||
|  | 		print "** Unpack the files into %s" % self.build_html | ||||||
|  | 		raise RuntimeError, "You need to unpack the docs manually" | ||||||
| 		 | 		 | ||||||
| 	def buildDocsFromSource(self): | 	def buildDocsFromSource(self): | ||||||
| 		srcdir = '../../..' | 		srcdir = '../../..' | ||||||
|  | @ -75,7 +82,7 @@ def hackIndex(self): | ||||||
| 		hackedIndex = file(os.path.join(self.build_dest, ind_html),'w') | 		hackedIndex = file(os.path.join(self.build_dest, ind_html),'w') | ||||||
| 		origIndex = file(os.path.join(self.build_html,ind_html)) | 		origIndex = file(os.path.join(self.build_html,ind_html)) | ||||||
| 		r = re.compile('<style type="text/css">.*</style>', re.DOTALL) | 		r = re.compile('<style type="text/css">.*</style>', re.DOTALL) | ||||||
| 		hackedIndex.write(r.sub('<META NAME="AppleTitle" CONTENT="Python Help">',origIndex.read())) | 		hackedIndex.write(r.sub('<META NAME="AppleTitle" CONTENT="Python Documentation">',origIndex.read())) | ||||||
| 	 | 	 | ||||||
| 	def hackFile(self,d,f): | 	def hackFile(self,d,f): | ||||||
| 		origPath = os.path.join(d,f) | 		origPath = os.path.join(d,f) | ||||||
|  | @ -107,6 +114,7 @@ def makeHelpIndex(self): | ||||||
| 		 | 		 | ||||||
| 	def run(self): | 	def run(self): | ||||||
| 		self.ensure_finalized() | 		self.ensure_finalized() | ||||||
|  | 		self.mkpath(self.build_base) | ||||||
| 		self.ensureHtml() | 		self.ensureHtml() | ||||||
| 		if not os.path.isdir(self.build_html): | 		if not os.path.isdir(self.build_html): | ||||||
| 			raise RuntimeError, \ | 			raise RuntimeError, \ | ||||||
|  | @ -142,7 +150,7 @@ def finalize_options(self): | ||||||
| 			build_cmd = self.get_finalized_command('build') | 			build_cmd = self.get_finalized_command('build') | ||||||
| 			self.build_dest = build_cmd.build_dest | 			self.build_dest = build_cmd.build_dest | ||||||
| 		if self.install_doc == None: | 		if self.install_doc == None: | ||||||
| 			self.install_doc = os.path.join(self.prefix, 'Resources/English.lproj/Documentation') | 			self.install_doc = os.path.join(self.prefix, 'Resources/Python.app/Contents/Resources/English.lproj/PythonDocumentation') | ||||||
| 		print 'INSTALL', self.build_dest, '->', self.install_doc | 		print 'INSTALL', self.build_dest, '->', self.install_doc | ||||||
| 		 | 		 | ||||||
| 	def run(self): | 	def run(self): | ||||||
|  |  | ||||||
|  | @ -32,9 +32,10 @@ | ||||||
| 	<key>CFBundleHelpBookFolder</key> | 	<key>CFBundleHelpBookFolder</key> | ||||||
| 	<array> | 	<array> | ||||||
| 		<string>Documentation</string> | 		<string>Documentation</string> | ||||||
|  | 		<string>PythonDocumentation</string> | ||||||
| 	</array> | 	</array> | ||||||
| 	<key>CFBundleHelpBookName</key> | 	<key>CFBundleHelpBookName</key> | ||||||
| 	<string>Python Help</string> | 	<string>MacPython Help</string> | ||||||
| 	<key>CFBundleHelpTOCFile</key> | 	<key>CFBundleHelpTOCFile</key> | ||||||
| 	<string>index.html</string> | 	<string>index.html</string> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -7,7 +7,7 @@ | ||||||
| 	<meta name="generator" content="BBEdit 6.5.3"> | 	<meta name="generator" content="BBEdit 6.5.3"> | ||||||
| 	<link rel="SHORTCUT ICON" href="pythonsmall.gif"> | 	<link rel="SHORTCUT ICON" href="pythonsmall.gif"> | ||||||
| 	<META NAME="AppleIcon" CONTENT="pythonsmall.gif"> | 	<META NAME="AppleIcon" CONTENT="pythonsmall.gif"> | ||||||
| 	<META NAME="AppleTitle" CONTENT="Python Help"> | 	<META NAME="AppleTitle" CONTENT="MacPython Help"> | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -353,12 +353,14 @@ def domenu_openpackagemanager(self): | ||||||
| 		PackageManager.PackageBrowser() | 		PackageManager.PackageBrowser() | ||||||
| 		 | 		 | ||||||
| 	def makehelpmenu(self): | 	def makehelpmenu(self): | ||||||
| 		docs = self.installdocumentation() | 		hashelp, hasdocs = self.installdocumentation() | ||||||
| 		self.helpmenu = m = self.gethelpmenu() | 		self.helpmenu = m = self.gethelpmenu() | ||||||
|  | 		helpitem = FrameWork.MenuItem(m, "MacPython Help", None, self.domenu_localhelp) | ||||||
|  | 		helpitem.enable(hashelp) | ||||||
| 		docitem = FrameWork.MenuItem(m, "Python Documentation", None, self.domenu_localdocs) | 		docitem = FrameWork.MenuItem(m, "Python Documentation", None, self.domenu_localdocs) | ||||||
| 		docitem.enable(docs) | 		docitem.enable(hasdocs) | ||||||
| 		finditem = FrameWork.MenuItem(m, "Lookup in Python Documentation", None, 'lookuppython') | 		finditem = FrameWork.MenuItem(m, "Lookup in Python Documentation", None, 'lookuppython') | ||||||
| 		finditem.enable(docs) | 		finditem.enable(hasdocs) | ||||||
| 		if runningOnOSX(): | 		if runningOnOSX(): | ||||||
| 			FrameWork.Separator(m) | 			FrameWork.Separator(m) | ||||||
| 			doc2item = FrameWork.MenuItem(m, "Apple Developer Documentation", None, self.domenu_appledocs) | 			doc2item = FrameWork.MenuItem(m, "Apple Developer Documentation", None, self.domenu_appledocs) | ||||||
|  | @ -370,7 +372,11 @@ def makehelpmenu(self): | ||||||
| 		 | 		 | ||||||
| 	def domenu_localdocs(self, *args): | 	def domenu_localdocs(self, *args): | ||||||
| 		from Carbon import AH | 		from Carbon import AH | ||||||
| 		AH.AHGotoPage("Python Help", None, None) | 		AH.AHGotoPage("Python Documentation", None, None) | ||||||
|  | 		 | ||||||
|  | 	def domenu_localhelp(self, *args): | ||||||
|  | 		from Carbon import AH | ||||||
|  | 		AH.AHGotoPage("MacPython Help", None, None) | ||||||
| 		 | 		 | ||||||
| 	def domenu_appledocs(self, *args): | 	def domenu_appledocs(self, *args): | ||||||
| 		from Carbon import AH, AppleHelp | 		from Carbon import AH, AppleHelp | ||||||
|  | @ -388,7 +394,7 @@ def domenu_lookuppython(self, *args): | ||||||
| 		if not searchstring: | 		if not searchstring: | ||||||
| 			return | 			return | ||||||
| 		try: | 		try: | ||||||
| 			AH.AHSearch("Python Help", searchstring) | 			AH.AHSearch("Python Documentation", searchstring) | ||||||
| 		except AH.Error, arg: | 		except AH.Error, arg: | ||||||
| 			W.Message("AppleHelp Error: %s" % `arg`) | 			W.Message("AppleHelp Error: %s" % `arg`) | ||||||
| 			 | 			 | ||||||
|  | @ -441,16 +447,17 @@ def installdocumentation(self): | ||||||
| 		# And as AHRegisterHelpBook wants a bundle (with the right bits in | 		# And as AHRegisterHelpBook wants a bundle (with the right bits in | ||||||
| 		# the plist file) we refer it to Python.app | 		# the plist file) we refer it to Python.app | ||||||
| 		python_app = os.path.join(sys.prefix, 'Resources/Python.app') | 		python_app = os.path.join(sys.prefix, 'Resources/Python.app') | ||||||
| 		doc_source = os.path.join(python_app, 'Contents/Resources/English.lproj/Documentation') | 		help_source = os.path.join(python_app, 'Contents/Resources/English.lproj/Documentation') | ||||||
| 		if not os.path.isdir(doc_source): | 		doc_source = os.path.join(python_app, 'Contents/Resources/English.lproj/PythonDocumentation') | ||||||
| 			return 0 | 		has_help = os.path.isdir(help_source) | ||||||
| 		try: | 		has_doc = os.path.isdir(doc_source) | ||||||
| 			from Carbon import AH | 		if has_help or has_doc: | ||||||
| 			AH.AHRegisterHelpBook(python_app) | 			try: | ||||||
| 		except (ImportError, MacOS.Error), arg: | 				from Carbon import AH | ||||||
| 			W.Message("Cannot register Python documentation: %s" % `arg`) | 				AH.AHRegisterHelpBook(python_app) | ||||||
| 			return 0 | 			except (ImportError, MacOS.Error), arg: | ||||||
| 		return 1 | 				pass # W.Message("Cannot register Python Documentation: %s" % str(arg)) | ||||||
|  | 		return has_help, has_doc | ||||||
| 	 | 	 | ||||||
| 
 | 
 | ||||||
| PythonIDE() | PythonIDE() | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Jack Jansen
						Jack Jansen