> On Sep 15, 2015, at 8:27 AM, [email protected] wrote: > > I understand. I have always believed the spec was wrong to try and take over > "-?" from apps. What it wants to do for internal command help is certainly > something that it should specify, but it should not fail to execute an > application due to the arguments that are being passed to the app. > > Because of this, the apps I write only recognize "/" as the switch character, > so the user gets the help they are looking for if they invoke them with /h > (or any other argument they do not recognize as valid, unless, of course they > try "-?"; then they get no useful information at all :-(). > > As Ruiyu pointed out, the current spec makes providing an application to > someone more complicated than it could otherwise be. >
Jim, +1 If you just want to write (or port) a simple application I think you are right that passing the entire command line to the application on MAN failure makes the most sense. Thanks, Andrew Fish >> -----Original Message----- >> From: Carsey, Jaben [mailto:[email protected] >> <mailto:[email protected]>] >> Sent: Tuesday, September 15, 2015 9:43 AM >> To: Dailey, Jim; Ni, Ruiyu; [email protected] >> <mailto:[email protected]> >> Cc: Carsey, Jaben >> Subject: RE: Proposal to let standalone UEFI shell application carry help >> inside .EFI instead of in .MAN file >> >> Jim, >> >> Currently the shell spec requires a man file and dictates that the shell >> API GetHelp() be used for help processing. >> >> This is a case where if that current usage would fail, can we have a >> fallback that extends beyond the behavior in the spec. I do not think >> this violates the spec, but simply goes past those requirements. >> >> We do not want to execute a command other than the built in help command. >> >> -Jaben >> >>> -----Original Message----- >>> From: edk2-devel [mailto:[email protected]] On Behalf Of >>> [email protected] >>> Sent: Tuesday, September 15, 2015 6:02 AM >>> To: Ni, Ruiyu ; [email protected] <mailto:[email protected]> >>> Subject: Re: [edk2] Proposal to let standalone UEFI shell application >>> carry help inside .EFI instead of in .MAN file >>> Importance: High >>> >>> Yes, except if the shell can't find the man file (or it is invalid), >>> then the shell should simply execute the .efi and let it handle the >>> command line (regardless of EFI_HII_PACKAGE_LIST_PROTOCOL_GUID, etc.). >>> >>> Regards, >>> Jim >>> >>> -----Original Message----- >>> From: edk2-devel [mailto:[email protected] >>> <mailto:[email protected]>] On Behalf Of >>> Ni, Ruiyu >>> Sent: Monday, September 14, 2015 9:54 PM >>> To: [email protected] <mailto:[email protected]> >>> Cc: Carsey, Jaben; [email protected] <mailto:[email protected]>; Hale, Robert P; >>> Rothman, Michael A >>> Subject: [edk2] Proposal to let standalone UEFI shell application >>> carry help inside .EFI instead of in .MAN file >>> >>> All, >>> UEFI Shell scandalizes the help message in spec level so that a >>> standalone UEFI shell application can never get "-?" switch, instead >>> the Shell core >>> (interpreter) detects the "-?" and finds .MAN file for that shell >>> application in certain spec defined paths, then show the help >>> extracted from that .MAN file. >>> >>> But it means distributing a UEFI shell application not only means >>> distributing a .EFI file but also distributing a .MAN file. If the >>> text formatted .MAN file is corrupted (edited by user by mistake), or >>> is missing (deleted by user by mistake), no help will be shown to user. >>> >>> So I propose to embedded the help message inside the .EFI file in a PE >>> resource section and the algorithm to find help for a standalone >>> application is as following. >>> >>> Search command.man file for valid help content If command.man exists >>> and help content is valid: >>> Display the help >>> Else: >>> Load the command.efi (do not start it) Check whether the ImageHandle >>> has EFI_HII_PACKAGE_LIST_PROTOCOL_GUID installed Check all strings in >>> the HII packages to find a string which follows spec defined help >>> format If the string >>> exists: >>> Display the help >>> Else: >>> Show "no Help" >>> >>> Any comments, concerns? >>> >>> >>> Regards, >>> Ray >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> [email protected] <mailto:[email protected]> >>> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=K073WsXs4JYJUmAO3NRo8GG0FMcHo0U2P4Lh3fVLZw4&s=wcp2bivI8l8Y9yu4AxZNYG0uDpFCdJfXL7_9o2rsfjo&e= >>> >>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=K073WsXs4JYJUmAO3NRo8GG0FMcHo0U2P4Lh3fVLZw4&s=wcp2bivI8l8Y9yu4AxZNYG0uDpFCdJfXL7_9o2rsfjo&e=> >>> >>> _______________________________________________ >>> edk2-devel mailing list >>> [email protected] <mailto:[email protected]> >>> https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=K073WsXs4JYJUmAO3NRo8GG0FMcHo0U2P4Lh3fVLZw4&s=wcp2bivI8l8Y9yu4AxZNYG0uDpFCdJfXL7_9o2rsfjo&e= >>> >>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=K073WsXs4JYJUmAO3NRo8GG0FMcHo0U2P4Lh3fVLZw4&s=wcp2bivI8l8Y9yu4AxZNYG0uDpFCdJfXL7_9o2rsfjo&e=> >>> > _______________________________________________ > edk2-devel mailing list > [email protected] <mailto:[email protected]> > https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=K073WsXs4JYJUmAO3NRo8GG0FMcHo0U2P4Lh3fVLZw4&s=wcp2bivI8l8Y9yu4AxZNYG0uDpFCdJfXL7_9o2rsfjo&e= > > <https://urldefense.proofpoint.com/v2/url?u=https-3A__lists.01.org_mailman_listinfo_edk2-2Ddevel&d=BQICAg&c=eEvniauFctOgLOKGJOplqw&r=1HnUuXD1wDvw67rut5_idw&m=K073WsXs4JYJUmAO3NRo8GG0FMcHo0U2P4Lh3fVLZw4&s=wcp2bivI8l8Y9yu4AxZNYG0uDpFCdJfXL7_9o2rsfjo&e=> _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

