summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorTerry Jan Reedy <tjreedy@udel.edu>2022-08-11 20:54:03 (GMT)
committerGitHub <noreply@github.com>2022-08-11 20:54:03 (GMT)
commitbdb2cf8e913c041f26e8976abe58414819b3e8ff (patch)
tree640ea4c4ab9d8093ea210d56915aaf177c6741aa /Lib
parent05a0f37029f8ef917ed7ddbf7871856fc73aaca1 (diff)
downloadcpython-bdb2cf8e913c041f26e8976abe58414819b3e8ff.zip
cpython-bdb2cf8e913c041f26e8976abe58414819b3e8ff.tar.gz
cpython-bdb2cf8e913c041f26e8976abe58414819b3e8ff.tar.bz2
gh-95841: IDLE - Revise Windows local doc url (#95845)
#91242 replaced the Windows chm help file with a copy of the html docs. This PR replaces the IDLE code that fetches the Windows local help url passed to os.startfile. Co-authored-by: Steve Dower
Diffstat (limited to 'Lib')
-rw-r--r--Lib/idlelib/editor.py18
1 files changed, 14 insertions, 4 deletions
diff --git a/Lib/idlelib/editor.py b/Lib/idlelib/editor.py
index 859a288..08d6aa2 100644
--- a/Lib/idlelib/editor.py
+++ b/Lib/idlelib/editor.py
@@ -86,10 +86,20 @@ class EditorWindow:
dochome = os.path.join(basepath, pyver,
'Doc', 'index.html')
elif sys.platform[:3] == 'win':
- chmfile = os.path.join(sys.base_prefix, 'Doc',
- 'Python%s.chm' % _sphinx_version())
- if os.path.isfile(chmfile):
- dochome = chmfile
+ import winreg # Windows only, block only executed once.
+ docfile = ''
+ KEY = (rf"Software\Python\PythonCore\{sys.winver}"
+ r"\Help\Main Python Documentation")
+ try:
+ docfile = winreg.QueryValue(winreg.HKEY_CURRENT_USER, KEY)
+ except FileNotFoundError:
+ try:
+ docfile = winreg.QueryValue(winreg.HKEY_LOCAL_MACHINE,
+ KEY)
+ except FileNotFoundError:
+ pass
+ if os.path.isfile(docfile):
+ dochome = docfile
elif sys.platform == 'darwin':
# documentation may be stored inside a python framework
dochome = os.path.join(sys.base_prefix,