diff --git a/ChangeLog b/ChangeLog
index 1234eb3f4d39a67ba4983b6f0bfb89e29ea6cb19..977886985641ae32642cb59593b960d0472229cd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -44,6 +44,9 @@ CVS code -
 	  (Meta-9), Meta-) (Meta-0), and Meta-J, respectively.  Also add
 	  these functions to the main shortcut list, as Pico's practice
 	  of putting them in the search menu is rather odd. (DLR)
+	- Turn off extended input processing (the IEXTEN termios flag)
+	  as nano 1.2.x does.  New function disable_extended_input();
+	  changes to terminal_init(). (DLR)
 - files.c:
   do_insertfile()
 	- Readd the NANO_SMALL #ifdef around the start_again: label to
diff --git a/src/nano.c b/src/nano.c
index 6941da63ef1e709dd384f9a7328c0c263c73e481..6b20c227c75390feb5b5bff120c2b73a242eae46 100644
--- a/src/nano.c
+++ b/src/nano.c
@@ -2917,6 +2917,15 @@ void do_toggle(const toggle *which)
 }
 #endif /* !NANO_SMALL */
 
+void disable_extended_input(void)
+{
+    struct termios term;
+
+    tcgetattr(0, &term);
+    term.c_lflag &= ~IEXTEN;
+    tcsetattr(0, TCSANOW, &term);
+}
+
 void disable_signals(void)
 {
     struct termios term;
@@ -2959,15 +2968,16 @@ void enable_flow_control(void)
  * character at a time and interpret the special control keys), disable
  * translation of carriage return (^M) into newline (^J) so that we can
  * tell the difference between the Enter key and Ctrl-J, and disable
- * echoing of characters as they're typed.  Finally, disable
- * interpretation of the special control keys, and if we're not in
- * preserve mode, disable interpretation of the flow control characters
- * too. */
+ * echoing of characters as they're typed.  Finally, disable extended
+ * input processing, disable interpretation of the special control keys,
+ * and if we're not in preserve mode, disable interpretation of the flow
+ * control characters too. */
 void terminal_init(void)
 {
     cbreak();
     nonl();
     noecho();
+    disable_extended_input();
     disable_signals();
     if (!ISSET(PRESERVE))
 	disable_flow_control();
diff --git a/src/proto.h b/src/proto.h
index d41fa5f9a74a571aee7fc1fcce5cf2ae34e3fdea..0a0068304f35b10b55370c2debcb4c2431afbada 100644
--- a/src/proto.h
+++ b/src/proto.h
@@ -363,6 +363,7 @@ void allow_pending_sigwinch(bool allow);
 #ifndef NANO_SMALL
 void do_toggle(const toggle *which);
 #endif
+void disable_extended_input(void);
 void disable_signals(void);
 #ifndef NANO_SMALL
 void enable_signals(void);