diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2014-07-24 10:24:45 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2014-07-24 10:24:45 (GMT) |
commit | 24ad98b98cfa9be1dc704c37a9538a8c0bc113e0 (patch) | |
tree | 5c4534c1d386773a6957c1c26d3a52eeefa57c7c /Modules | |
parent | c78fd527670c312cb35fe959b42f350046424981 (diff) | |
parent | a3c80ce8b7d9ca17641f0bd8cce96791df084b19 (diff) | |
download | cpython-24ad98b98cfa9be1dc704c37a9538a8c0bc113e0.zip cpython-24ad98b98cfa9be1dc704c37a9538a8c0bc113e0.tar.gz cpython-24ad98b98cfa9be1dc704c37a9538a8c0bc113e0.tar.bz2 |
(Merge 3.4) Issue #19884: readline: Disable the meta modifier key if stdout is
not a terminal to not write the ANSI sequence "\033[1034h" into stdout. This
sequence is used on some terminal (ex: TERM=xterm-256color") to enable support
of 8 bit characters.
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/readline.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Modules/readline.c b/Modules/readline.c index 4bba0db..d72e515 100644 --- a/Modules/readline.c +++ b/Modules/readline.c @@ -1019,6 +1019,17 @@ setup_readline(readlinestate *mod_state) mod_state->begidx = PyLong_FromLong(0L); mod_state->endidx = PyLong_FromLong(0L); + + if (!isatty(STDOUT_FILENO)) { + /* Issue #19884: stdout is no a terminal. Disable meta modifier + keys to not write the ANSI sequence "\033[1034h" into stdout. On + terminals supporting 8 bit characters like TERM=xterm-256color + (which is now the default Fedora since Fedora 18), the meta key is + used to enable support of 8 bit characters (ANSI sequence + "\033[1034h"). */ + rl_variable_bind ("enable-meta-key", "off"); + } + /* Initialize (allows .inputrc to override) * * XXX: A bug in the readline-2.2 library causes a memory leak |