Re: [RFC 0/1] mconf: Emacs-like isearch
From: Randy Dunlap
Date: Wed Jun 06 2018 - 19:31:57 EST
On 06/06/2018 03:32 PM, Dirk Gouders wrote:
> Randy Dunlap <rdunlap@xxxxxxxxxxxxx> writes:
>
>> On 06/06/2018 02:56 PM, Dirk Gouders wrote:
>>> Hello,
>>>
>>> being an Emacs user, I frequently find myself pressing CTRL-s in mconf
>>> to search for some menu entry, especially in large menus.
>>>
>>> I decided to implement a basic isearch in mconf and would like to hear
>>> if others find this functionality useful, as well.
>>>
>>> The new functionality is started with pressing CTRL-s followed by
>>> characters that form the search string. To search for further
>>> occurences of an entered string, press CTRL-s instead of further
>>> characters.
>>>
>>> For example: to navigate to the USB device drivers, press CTRL-s de ENTER ENTER usb ENTER ENTER
>>
>> Not being an emacs user, what is the "de" for above?
>
> "de" (with my .config) causes a match for "Device Drivers" --
> no other menu entry matching the string "de" is befor that entry.
>
Device Drivers is the first match for me also.
To get to the USB drivers, I have to enter:
CTRL-s de ENTER ENTER CTRL-s usb ENTER ENTER
>>
>>> Pressing just CTRL-s subsequently results in line-by-line navigation
>>> through the menu (search for empty strings).
>>>
>>> The isearch is terminated by pressing either ESC ESC or ENTER.
>>>
>>> Because I expect that errors are found in the code and changes are requested, I
>>> completely left out the documentation part and will add it to V2
>>> should anyone find this functionality useful.
>>
>> Hm, it seems to take 2 entries of Ctrl-s to begin the search??
>> No, it takes 2 entries of Ctrl-s to display the "isearch:" prompt,
>> but entering one Ctrl-s + a string will display it also.
>>
>> Anyway, I am having trouble getting the USB drivers example to work.
>
> Yes, I should have stated that this example explains what _I_ have to do to
> navigate to the USB device drivers. Probably, "de" in your case matches
> some other menu entry and the navigation requires more or other input.
>
> I'm sorry for causing confusion.
No problem.
Thanks.
> Dirk
>
>>> Thanks,
>>>
>>> Dirk
>>>
>>> Dirk Gouders (1):
>>> Emacs-like isearch for mconf.
>>>
>>> scripts/kconfig/lxdialog/dialog.h | 5 ++
>>> scripts/kconfig/lxdialog/menubox.c | 140 ++++++++++++++++++++++++++++++++++++-
>>> scripts/kconfig/lxdialog/util.c | 1 +
>>> 3 files changed, 145 insertions(+), 1 deletion(-)
>>>
>>
>> thanks,
--
~Randy