diff src/events.c @ 259:11cf20601dec r20-5b28

Import from CVS: tag r20-5b28
author cvs
date Mon, 13 Aug 2007 10:23:02 +0200
parents 83b3d10dcba9
children 405dd6d1825b
line wrap: on
line diff
--- a/src/events.c	Mon Aug 13 10:22:10 2007 +0200
+++ b/src/events.c	Mon Aug 13 10:23:02 2007 +0200
@@ -1000,13 +1000,17 @@
 	case 'J': k = QKlinefeed; m &= ~MOD_CONTROL; break;
 	case 'M': k = QKreturn;	  m &= ~MOD_CONTROL; break;
 	case '[': k = QKescape;	  m &= ~MOD_CONTROL; break;
-# if 0
-	  /* This is probably too controversial... */
-	case 'H': k = QKbackspace; m &= ~MOD_CONTROL; break;
-# endif
+	default:
+	  if (c - '@' == XCHAR(con->tty_erase_char)) {
+	    k = QKbackspace;
+	    m &= ~MOD_CONTROL;
+	  }
+	  break;
 	}
       if (c >= 'A' && c <= 'Z') c -= 'A'-'a';
     }
+  else if (c == XCHAR(con->tty_erase_char))
+    k = QKbackspace;
   else if (c == 127)
     k = QKdelete;
   else if (c == ' ')