*** empty log message ***
authorroot <root>
Thu, 17 Feb 2005 12:23:39 +0000 (12:23 +0000)
committerroot <root>
Thu, 17 Feb 2005 12:23:39 +0000 (12:23 +0000)
doc/etc/rxvt-unicode.terminfo
src/command.C

index 39beeba2057c52f7c5eee2d534bbb853afcdc7c0..18dd7729f56436c67d6fdf363c4da2d86deef39b 100644 (file)
@@ -22,8 +22,12 @@ rxvt-unicode|rxvt-unicode terminal (X Window System),
        ind=^J, is1=\E[?47l\E=\E[?1l, 
        is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, 
        kDC=\E[3$, kIC=\E2$, kEND=\E[8$, kHOM=\E[7$, kLFT=\E[d, kNXT=\E[6$, 
-       kPRV=\E[5$, kRIT=\E[c, ka1=\EOw, ka3=\EOy, kb2=\EOu, kbs=\177, 
-       kc1=\EOq, kc3=\EOs, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, 
+       kPRV=\E[5$, kRIT=\E[c,
+        kbs=\177, 
+        ka1=\EOw, ka3=\EOy,
+        kb2=\EOu,
+       kc1=\EOq, kc3=\EOs,
+        kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, 
        kcuf1=\EOC, kcuu1=\EOA, kdch1=\E[3~, kel=\E[8\^, 
        kend=\E[8~, kent=\EOM, kf1=\E[11~, kf10=\E[21~, 
        kf11=\E[23~, kf12=\E[24~, kf13=\E[25~, kf14=\E[26~, 
index 9c699903099379f314014f59abde6fdf2d8615c4..67d2415cfec9ee8064a40bd054d454d6e827f9ce 100644 (file)
@@ -27,7 +27,7 @@
  * Copyright (c) 2001      Marius Gedminas
  *                             - Ctrl/Mod4+Tab works like Meta+Tab (options)
  * Copyright (c) 2003      Rob McMullen <robm@flipturn.org>
- * Copyright (c) 2003-2004 Marc Lehmann <pcg@goof.com>
+ * Copyright (c) 2003-2005 Marc Lehmann <pcg@goof.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -119,7 +119,15 @@ static unsigned short iso14755_symtab[] = {
   XK_Print,            0x2399,
 
   XK_space,            0x2423,
+
+#ifdef XK_KP_Begin
+  XK_KP_Prior,         0x21de,
+  XK_KP_Next,          0x21df,
+  XK_KP_Begin,         0x2320,
+  XK_KP_Insert,                0x2380,
+  XK_KP_Delete,                0x2326,
   XK_KP_Space,         0x2422,
+#endif
   0,
 };
 
@@ -514,6 +522,16 @@ rxvt_term::lookup_key (XKeyEvent &ev)
                     break;
 #endif
 #ifndef NO_DELETE_KEY
+# ifdef XK_KP_Prior
+                  case XK_KP_Delete:
+                    /* allow shift to override */
+                    if ((priv_modes & PrivMode_aplKP) ? !shft : shft)
+                      {
+                        strcpy (kbuf, "\033On");
+                        break;
+                      }
+                    /* FALLTHROUGH */
+# endif
                   case XK_Delete:
                     strcpy (kbuf, key_delete);
                     break;
@@ -626,13 +644,6 @@ rxvt_term::lookup_key (XKeyEvent &ev)
                     strcpy (kbuf, "\033Ou");
                     break;
 
-                  case XK_KP_Insert:
-                    strcpy (kbuf, "\033Op");
-                    break;
-
-                  case XK_KP_Delete:
-                    strcpy (kbuf, "\033On");
-                    break;
 #endif
                   case XK_KP_F1:       /* "\033OP" */
                   case XK_KP_F2:       /* "\033OQ" */
@@ -674,6 +685,17 @@ rxvt_term::lookup_key (XKeyEvent &ev)
                   case XK_Find:
                     strcpy (kbuf, "\033[1~");
                     break;
+
+#ifdef XK_KP_End
+                  case XK_KP_Insert:
+                    /* allow shift to override */
+                    if ((priv_modes & PrivMode_aplKP) ? !shft : shft)
+                      {
+                        strcpy (kbuf, "\033Op");
+                        break;
+                      }
+                    /* FALLTHROUGH */
+#endif
                   case XK_Insert:
                     strcpy (kbuf, "\033[2~");
                     break;