Taken from [this answer][1], you can use global-set-key like this (global-set-key (kbd "C-`") (kbd "<escape>")) Which will treat ``C-` `` as <kbd>escape</kbd> This does seem to have some problems though if the second combination doesn't execute a function. So if <kbd>escape</kbd> is being used like `Meta`, then it doesn't work correctly. But it seems to work for commands bound to functions. [1]: https://stackoverflow.com/a/4535803/2499035