# DP: Handle Debian Backspace/Delete keyboard policy diff -ur readline5-5.0~alpha.orig/terminal.c readline5-5.0~alpha/terminal.c --- readline5-5.0~alpha.orig/terminal.c 2003-09-18 17:03:42.000000000 +0200 +++ readline5-5.0~alpha/terminal.c 2003-09-27 17:15:30.000000000 +0200 @@ -82,7 +82,7 @@ #if !defined (__linux__) # if defined (__EMX__) || defined (NEED_EXTERN_PC) -extern +extern # endif /* __EMX__ || NEED_EXTERN_PC */ char PC, *BC, *UP; #endif /* __linux__ */ @@ -148,6 +148,9 @@ /* Insert key */ static char *_rl_term_kI; +/* The key sequence sent by the Delete key, if any. */ +static char *_rl_term_kD; + /* Cursor control */ static char *_rl_term_vs; /* very visible */ static char *_rl_term_ve; /* normal */ @@ -280,7 +283,7 @@ if (cols) *cols = _rl_screenwidth; } - + void rl_resize_terminal () { @@ -314,6 +317,7 @@ { "ic", &_rl_term_ic }, { "im", &_rl_term_im }, { "kH", &_rl_term_kH }, /* home down ?? */ + { "kD", &_rl_term_kD }, /* delete */ { "kI", &_rl_term_kI }, /* insert */ { "kd", &_rl_term_kd }, { "ke", &_rl_term_ke }, /* end keypad mode */ @@ -492,6 +496,7 @@ rl_bind_keyseq_if_unbound (_rl_term_kh, rl_beg_of_line); /* Home */ rl_bind_keyseq_if_unbound (_rl_term_at7, rl_end_of_line); /* End */ + rl_bind_keyseq_if_unbound (_rl_term_kD, rl_delete); /* Delete */ _rl_keymap = xkeymap; }