lkml.org 
[lkml]   [2012]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] nconf: add j, k and l keys for menu navigation
    Hi Michal,

    Please don't apply this patch. I am going to send the new version.
    Thank you.

    On Fri, Dec 21, 2012 at 11:12:25PM +0400, Dmitry Voytik wrote:
    > Add vi-style keys for menu navigation: press j/k for down/up navigation
    > and l for entering to a submenu. Unfortantely h key is reserved for
    > the items help.
    >
    > Signed-off-by: Dmitry Voytik <dvv.kernel@gmail.com>
    > ---
    > scripts/kconfig/nconf.c | 13 ++++++++-----
    > 1 file changed, 8 insertions(+), 5 deletions(-)
    >
    > diff --git a/scripts/kconfig/nconf.c b/scripts/kconfig/nconf.c
    > index ce93e87..ccf6766 100644
    > --- a/scripts/kconfig/nconf.c
    > +++ b/scripts/kconfig/nconf.c
    > @@ -38,10 +38,10 @@ static const char nconf_readme[] = N_(
    > "\n"
    > "Menus\n"
    > "----------\n"
    > -"o Use the Up/Down arrow keys (cursor keys) to highlight the item\n"
    > -" you wish to change use <Enter> or <Space>. Goto submenu by \n"
    > -" pressing <Enter> of <right-arrow>. Use <Esc> or <left-arrow> to go back.\n"
    > -" Submenus are designated by \"--->\".\n"
    > +"o Use the Up/Down arrow keys (cursor keys) or <j>/<k> to highlight\n"
    > +" the item you wish to change use <Enter> or <Space>. Goto submenu by\n"
    > +" pressing <Enter>, <right-arrow> or <l>. Use <Esc> or <left-arrow>\n"
    > +" to go back. Submenus are designated by \"--->\".\n"
    > "\n"
    > " Searching: pressing '/' triggers interactive search mode.\n"
    > " nconfig performs a case insensitive search for the string\n"
    > @@ -1115,9 +1115,11 @@ static void conf(struct menu *menu)
    > (struct menu *) item_data()))
    > break;
    > switch (res) {
    > + case 'j':
    > case KEY_DOWN:
    > menu_driver(curses_menu, REQ_DOWN_ITEM);
    > break;
    > + case 'k':
    > case KEY_UP:
    > menu_driver(curses_menu, REQ_UP_ITEM);
    > break;
    > @@ -1141,7 +1143,7 @@ static void conf(struct menu *menu)
    > if (res == 10 || res == 27 ||
    > res == 32 || res == 'n' || res == 'y' ||
    > res == KEY_LEFT || res == KEY_RIGHT ||
    > - res == 'm')
    > + res == 'm' || res == 'l')
    > break;
    > refresh_all_windows(main_window);
    > }
    > @@ -1170,6 +1172,7 @@ static void conf(struct menu *menu)
    > else if (item_is_tag('m'))
    > conf(submenu);
    > break;
    > + case 'l':
    > case KEY_RIGHT:
    > case 10: /* ENTER WAS PRESSED */
    > switch (item_tag()) {
    > --
    > 1.7.9.5
    >


    \
     
     \ /
      Last update: 2012-12-28 20:21    [W:4.332 / U:0.052 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site