Hi Rasmus, On Tue, 2 Jun 2020 at 08:36, Rasmus Villemoes <rasmus.villem...@prevas.dk> wrote: > > On 02/06/2020 15.22, Simon Glass wrote: > > Hi Rasmus, > > > > On Tue, 2 Jun 2020 at 03:13, Rasmus Villemoes > > <rasmus.villem...@prevas.dk> wrote: > >> > >> On 31/05/2020 16.07, Simon Glass wrote: > >>> Hi Rasmus, > >>> > >>> On Tue, 19 May 2020 at 16:01, Rasmus Villemoes > >>> <rasmus.villem...@prevas.dk> wrote: > >>>> > > > > [..] > > > >>>> +int do_rtc(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) > >>>> +{ > >>>> + static int curr_rtc = 0; > >>>> + struct udevice *dev; > >>>> + int ret, idx; > >>>> + > >>>> + if (argc < 2) > >>>> + return CMD_RET_USAGE; > >>>> + > >>>> + argc--; > >>>> + argv++; > >>>> + > >>>> + if (!strcmp(argv[0], "list")) { > >>> > >>> It is comment in U-Boot to just check the letters that are needed. So > >>> here you could do (*argv[0] == 'l') > >> > >> Yes, and I consider that an anti-pattern. It makes it impossible to > >> later introduce another (sub)command which starts with a > >> previously-unique prefix. Now, if that "just type a unique prefix" > >> wasn't official, so scripts were always supposed to use the full names, > >> it wouldn't be that big a problem (scripts written for later versions of > >> U-Boot, or U-Boots configured with more (sub)commands, could still fail > >> silently if used on an earlier U-Boot or one with fewer (sub)commands > >> instead of producing a "usage" error message), but > >> https://www.denx.de/wiki/view/DULG/UBootCommandLineInterface explicitly > >> mentions that as a feature (and says h can be used for help, which it > >> can't when the hash command is built in, perfectly exemplifying what I'm > >> talking about). > > > > Hah funny. Using an abbreviation is only possible if no other command > > starts with the same leters. > > > > It is certainly very risky to use abbreviations in scripts. I would > > not recommend it. Abbreviations are for interactive use. If you have > > auto-completion on you can use tab. > > Exactly, so the ability to use the abbreviated form doesn't really buy > anything - it's risky in scripts, and interactively, it merely saves a > tab keystroke (and that's all lost in the cognitive overhead of having > to remember just what abbrev is enough).
Not quite: - tab is an extra, unnecessary keystroke - many comments don't implement auto-complete (e.g. try 'gpio i' - auto-complete adds to code size - fully checking the string adds to code size > > > But here we are talking about a sub-command, which is a bit more > > controlled, in that it doesn't depend on what other commands the user > > enables. > > True, but the same point applies; if I allowed "rtc w", one couldn't > easily later add an "rtc wobble" subcommand (ok, my imagination is > lacking, but you get the idea). > > > Anyway, it's up to you what you want to do here. > > In that case I'll keep checking for the full name of subcommands. OK. Regards, Simon