On 15 November 2017 at 19:29, Zachary Ware firstname.lastname@example.org wrote:
On Wed, Nov 15, 2017 at 1:07 PM, Steve Dower email@example.com wrote:
My preferred solution for this is to rename "py.exe" to "python.exe" (or rather, make a copy of it with the new name), and extend (or more likely, rewrite) the launcher such that:
- if argv == "py.exe", use PEP 514 company/tag resolution to find and
launch Python based on first command line argument
- if argv == "python<numeric tag>.exe", find the matching
PythonCore/<tag> install (where tag may be a partial match - e.g. "python3.exe" finds the latest PythonCore/3.x)
- else, if argv == "<module><numeric tag>.exe, find the matching
PythonCore/<tag> install and launch "-m <module>"
With the launcher behaving like this, we can make as many hard links as we want in its install directory (it only gets installed once, so only needs one PATH entry, and this is C:\Windows for admin installs):
I haven't been following this thread closely, but this sounds lovely. I'm not terribly keen on cluttering up C:\Windows with this, but that's a minor issue.
Agreed. That sounds sufficiently awesome that I'll try to find some of my essentially-non-existent coding time and largely-forgotten C skills to implement it. Remind me of that promise in 6 months when I've failed to report any progress :-)