[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Complete 'set root=('
From: |
Vladimir 'φ-coder/phcoder' Serbinenko |
Subject: |
Re: [PATCH] Complete 'set root=(' |
Date: |
Mon, 07 Jun 2010 22:54:41 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100515 Icedove/3.0.4 |
Go ahead.
On 06/03/2010 02:55 PM, Colin Watson wrote:
> While reviewing the Texinfo documentation for references to GRUB Legacy
> constructs that needed to be updated, I found some discussion of
> completion that used "root (<TAB>" as an example. For GRUB 2, this
> would need to become "set root=(<TAB>" - but that doesn't work! The
> completion code isn't smart enough to complete only the part after the
> '=' in this case.
>
> What do people think about the following patch, which makes this work so
> that we can document it with a clear conscience?
>
> 2010-06-03 Colin Watson <address@hidden>
>
> * normal/completion.c (grub_normal_do_completion): When
> completing arguments to "set" and the current word contains an
> equals sign, skip to after the equals sign before starting
> completion.
>
> === modified file 'normal/completion.c'
> --- normal/completion.c 2010-01-20 08:12:47 +0000
> +++ normal/completion.c 2010-06-03 12:49:47 +0000
> @@ -414,6 +414,14 @@ grub_normal_do_completion (char *buf, in
> else
> current_word = argv[argc - 1];
>
> + if (argc > 1 && ! grub_strcmp (argv[0], "set"))
> + {
> + char *equals = grub_strchr (current_word, '=');
> + if (equals)
> + /* Complete the value of the variable. */
> + current_word = equals + 1;
> + }
> +
> /* Determine the state the command line is in, depending on the
> state, it can be determined how to complete. */
> cmdline_state = get_state (buf);
>
> Thanks,
>
>
--
Regards
Vladimir 'φ-coder/phcoder' Serbinenko
signature.asc
Description: OpenPGP digital signature