From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4988 invoked by alias); 1 Jan 2015 15:47:05 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 4978 invoked by uid 89); 1 Jan 2015 15:47:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.6 required=5.0 tests=AWL,BAYES_00,SPF_SOFTFAIL autolearn=no version=3.3.2 X-HELO: mtaout29.012.net.il Received: from mtaout29.012.net.il (HELO mtaout29.012.net.il) (80.179.55.185) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Thu, 01 Jan 2015 15:47:04 +0000 Received: from conversion-daemon.mtaout29.012.net.il by mtaout29.012.net.il (HyperSendmail v2007.08) id <0NHI000008O3BE00@mtaout29.012.net.il> for gdb@sourceware.org; Thu, 01 Jan 2015 17:44:08 +0200 (IST) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by mtaout29.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0NHI00HQ391KFX80@mtaout29.012.net.il>; Thu, 01 Jan 2015 17:44:08 +0200 (IST) Date: Thu, 01 Jan 2015 15:47:00 -0000 From: Eli Zaretskii Subject: Re: building gdb with TUI support on Windows In-reply-to: <1158788672.3333170.1420122368468.JavaMail.yahoo@jws11107.mail.ir2.yahoo.com> To: Hannes Domani Cc: gdb@sourceware.org Reply-to: Eli Zaretskii Message-id: <83lhlmbj0v.fsf@gnu.org> References: <1158788672.3333170.1420122368468.JavaMail.yahoo@jws11107.mail.ir2.yahoo.com> X-IsSubscribed: yes X-SW-Source: 2015-01/txt/msg00004.txt.bz2 > Date: Thu, 1 Jan 2015 14:26:08 +0000 (UTC) > From: Hannes Domani > > Ofir Cohen schrieb am 22:12 Mittwoch, 31.Dezember 2014: > > In DOS, "Ctrl + Arrow-Left" skips an entire word (like Alt+B/F on bash). > > The key sequence of: Esc + b, or Esc + f, seems to accomplish that in gdb. > > > > Do you have any idea how to make Ctrl+Left/Right to behave like Esc+b/f? > > > > Do I need to intercept these control codes / keys in curses? > > Add this to gdb: > > --- a/readline/readline.c 2015-01-01 14:47:03.999708300 +0100 > +++ b/readline/readline.c 2015-01-01 14:47:11.399718700 +0100 > @@ -1163,6 +1163,9 @@ > rl_bind_keyseq_if_unbound ("\340O", rl_end_of_line); > rl_bind_keyseq_if_unbound ("\340S", rl_delete); > rl_bind_keyseq_if_unbound ("\340R", rl_overwrite_mode); > + > + rl_bind_keyseq_if_unbound ("\340s", rl_backward_word); /* ctrl-left */ > + rl_bind_keyseq_if_unbound ("\340t", rl_forward_word); /* ctrl-right */ > #endif > > _rl_keymap = xkeymap; > > > > And this to pdcurses: > > --- a/pdcurses/getch.c 2015-01-01 14:56:25.870495000 +0100 > +++ b/pdcurses/getch.c 2015-01-01 14:56:33.250505300 +0100 > @@ -272,6 +272,12 @@ > case KEY_IC: > backhalf = 'R'; > break; > + case CTL_LEFT: > + backhalf = 's'; > + break; > + case CTL_RIGHT: > + backhalf = 't'; > + break; > } > if (backhalf) > { And the following magic in my ~/.inputrc does the same (and a bit more) without any source-level changes: set convert-meta off "\340\163": backward-word # Ctrl-left "\340\164": forward-word # Ctrl-right "\340\223": kill-word # Ctrl-Delete "\340\165": kill-line # Ctrl-End