EmacsKeyBindings - robmcmullen/peppy GitHub Wiki

Here's a list of Emacs keybindings to be used as a compatibility starting point. These are from XEmacs Python mode.

Local Bindings:
key             binding
---             -------

:		py-electric-colon
backspace	py-electric-backspace
delete		py-electric-delete
return		py-newline-and-indent
C-c		<< Prefix Command >>
C-m		py-newline-and-indent
C-x		<< Prefix Command >>
M-C-a		py-beginning-of-def-or-class
M-C-e		py-end-of-def-or-class
M-C-h		py-mark-def-or-class
M-C-x		py-execute-def-or-class

C-c !		py-shell
C-c #		py-comment-region
C-c -		py-up-exception
C-c :		py-guess-indent-offset
C-c <		py-shift-region-left
C-c =		py-down-exception
C-c >		py-shift-region-right
C-c ?		py-describe-mode
C-c |		py-execute-region
C-c backspace	py-help-at-point
C-c return	py-execute-import-or-reload
C-c tab		py-indent-region
C-c C-b		py-submit-bug-report
C-c C-c		py-comment-region
C-c C-d		py-pdbtrack-toggle-stack-tracking
C-c C-h		py-help-at-point
C-c C-i		py-indent-region
C-c C-k		py-mark-block
C-c C-l		py-shift-region-left
C-c C-m		py-execute-import-or-reload
C-c C-n		py-next-statement
C-c C-p		py-previous-statement
C-c C-r		py-shift-region-right
C-c C-s		py-execute-string
C-c C-t		py-toggle-shells
C-c C-u		py-goto-block-up
C-c C-v		py-version
C-c C-w		py-pychecker-run
C-c C-x		py-execute-buffer

C-x n		<< Prefix Command >>

C-x n d		py-narrow-to-defun

Global Bindings:
key             binding
---             -------

! .. 9		self-insert-command
; .. ~		self-insert-command
? .. ÿ		self-insert-command
again		repeat-complex-command
begin		beginning-of-line
button1		mouse-track
button1up	release-toolbar-button
button2		mouse-track
button3		popup-mode-menu
button4up	mwheel-scroll
button5up	mwheel-scroll
copy		copy-primary-selection
cut		kill-primary-selection
deletechar	delete-char
deleteline	kill-line
down		next-line
end		end-of-line
execute		execute-extended-command
f1		<< help-command >>
f10		kill-rectangle
f11		yank-rectangle
f2		what-line
f5		iswitchb-buffer
f6		query-replace
f7		query-replace-regexp
f8		function-menu
f9		copy-rectangle-to-register
find		search-forward
help		help-for-help
home		beginning-of-line
hpBackTab	Anonymous Lambda
insert		overwrite-mode
insertline	open-line
kp-0		self-insert-command
kp-1		self-insert-command
kp-2		self-insert-command
kp-3		self-insert-command
kp-4		self-insert-command
kp-5		self-insert-command
kp-6		self-insert-command
kp-7		self-insert-command
kp-8		self-insert-command
kp-9		self-insert-command
kp-add		self-insert-command
kp-decimal	self-insert-command
kp-delete	backward-or-forward-delete-char
kp-divide	self-insert-command
kp-down		next-line
kp-end		end-of-line
kp-enter	Kbd Macro: return
kp-equal	self-insert-command
kp-home		beginning-of-line
kp-insert	overwrite-mode
kp-left		backward-char-command
kp-multiply	self-insert-command
kp-next		scroll-up-command
kp-prior	scroll-down-command
kp-right	forward-char-command
kp-separator	self-insert-command
kp-space	self-insert-command
kp-subtract	self-insert-command
kp-tab		Kbd Macro: tab
kp-up		previous-line
left		backward-char-command
linefeed	query-replace
menu		popup-mode-menu
next		scroll-up-command
paste		yank-clipboard-selection
prior		scroll-down-command
redo		repeat-complex-command
right		forward-char-command
space		self-insert-command
tab		indent-for-tab-command
undo		undo
up		previous-line
C- 		set-mark-command
C--		negative-argument
C-/		undo
C-0 .. C-9	digit-argument
C-<		mark-beginning-of-buffer
C->		mark-end-of-buffer
C-@		set-mark-command
C-T		transpose-line-down
C-]		abort-recursive-edit
C-_		undo
C-a		beginning-of-line
C-b		backward-char-command
C-d		delete-char
C-e		end-of-line
C-f		forward-char-command
C-g		keyboard-quit
C-h		<< help-command >>
C-i		indent-for-tab-command
C-j		query-replace
C-k		kill-line
C-l		recenter
C-n		next-line
C-o		open-line
C-p		previous-line
C-q		quoted-insert
C-r		isearch-backward
C-s		isearch-forward
C-t		transpose-chars
C-u		universal-argument
C-v		scroll-up-command
C-w		kill-region
C-y		yank
C-z		suspend-emacs-or-iconify-frame
C-begin		beginning-of-buffer
C-button1	mouse-track-insert
C-button2	x-set-point-and-move-selection
C-down		forward-block-of-lines
C-end		end-of-buffer
C-home		beginning-of-buffer
C-insert	copy-primary-selection
C-kp-down	forward-block-of-lines
C-kp-end	end-of-buffer
C-kp-home	beginning-of-buffer
C-kp-left	backward-word
C-kp-next	scroll-left
C-kp-prior	scroll-right
C-kp-right	forward-word
C-kp-up		backward-block-of-lines
C-left		backward-word
C-next		scroll-left
C-prior		scroll-right
C-right		forward-word
C-space		set-mark-command
C-tab		other-window
C-up		backward-block-of-lines
M-!		shell-command
M-#		calc-dispatch
M-$		ispell-word
M-%		query-replace
M-'		abbrev-prefix-mark
M-(		insert-parentheses
M-)		move-past-close-and-reindent
M-*		pop-tag-mark
M-,		tags-loop-continue
M--		negative-argument
M-.		find-tag
M-/		dabbrev-expand
M-0 .. M-9	digit-argument
M-:		eval-expression
M-;		indent-for-comment
M-<		beginning-of-buffer
M-=		count-lines-region
M->		end-of-buffer
M-?		<< help-command >>
M-@		mark-word
M-T		transpose-line-up
M-V		scroll-other-window-down
M-[		kill-primary-selection
M-\		delete-horizontal-space
M-]		copy-primary-selection
M-^		delete-indentation
M-a		backward-sentence
M-b		backward-word
M-c		capitalize-region-or-word
M-d		kill-word
M-e		forward-sentence
M-f		forward-word
M-g		goto-line
M-h		mark-paragraph
M-i		tab-to-tab-stop
M-j		indent-new-comment-line
M-k		kill-sentence
M-l		downcase-region-or-word
M-m		back-to-indentation
M-n		scroll-up-command
M-p		scroll-down-command
M-q		fill-paragraph-or-region
M-r		move-to-window-line
M-t		transpose-words
M-u		upcase-region-or-word
M-v		scroll-down-command
M-w		kill-ring-save
M-x		execute-extended-command
M-y		yank-pop
M-z		zap-to-char
M-{		backward-paragraph
M-|		shell-command-on-region
M-}		forward-paragraph
M-~		not-modified
M-backspace	backward-kill-word
M-button1	fume-mouse-function-goto
M-delete	backward-or-forward-kill-word
M-down		forward-paragraph
M-end		end-of-buffer-other-window
M-escape	<< Prefix Command >>
M-home		beginning-of-buffer-other-window
M-kp-delete	backward-or-forward-kill-word
M-kp-down	forward-paragraph
M-kp-end	end-of-buffer-other-window
M-kp-home	beginning-of-buffer-other-window
M-kp-left	backward-sexp
M-kp-next	scroll-other-window
M-kp-prior	scroll-other-window-down
M-kp-right	forward-sexp
M-kp-up		backward-paragraph
M-left		backward-sexp
M-linefeed	query-replace-regexp
M-next		scroll-other-window
M-prior		scroll-other-window-down
M-right		forward-sexp
M-space		just-one-space
M-tab		lisp-complete-symbol
M-up		backward-paragraph
M-C-%		query-replace-regexp
M-C--		negative-argument
M-C-/		dabbrev-completion
M-C-0 .. M-C-9	 digit-argument
M-C-@		mark-sexp
M-C-[		<< Prefix Command >>
M-C-\		indent-region
M-C-b		backward-sexp
M-C-c		exit-recursive-edit
M-C-d		down-list
M-C-f		forward-sexp
M-C-i		lisp-complete-symbol
M-C-j		query-replace-regexp
M-C-k		kill-sexp
M-C-l		switch-to-other-buffer
M-C-n		forward-list
M-C-o		split-line
M-C-p		backward-list
M-C-r		isearch-backward-regexp
M-C-s		isearch-forward-regexp
M-C-t		transpose-sexps
M-C-u		backward-up-list
M-C-v		scroll-other-window
M-C-w		append-next-kill
M-C-z		activate-region
M-C-backspace	backward-kill-sexp
M-C-button3	popup-buffer-menu
M-C-delete	backward-or-forward-kill-sexp
M-C-down	scroll-up-one
M-C-end		end-of-defun
M-C-home	beginning-of-defun
M-C-kp-delete	backward-or-forward-kill-sexp
M-C-kp-down	scroll-up-one
M-C-kp-end	end-of-defun
M-C-kp-home	beginning-of-defun
M-C-kp-left	backward-sentence
M-C-kp-next	forward-page
M-C-kp-prior	backward-page
M-C-kp-right	forward-sentence
M-C-kp-up	scroll-down-one
M-C-left	backward-sentence
M-C-next	forward-page
M-C-prior	backward-page
M-C-right	forward-sentence
M-C-space	mark-sexp
M-C-up		scroll-down-one
Sh-button1	mouse-track-adjust
Sh-button3	mouse-function-menu
Sh-button4up	mwheel-scroll
Sh-button5up	mwheel-scroll
Sh-insert	yank-clipboard-selection
Sh-tab		Anonymous Lambda
C-Sh-button1	mouse-track-delete-and-insert
C-Sh-tab	backward-other-window

M-? ?		help-for-help
M-? A		command-apropos
M-? B		describe-beta
M-? C		customize
M-? F		xemacs-local-faq
M-? a		hyper-apropos
M-? b		describe-bindings
M-? c		describe-key-briefly
M-? d		describe-function
M-? e		describe-last-error
M-? f		describe-function
M-? i		info
M-? k		describe-key
M-? l		view-lossage
M-? m		describe-mode
M-? n		view-emacs-news
M-? p		finder-by-keyword
M-? q		help-quit
M-? s		describe-syntax
M-? t		help-with-tutorial
M-? v		describe-variable
M-? w		where-is
M-? f1		help-for-help
M-? help	help-for-help
M-? return	manual-entry
M-? C-c		Info-goto-emacs-command-node
M-? C-d		describe-distribution
M-? C-f		Info-elisp-ref
M-? C-h		help-for-help
M-? C-i		Info-query
M-? C-k		Info-goto-emacs-key-command-node
M-? C-l		describe-copying
M-? C-m		manual-entry
M-? C-n		view-emacs-news
M-? C-p		describe-pointer
M-? C-w		describe-no-warranty

M-C-[ :		eval-expression
M-C-[ escape	keyboard-escape-quit
M-C-[ C-[	keyboard-escape-quit

M-escape :	eval-expression
M-escape escape	  keyboard-escape-quit
M-escape C-[	keyboard-escape-quit

C-c g		fume-prompt-function-goto
C-c l		fume-list-functions
C-c C-f		comint-find-source-code
C-c M-h		pydoc-commands

C-h ?		help-for-help
C-h A		command-apropos
C-h B		describe-beta
C-h C		customize
C-h F		xemacs-local-faq
C-h a		hyper-apropos
C-h b		describe-bindings
C-h c		describe-key-briefly
C-h d		describe-function
C-h e		describe-last-error
C-h f		describe-function
C-h i		info
C-h k		describe-key
C-h l		view-lossage
C-h m		describe-mode
C-h n		view-emacs-news
C-h p		finder-by-keyword
C-h q		help-quit
C-h s		describe-syntax
C-h t		help-with-tutorial
C-h v		describe-variable
C-h w		where-is
C-h f1		help-for-help
C-h help	help-for-help
C-h return	manual-entry
C-h C-c		Info-goto-emacs-command-node
C-h C-d		describe-distribution
C-h C-f		Info-elisp-ref
C-h C-h		help-for-help
C-h C-i		Info-query
C-h C-k		Info-goto-emacs-key-command-node
C-h C-l		describe-copying
C-h C-m		manual-entry
C-h C-n		view-emacs-news
C-h C-p		describe-pointer
C-h C-w		describe-no-warranty

C-x #		gnuserv-edit
C-x $		set-selective-display
C-x '		expand-abbrev
C-x (		start-kbd-macro
C-x )		end-kbd-macro
C-x +		balance-windows
C-x -		shrink-window-if-larger-than-buffer
C-x .		set-fill-prefix
C-x /		point-to-register
C-x 0		delete-window
C-x 1		delete-other-windows
C-x 2		split-window-vertically
C-x 3		split-window-horizontally
C-x 4		<< ctl-x-4-prefix >>
C-x 5		<< ctl-x-5-prefix >>
C-x 6		window-configuration-to-register
C-x ;		set-comment-column
C-x <		scroll-left
C-x =		what-cursor-position
C-x >		scroll-right
C-x F		<< facemenu-keymap >>
C-x K		find-function-on-key
C-x V		find-variable
C-x [		backward-page
C-x ]		forward-page
C-x ^		enlarge-window
C-x `		next-error
C-x a		<< Prefix Command >>
C-x b		switch-to-buffer
C-x d		dired
C-x e		call-last-kbd-macro
C-x f		set-fill-column
C-x g		insert-register
C-x h		mark-whole-buffer
C-x i		insert-file
C-x j		jump-to-register
C-x k		kill-buffer
C-x l		count-lines-page
C-x m		compose-mail
C-x o		other-window
C-x q		kbd-macro-query
C-x r		<< Prefix command rectangle-prefix >>
C-x s		save-some-buffers
C-x u		advertised-undo
C-x x		copy-to-register
C-x {		shrink-window-horizontally
C-x }		enlarge-window-horizontally
C-x backspace	backward-kill-sentence
C-x delete	backward-or-forward-kill-sentence
C-x kp-delete	backward-or-forward-kill-sentence
C-x linefeed	dired-jump-back
C-x tab		indent-rigidly
C-x C- 		pop-global-mark
C-x C-@		pop-global-mark
C-x C-b		list-buffers
C-x C-c		save-buffers-kill-emacs
C-x C-d		list-directory
C-x C-e		eval-last-sexp
C-x C-f		find-file
C-x C-i		indent-rigidly
C-x C-j		dired-jump-back
C-x C-k		edit-kbd-macro
C-x C-l		downcase-region
C-x C-o		delete-blank-lines
C-x C-p		mark-page
C-x C-q		toggle-read-only
C-x C-r		find-file-read-only
C-x C-s		save-buffer
C-x C-t		transpose-lines
C-x C-u		upcase-region
C-x C-v		find-alternate-file
C-x C-w		write-file
C-x C-x		exchange-point-and-mark
C-x C-z		suspend-or-iconify-emacs
C-x C-space	pop-global-mark
C-x M-:		repeat-complex-command
C-x M-escape	repeat-complex-command
C-x M-C-[	repeat-complex-command

f1 ?		help-for-help
f1 A		command-apropos
f1 B		describe-beta
f1 C		customize
f1 F		xemacs-local-faq
f1 a		hyper-apropos
f1 b		describe-bindings
f1 c		describe-key-briefly
f1 d		describe-function
f1 e		describe-last-error
f1 f		describe-function
f1 i		info
f1 k		describe-key
f1 l		view-lossage
f1 m		describe-mode
f1 n		view-emacs-news
f1 p		finder-by-keyword
f1 q		help-quit
f1 s		describe-syntax
f1 t		help-with-tutorial
f1 v		describe-variable
f1 w		where-is
f1 f1		help-for-help
f1 help		help-for-help
f1 return	manual-entry
f1 C-c		Info-goto-emacs-command-node
f1 C-d		describe-distribution
f1 C-f		Info-elisp-ref
f1 C-h		help-for-help
f1 C-i		Info-query
f1 C-k		Info-goto-emacs-key-command-node
f1 C-l		describe-copying
f1 C-m		manual-entry
f1 C-n		view-emacs-news
f1 C-p		describe-pointer
f1 C-w		describe-no-warranty

C-x 4 .		find-tag-other-window
C-x 4 0		kill-buffer-and-window
C-x 4 F		find-function-other-window
C-x 4 V		find-variable-other-window
C-x 4 a		add-change-log-entry-other-window
C-x 4 b		switch-to-buffer-other-window
C-x 4 d		dired-other-window
C-x 4 f		find-file-other-window
C-x 4 l		find-library-other-window
C-x 4 m		compose-mail-other-window
C-x 4 r		find-file-read-only-other-window
C-x 4 linefeed	 dired-jump-back-other-window
C-x 4 C-f	find-file-other-window
C-x 4 C-j	dired-jump-back-other-window
C-x 4 C-o	display-buffer

C-x 5 0		delete-frame
C-x 5 2		make-frame
C-x 5 F		find-function-other-frame
C-x 5 V		find-variable-other-frame
C-x 5 b		switch-to-buffer-other-frame
C-x 5 d		dired-other-frame
C-x 5 f		find-file-other-frame
C-x 5 l		find-library-other-frame
C-x 5 m		compose-mail-other-frame
C-x 5 o		other-frame
C-x 5 r		find-file-read-only-other-frame
C-x 5 linefeed	 dired-jump-back-other-frame
C-x 5 C-f	find-file-other-frame
C-x 5 C-j	dired-jump-back-other-frame

C-x F o		facemenu-set-face

C-x a '		expand-abbrev
C-x a +		add-mode-abbrev
C-x a -		inverse-add-global-abbrev
C-x a e		expand-abbrev
C-x a g		add-global-abbrev
C-x a i		<< Prefix Command >>
C-x a l		add-mode-abbrev
C-x a C-a	add-mode-abbrev

C-x n n		narrow-to-region
C-x n p		narrow-to-page
C-x n w		widen

C-x r +		increment-register
C-x r b		bookmark-jump
C-x r c		clear-rectangle
C-x r d		delete-rectangle
C-x r g		insert-register
C-x r i		insert-register
C-x r j		jump-to-register
C-x r k		kill-rectangle
C-x r l		bookmark-bmenu-list
C-x r m		bookmark-set
C-x r n		number-to-register
C-x r o		open-rectangle
C-x r p		replace-rectangle
C-x r r		copy-rectangle-to-register
C-x r s		copy-to-register
C-x r t		string-rectangle
C-x r w		window-configuration-to-register
C-x r x		copy-to-register
C-x r y		yank-rectangle
C-x r space	point-to-register
C-x r C-@	point-to-register
C-x r C-space	point-to-register

C-x a i g	inverse-add-global-abbrev
C-x a i l	inverse-add-mode-abbrev
⚠️ **GitHub.com Fallback** ⚠️