… | |
… | |
559 | kbuf[0] = (!! (priv_modes & PrivMode_BackSpace) |
559 | kbuf[0] = (!! (priv_modes & PrivMode_BackSpace) |
560 | ^ !!ctrl) ? '\b' : '\177'; |
560 | ^ !!ctrl) ? '\b' : '\177'; |
561 | kbuf[1] = '\0'; |
561 | kbuf[1] = '\0'; |
562 | } |
562 | } |
563 | else |
563 | else |
564 | strcpy (kbuf, key_backspace); |
564 | strcpy (kbuf, rs[Rs_backspace_key]); |
565 | break; |
565 | break; |
566 | #endif |
566 | #endif |
567 | #ifndef NO_DELETE_KEY |
567 | #ifndef NO_DELETE_KEY |
568 | # ifdef XK_KP_Prior |
568 | # ifdef XK_KP_Delete |
569 | case XK_KP_Delete: |
569 | case XK_KP_Delete: |
570 | /* allow shift to override */ |
570 | /* allow shift to override */ |
571 | if ((priv_modes & PrivMode_aplKP) ? !shft : shft) |
571 | if ((priv_modes & PrivMode_aplKP) ? !shft : shft) |
572 | { |
572 | { |
573 | strcpy (kbuf, "\033On"); |
573 | strcpy (kbuf, "\033On"); |
574 | break; |
574 | break; |
575 | } |
575 | } |
576 | /* FALLTHROUGH */ |
576 | /* FALLTHROUGH */ |
577 | # endif |
577 | # endif |
578 | case XK_Delete: |
578 | case XK_Delete: |
579 | strcpy (kbuf, key_delete); |
579 | strcpy (kbuf, rs[Rs_delete_key]); |
580 | break; |
580 | break; |
581 | #endif |
581 | #endif |
582 | case XK_Tab: |
582 | case XK_Tab: |
583 | if (shft) |
583 | if (shft) |
584 | strcpy (kbuf, "\033[Z"); |
584 | strcpy (kbuf, "\033[Z"); |
… | |
… | |
2795 | rxvt_term::process_csi_seq () |
2795 | rxvt_term::process_csi_seq () |
2796 | { |
2796 | { |
2797 | unicode_t ch, priv, i; |
2797 | unicode_t ch, priv, i; |
2798 | unsigned int nargs, p; |
2798 | unsigned int nargs, p; |
2799 | int n, ndef; |
2799 | int n, ndef; |
2800 | int arg[ESC_ARGS]; |
2800 | int arg[ESC_ARGS] = { }; |
2801 | |
2801 | |
2802 | memset (arg, 0, sizeof (arg)); |
|
|
2803 | nargs = 0; |
2802 | nargs = 0; |
2804 | |
2803 | |
2805 | priv = 0; |
2804 | priv = 0; |
2806 | ch = cmd_getc (); |
2805 | ch = cmd_getc (); |
2807 | if (ch >= '<' && ch <= '?') |
2806 | if (ch >= '<' && ch <= '?') |