ESC key causes a small delay in terminal due to its Alt+ behavior

Here's an actual fix. Add the following to .tmux.conf:

set -s escape-time 0

As mentioned in the comments: The server may need to be restarted.  tmux kill-server kills the server; you may need to restart it.  Alternatively, you can reload the configuration file from the command prompt inside tmux by typing your tmux prefix (default Ctrl+B) followed by : and entering source-file ~/.tmux.conf.


The delay is caused by the input routines that may have to decide whether a function key was pressed or not. For this the input routine starts a timer whenever it reads in an ESC character. Characters that are read from the input before the timer runs out (let's say a tenth of a second) are then interpreted as ESC sequence of a function key and this ESC-sequence will be compared with known strings of ESC secuences from the terminfo or the termcap data base (depends on which low level routines are used).

Of cource this is annoying for applications where ESC is used on its own, but I don't know of any workaround for this.

Regarding your question with the behaviour of ESC a = Meta a:

Meta keys were not available with all keyboards. As a workaround it was often allowed to use the ESC key to be pressed before the other key.


While this may not directly fix your issue, I have found that I can use <Ctrl> c to exit out of insert mode. This can also be used to exit tmux's screen scrolling (which can be invoked using <leader> PgUP)