From b3e6783423f58597419abae343dd1d5dcc02a7e3 Mon Sep 17 00:00:00 2001 From: "Steve (Gadget) Barnes" Date: Sat, 13 Jun 2020 00:19:34 +0100 Subject: [PATCH] bpo-37556 Extend help to include latest overrides (GH-14701) Modify the help in cpython/PC/launcher.c to show users that "latest" can be overridden by shebang, PY_PYTHON[n] or py.ini files. Also show that script [args] is optional by enclosing in square brackets. Automerge-Triggered-By: @zooba --- .../Windows/2019-07-11-06-11-09.bpo-37556.sygMUU.rst | 1 + PC/launcher.c | 11 ++++++++++- 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/Windows/2019-07-11-06-11-09.bpo-37556.sygMUU.rst diff --git a/Misc/NEWS.d/next/Windows/2019-07-11-06-11-09.bpo-37556.sygMUU.rst b/Misc/NEWS.d/next/Windows/2019-07-11-06-11-09.bpo-37556.sygMUU.rst new file mode 100644 index 00000000000..e8af96421b8 --- /dev/null +++ b/Misc/NEWS.d/next/Windows/2019-07-11-06-11-09.bpo-37556.sygMUU.rst @@ -0,0 +1 @@ +Extend py.exe help to mention overrides via venv, shebang, environmental variables & ini files. \ No newline at end of file diff --git a/PC/launcher.c b/PC/launcher.c index fd5ad0ab1a1..106fc660755 100644 --- a/PC/launcher.c +++ b/PC/launcher.c @@ -1520,7 +1520,7 @@ show_help_text(wchar_t ** argv) Python Launcher for Windows Version %ls\n\n", version_text); fwprintf(stdout, L"\ usage:\n\ -%ls [launcher-args] [python-args] script [script-args]\n\n", argv[0]); +%ls [launcher-args] [python-args] [script [script-args]]\n\n", argv[0]); fputws(L"\ Launcher arguments:\n\n\ -2 : Launch the latest Python 2.x version\n\ @@ -1536,6 +1536,15 @@ Launcher arguments:\n\n\ } fputws(L"\n-0 --list : List the available pythons", stdout); fputws(L"\n-0p --list-paths : List with paths", stdout); + fputws(L"\n\n If no script is specified the specified interpreter is opened.", stdout); + fputws(L"\nIf an exact version is not given, using the latest version can be overridden by", stdout); + fputws(L"\nany of the following, (in priority order):", stdout); + fputws(L"\n An active virtual environment", stdout); + fputws(L"\n A shebang line in the script (if present)", stdout); + fputws(L"\n With -2 or -3 flag a matching PY_PYTHON2 or PY_PYTHON3 Enviroment variable", stdout); + fputws(L"\n A PY_PYTHON Enviroment variable", stdout); + fputws(L"\n From [defaults] in py.ini in your %LOCALAPPDATA%\\py.ini", stdout); + fputws(L"\n From [defaults] in py.ini beside py.exe (use `where py` to locate)", stdout); fputws(L"\n\nThe following help text is from Python:\n\n", stdout); fflush(stdout); }