Subject: bug#34815: 26.1; read-shell-command globally sets comint-input-autoexpand to 'history

From: [email-masked]
Date: Mon, 11 Mar 2019 11:08:42 -0700

Calling "shell-command", "async-shell-command", or any other command
calling "read-shell-command", globally sets the variable
"comint-input-autoexpand" to 'history. "comint-input-autoexpand" is
supposed to be a buffer-local variable with a default value of nil, and
setting it globally can interfere with other shells that use the "!"
symbol, e.g. the IPython shell.

To reproduce, first "emacs -Q", then check that
"comint-input-autoexpand" has value nil. Then type:
"M-!", "echo foo", "RET".
Then check that comint-input-autoexpand has been set to 'history.

jabranham on the freenode #emacs channel helped me track down and
consistently reproduce this bug.

--Jack