All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dmitry Voytik <dvv.kernel@gmail.com>
To: mmarek@suse.cz
Cc: linux-kernel@vger.kernel.org, Dmitry Voytik <dvv.kernel@gmail.com>
Subject: [PATCH] nconf: add j, k and l keys for menu navigation
Date: Fri, 21 Dec 2012 23:12:25 +0400	[thread overview]
Message-ID: <1356117145-14158-1-git-send-email-dvv.kernel@gmail.com> (raw)

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


             reply	other threads:[~2012-12-21 19:12 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-21 19:12 Dmitry Voytik [this message]
2012-12-21 20:23 ` [PATCH] nconf: add j, k and l keys for menu navigation Stephen Boyd
2012-12-22  5:27   ` Dmitry Voytik
2012-12-28 18:51 ` Dmitry Voytik
2012-12-28 19:40   ` [PATCH] nconf: add vi-style command keys for the " Dmitry Voytik
2012-12-29 22:33     ` [PATCH 2/2] nconf: function keys line, change background color for better readability Roland Eggner
2013-01-14 22:20       ` Yann E. MORIN
2013-01-14 22:26         ` Yann E. MORIN
2012-12-29 22:34     ` [PATCH 1/2] nconf: add keybindings for vi-style menu navigation, rewrite help texts Roland Eggner
2013-01-08 22:04       ` Yann E. MORIN
2013-01-14 18:24       ` Yann E. MORIN
2013-01-15 16:10         ` Roland Eggner
2013-01-15 16:26           ` [PATCH v2 " Roland Eggner
2013-01-15 16:36             ` [PATCH v2stable " Roland Eggner
2013-01-15 17:39               ` Yann E. MORIN
2013-01-15 22:27             ` [PATCH v2 " Yann E. MORIN
2013-01-16 20:19               ` Roland Eggner
2013-01-16 12:48             ` Michal Marek
2013-01-08 21:57     ` [PATCH] nconf: add vi-style command keys for the menu navigation Yann E. MORIN
2013-01-14 22:10     ` Yann E. MORIN
2013-01-15 17:12       ` Roland Eggner
2013-01-15 17:38         ` Yann E. MORIN
2013-01-15 17:55           ` Roland Eggner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1356117145-14158-1-git-send-email-dvv.kernel@gmail.com \
    --to=dvv.kernel@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mmarek@suse.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.