Hi,

the following bug report concerning the rxvt-unicode terminfo entry was
sent to the Debian bug tracking system a while ago.  The bottom line is
that that "kIC=\E2$" seems to be a typo and should replaced by
"kIC=\E[2$", which seems plausible to me.  Could you please have a look
whether that is indeed the case?

Regards,
        Sven

--- Begin Message ---
Package: ncurses-base
Version: 5.5-5

The rxvt-unicode terminfo file indicates that the escape sequence is
"ESC 2 $".  This can be seen using `infocmp`:

#       Reconstructed via infocmp from file: /lib/terminfo/r/rxvt-unicode
rxvt-unicode|rxvt-unicode terminal (X Window System), 
        am, bce, bw, ccc, eo, km, mc5i, mir, msgr, npc, xenl, xon,
     [...]
        kDC=\E[3$, kEND=\E[8$, kHOM=\E[7$, kIC=\E2$, kLFT=\E[d, 
                                           ^^^^^^^^
However, the rxvt-unicode source code file command.C says it should
be "\E[2$".  Here is the code:

void
rxvt_term::key_press (XKeyEvent &ev)
{
[...]
              switch (keysym)
                {
                    /* normal XTerm key bindings */
[...]           
                  case XK_Insert:
                    strcpy (kbuf, "\033[2~");
                    break;
[...]

  /*
   * these modifications only affect the static keybuffer
   * pass Shift/Control indicators for function keys ending with `~'
   *
   * eg,
   *   Prior = "ESC[5~"
   *   Shift+Prior = "ESC[5$"
   *   Ctrl+Prior = "ESC[5^"
   *   Ctrl+Shift+Prior = "ESC[5@"
   * Meta adds an Escape prefix (with META8_OPTION, if meta == <escape>).
   */
  if (kbuf[0] == C0_ESC && kbuf[1] == '[' && kbuf[len - 1] == '~')
    kbuf[len - 1] = (shft ? (ctrl ? '@' : '$') : (ctrl ? '^' : '~'));

The last bit of code turns the ~ into a $.

The "bug" is also in the sid version of the file.  I am using etch.

Thanks,
--John

--- End Message ---

Attachment: pgpW35infFUnS.pgp
Description: PGP signature

Reply via email to