Skip to content

What do these mean: C-h, C-M-a, RET, ESC a, etc.?

  • C-x: press the x key while holding down the Control key
  • M-x: press the x key while holding down the Meta key (if your computer doesn’t have a Meta key, see What if I don’t have a Meta key?)
  • M-C-x: press the x key while holding down both Control and Meta
  • C-M-x: a synonym for the above
  • LFD: Linefeed or Newline; same as C-j
  • RET: Return, sometimes marked Enter; same as C-m
  • DEL: Delete, usually not the same as Backspace; same as C-? (see Why does the Backspace key invoke help?, if deleting invokes Emacs help)
  • ESC: Escape; same as C-[
  • TAB: Tab; same as C-i
  • SPC: Space bar

Key sequences longer than one key (and some single-key sequences) are written inside quotes or on lines by themselves, like this:

kbd
  M-x frobnicate-while-foo RET

Any real spaces in such a key sequence should be ignored; only SPC really means press the space key.

The ASCII code sent by C-x (except for C-?) is the value that would be sent by pressing just x minus 96 (or 64 for upper-case X) and will be from 0 to 31. On Unix and GNU/Linux terminals, the ASCII code sent by M-x is the sum of 128 and the ASCII code that would be sent by pressing just x. Essentially, Control turns off bits 5 and 6 and Meta turns on bit 7[1].

C-? (aka DEL) is ASCII code 127. It is a misnomer to call C-? a “control” key, since 127 has both bits 5 and 6 turned ON. Also, on very few keyboards does C-? generate ASCII code 127.

See Keys in The GNU Emacs Manual.


  1. DOS and Windows terminals don’t set bit 7 when the Meta key is pressed. ↩︎