That makes sense. So really what we are missing is a method to associate a file 
with a command (required to support dynamic commands).

We could do that in lots of ways, but the first I think of is to add a new API 
in the ShellProtocol to perform this association.

Do we also need a shell command for a user to view/edit the file associations?

Do associations need to maintain over a reboot?

-Jaben





> -----Original Message-----
> From: [email protected] <[email protected]> On Behalf Of Andrew
> Fish via Groups.Io
> Sent: Tuesday, February 11, 2020 6:08 PM
> To: Carsey, Jaben <[email protected]>
> Cc: [email protected]; [email protected]; [email protected]
> Subject: Re: [edk2-devel] Shell feature?
> 
> Jaben,
> 
> My example was confusing, but my use case was to put this code in a library
> that adds a command. So after I register the command I’d like to register the
> file type to be processed by it.
> 
> Making an alias for an external command could be a different feature?
> > On Feb 11, 2020, at 5:30 PM, Carsey, Jaben <[email protected]>
> wrote:
> >
> > Andrew
> >
> > You can already add a command via a driver (including a driver's library).
> Check into the Dynamic Commands in the shell spec.
> >
> > Associating a file type with a command, basically if the first thing on the
> command line is a file of that type, then prepend the command and re-
> process the line, is very doable. It's almost like the alias feature that 
> already
> exists.
> >
> > I do agree with Tim that we should do a spec update, but concurrent
> development of code and spec seems required to prevent re-doing the spec.
> >
> > -Jaben
> >
> >> -----Original Message-----
> >> From: [email protected] <[email protected]> On Behalf Of Jim
> >> Dailey
> >> Sent: Tuesday, February 11, 2020 1:31 PM
> >> To: [email protected]
> >> Cc: [email protected]; [email protected]
> >> Subject: Re: [edk2-devel] Shell feature?
> >>
> >> 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: [email protected] <[email protected]> On Behalf Of Tim
> >> Lewis
> >> Sent: Tuesday, February 11, 2020 2:28 PM
> >> To: [email protected]; [email protected]
> >> 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: [email protected] <[email protected]> On Behalf Of
> Andrew
> >> Fish via Groups.Io
> >> Sent: Monday, February 10, 2020 12:12 PM
> >> To: [email protected]
> >> 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
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >>
> >
> 
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#54255): https://edk2.groups.io/g/devel/message/54255
Mute This Topic: https://groups.io/mt/71147932/21656
Group Owner: [email protected]
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to