Jim, Sorry I forgot to hit send on this.... We have scripts that run under OS and the EFI Shell that we use for debugging. So like Python in the OS you can just type the name of the script and it works, so folks expect the same behavior at the EFI shell :). Also as I mentioned in our case the interpreter was built into the shell. In that case you don't have pathing issues to launch Python. It is a lot easier to just distribute the UEFI Shell binary vs. forcing folks to have a bunch of files in specific directories to get things to work. Maybe we should futz around with the UEFI Python and wrap it in a lib so it can optionally get built into the UEFI Shell binary. Thanks, Andrew Fish > On Feb 11, 2020, at 1:54 PM, Andrew Fish wrote: > > > >> On Feb 11, 2020, at 1:30 PM, Jim Dailey wrote: >> >> Andrew, >> >> Granted such a feature would be nice, but it seems like it might be a >> fair amount of trouble just to avoid typing "python3", which could be >> aliased to something as short a "p". >> >> Jim >> >> -----Original Message----- >> From: devel@edk2.groups.io > On Behalf Of Tim Lewis >> Sent: Tuesday, February 11, 2020 2:28 PM >> To: devel@edk2.groups.io ; afish@apple.com >> Subject: Re: [edk2-devel] Shell feature? >> >> >> [EXTERNAL EMAIL] >> >> Andrew -- >> >> I think this is a good idea, but I think this is probably a shell spec issue >> because I don't want competing, incompatible implementations. >> >> A few other issues: I think there is a persistence issue (similar to shell >> variables) so that the change could be installed and survive a reboot. I >> also think there can be a simple shell command that manages extensions (so >> that they can be installed by a script) >> >> Tim >> >> -----Original Message----- >> From: devel@edk2.groups.io On Behalf Of Andrew Fish >> via Groups.Io >> Sent: Monday, February 10, 2020 12:12 PM >> To: devel@edk2.groups.io >> Subject: [edk2-devel] Shell feature? >> >> I wanted to start a conversation on the mailing list prior to writing up a >> BZ, to make sure I'm not missing anything, or in case there is a better way >> to implement this. >> >> I was thinking it would be good to have a Shell API that lets you associate >> a file type with an internal or external shell command. The Idea would be to >> pre-pend the internal/external shell command to the file name and also pass >> the arguments. >> >> So this: >> fs0:>dump.py 1 2 3 >> >> Becomes: >> fs0:>python3.efi dump.py 1 2 3 >> >> Basically you just need an API like: >> >> ShellAddScriptingLanguage (L".py", L"python3.efi"); >> >> Seems like this could just plug into the Shell via a ShellExecute(). So for >> example you could make Python a UEFI Shell command via a library and that >> library constructor could also teach the shell that a .py file could be an >> executable? >> >> Thanks, >> >> Andrew Fish >> >> >> >> >> >> >> >> >