Emacs "berpikir" bahwa C-madalah RETkarena "Control M" adalah ASCII kontrol karakter "carriage return". Meskipun alasan ini adalah "historis" Emacs dapat berjalan di terminal dan karenanya perlu mendukung cara terminal masih bekerja sekarang.
Coba buka jendela terminal, ketikkan " ls", dan tekan C-m. Anda akan melihat bahwa itu ditafsirkan sebagai "kembali", meskipun Anda tidak di Emacs.
Lihat Karakter kontrol di Wikipedia untuk detail tentang karakter kontrol.
Untuk membedakan C-mdari RETdalam GUI Emacs, orang dapat mengubah C-ike C-mdalam jawaban @nispio :
(define-key input-decode-map [?\C-m] [C-m])
;; now we can do this:
(defun my-command ()
(interactive)
(message "C-m is not the same as RET any more!"))
(global-set-key (kbd "<C-m>") #'my-command)
Lihat juga