This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: building gdb with TUI support on Windows


Hi Eli,
Thanks for sharing.

I launch gdb from DOS, using:
1) set PATH=c:\msys64\mingw64\bin;%PATH%
2) c:\gdb\build\gdb\gdb --tui

When launching from DOS, how does it find ~/.inputrc?
Will the following work:
1. Set HOME=c:/temp/
2. populate c:/temp/.inputrc with your contents (for example)
3. Launch gdb

?

Will readline successfully locate the DOS path to ~/.inputrc ?

Thanks,
Ofir Cohen

On 1 January 2015 at 17:46, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Thu, 1 Jan 2015 14:26:08 +0000 (UTC)
>> From: Hannes Domani <ssbssa@yahoo.de>
>>
>> Ofir Cohen <ofircohenn@gmail.com> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]