diff --git a/CHANGELOG.rst b/CHANGELOG.rst index ee4b513d3..5a2c7b075 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -89,6 +89,7 @@ Interactive improvements - ``time`` now emits an error if used after the first command in a pipeline (:issue:`8841`). - ``fish_add_path`` now prints a message for skipped non-existent paths when using the ``-v`` flag. - Since fish 3.2.0, pressing :kbd:`Control-D` while a command is running would end up inserting a space into the next commandline, which has been fixed (:issue:`8871`). +- A bug that caused multi-line prompts to be moved down a line when switching between insert and normal mode has been fixed (:issue:`3481`). New or improved bindings ^^^^^^^^^^^^^^^^^^^^^^^^ diff --git a/src/reader.cpp b/src/reader.cpp index 59522a865..34d29de7d 100644 --- a/src/reader.cpp +++ b/src/reader.cpp @@ -3079,6 +3079,10 @@ void reader_data_t::run_input_command_scripts(const wcstring_list_t &cmds) { wperror(L"tcsetattr"); } termsize_container_t::shared().invalidate_tty(); + + // The input command scripts may have changed our tty - ignore any such changes. + // See #3481. + screen.save_status(); } /// Read normal characters, inserting them into the command line.