branch: externals/ergoemacs-mode
commit 577997bacabe4f8141dfc0d789416b06943a6221
Author: Matthew Fidler <[email protected]>
Commit: Matthew Fidler <[email protected]>
Pull in many more remaps for using Emacs keys
---
ergoemacs-functions.el | 176 ++++++++++++++++++++++++++++++++++++++++++++++++-
ergoemacs-mode.el | 33 ++++++++++
ergoemacs-themes.el | 2 +-
3 files changed, 209 insertions(+), 2 deletions(-)
diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el
index 8453746..3bd1d6a 100644
--- a/ergoemacs-functions.el
+++ b/ergoemacs-functions.el
@@ -132,7 +132,181 @@ KEY3 is the optional third key in the sequence."
"Ergoemacs replacement for `mark-whole-buffer' using
`ergoemacs--send-emacs-key'."
(interactive)
(ergoemacs--send-emacs-key ?\C-x ?h))
-
+
+(defun ergoemacs-find-file ()
+ "Ergoemacs replacement for `find-file' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?\C-f))
+
+(defun ergoemacs-save-buffer ()
+ "Ergoemacs replacement for `save-buffer' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?\C-s))
+
+(defun ergoemacs-write-file ()
+ "Ergoemacs replacement for `write-file' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?\C-w))
+
+(defun ergoemacs-goto-line ()
+ "Ergoemacs replacement for `write-file' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-g ?\M-g))
+
+(defun ergoemacs-delete-char ()
+ "Ergoemacs replacement for `delete-char' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-d))
+
+(defun ergoemacs-move-beginning-of-line ()
+ "Ergoemacs replacement for `move-beginning-of-line' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (if this-command-keys-shift-translated
+ (ergoemacs--send-emacs-key ?\C-\S-a)
+ (ergoemacs--send-emacs-key ?\C-a)))
+
+(defun ergoemacs-move-end-of-line ()
+ "Ergoemacs replacement for `move-end-of-line' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (if this-command-keys-shift-translated
+ (ergoemacs--send-emacs-key ?\C-\S-e)
+ (ergoemacs--send-emacs-key ?\C-e)))
+
+(defun ergoemacs-set-mark-command ()
+ "Ergoemacs replacement for `set-mark-command' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-\ ))
+
+(defun ergoemacs-delete-backward-char ()
+ "Ergoemacs replacement for `delete-backward-char' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ ;; 127 = DEL
+ (ergoemacs--send-emacs-key 127))
+
+(defun ergoemacs-delete-char ()
+ "Ergoemacs replacement for `delete-char' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-d))
+
+(defun ergoemacs-kill-word ()
+ "Ergoemacs replacement for `kill-word' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-d))
+
+(defun ergoemacs-backward-word ()
+ "Ergoemacs replacement for `backward-word' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (if this-command-keys-shift-translated
+ (ergoemacs--send-emacs-key ?\M-\S-b)
+ (ergoemacs--send-emacs-key ?\M-b)))
+
+(defun ergoemacs-backward-kill-word ()
+ "Ergoemacs replacement for `backward-kill-word' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key 'C-backspace))
+
+(defun ergoemacs-forward-word ()
+ "Ergoemacs replacement for `forward-word' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (if this-command-keys-shift-translated
+ (ergoemacs--send-emacs-key ?\M-\S-f)
+ (ergoemacs--send-emacs-key ?\M-f)))
+
+(defun ergoemacs-backward-paragraph ()
+ "Ergoemacs replacement for `backward-paragraph' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\{))
+
+(defun ergoemacs-forward-paragraph ()
+ "Ergoemacs replacement for `forward-paragraph' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\}))
+
+(defun ergoemacs-scroll-down-command ()
+ "Ergoemacs replacement for `scroll-down-command' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-v))
+
+(defun ergoemacs-scroll-up-command ()
+ "Ergoemacs replacement for `scroll-up-command' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-v))
+
+(defun ergoemacs-beginning-of-buffer ()
+ "Ergoemacs replacement for `beginning-of-buffer' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\<))
+
+(defun ergoemacs-end-of-buffer ()
+ "Ergoemacs replacement for `end-of-buffer' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\>))
+
+(defun ergoemacs-query-replace ()
+ "Ergoemacs replacement for `query-replace' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\%))
+
+(defun ergoemacs-query-replace-regexp ()
+ "Ergoemacs replacement for `query-replace-regexp' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-\M-\%))
+
+(defun ergoemacs-other-window ()
+ "Ergoemacs replacement for `other-window' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?o))
+
+(defun ergoemacs-delete-other-windows ()
+ "Ergoemacs replacement for `delete-other-windows' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?1))
+
+(defun ergoemacs-delete-window ()
+ "Ergoemacs replacement for `delete-window' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?0))
+
+(defun ergoemacs-split-window-below ()
+ "Ergoemacs replacement for `split-window-below' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?2))
+
+(defun ergoemacs-split-window-right ()
+ "Ergoemacs replacement for `split-window-right' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?3))
+
+(defun ergoemacs-switch-to-buffer ()
+ "Ergoemacs replacement for `switch-to-buffer' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-x ?b))
+
+(defun ergoemacs-shell-command ()
+ "Ergoemacs replacement for `shell-command' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\!))
+
+(defun ergoemacs-recenter-top-bottom ()
+ "Ergoemacs replacement for `recenter-top-bottom' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\C-l))
+
+(defun ergoemacs-comment-dwim ()
+ "Ergoemacs replacement for `comment-dwim' using `ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\;))
+
+(defun ergoemacs-delete-horizontal-space ()
+ "Ergoemacs replacement for `delete-horizontal-space' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\\))
+
+(defun ergoemacs-mark-paragraph ()
+ "Ergoemacs replacement for `mark-paragraph' using
`ergoemacs--send-emacs-key'."
+ (interactive)
+ (ergoemacs--send-emacs-key ?\M-\S-\ ))
+
(defvar ergoemacs-delete-functions
'(delete-backward-char delete-char kill-word backward-kill-word)
"Defines deletion functions that ergoemacs is aware of.")
diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el
index a71d7f8..7543ac9 100644
--- a/ergoemacs-mode.el
+++ b/ergoemacs-mode.el
@@ -134,6 +134,39 @@ Added beginning-of-buffer Alt+n (QWERTY notation) and
end-of-buffer Alt+Shift+n"
(defvar ergoemacs--send-emacs-keys-map (let ((map (make-sparse-keymap)))
(define-key map [remap kill-line]
'ergoemacs-kill-line)
(define-key map [remap
mark-whole-buffer] 'ergoemacs-mark-whole-buffer)
+ (define-key map [remap find-file]
'ergoemacs-find-file)
+ (define-key map [remap save-buffer]
'ergoemacs-save-buffer)
+ (define-key map [remap write-file]
'ergoemacs-write-file)
+ (define-key map [remap goto-line]
'ergoemacs-goto-line)
+ (define-key map [remap delete-char]
'ergoemacs-delete-char)
+ (define-key map [remap
move-beginning-of-line] 'ergoemacs-move-beginning-of-line)
+ (define-key map [remap
move-end-of-line] 'ergoemacs-move-end-of-line)
+ (define-key map [remap
set-mark-command] 'ergoemacs-set-mark-command)
+ (define-key map [remap
delete-backward-char] 'ergoemacs-delete-backward-char)
+ (define-key map [remap delete-char]
'ergoemacs-delete-char)
+ (define-key map [remap kill-word]
'ergoemacs-kill-word)
+ (define-key map [remap
backward-kill-word] 'ergoemacs-backward-kill-word)
+ (define-key map [remap backward-word]
'ergoemacs-backward-word)
+ (define-key map [remap forward-word]
'ergoemacs-forward-word)
+ (define-key map [remap
backward-paragraph] 'ergoemacs-backward-paragraph)
+ (define-key map [remap
forward-paragraph] 'ergoemacs-forward-paragraph)
+ (define-key map [remap
scroll-down-command] 'ergoemacs-scroll-down-command)
+ (define-key map [remap
scroll-up-command] 'ergoemacs-scroll-up-command)
+ (define-key map [remap end-of-buffer]
'ergoemacs-end-of-buffer)
+ (define-key map [remap
beginning-of-buffer] 'ergoemacs-beginning-of-buffer)
+ (define-key map [remap query-replace]
'ergoemacs-query-replace)
+ (define-key map [remap
query-replace-regexp] 'ergoemacs-query-replace-regexp)
+ (define-key map [remap other-window]
'ergoemacs-other-window)
+ (define-key map [remap
delete-other-windows] 'ergoemacs-delete-other-windows)
+ (define-key map [remap delete-window]
'ergoemacs-delete-window)
+ (define-key map [remap
split-window-below] 'ergoemacs-split-window-below)
+ (define-key map [remap
split-window-right] 'ergoemacs-split-window-right)
+ (define-key map [remap
switch-to-buffer] 'ergoemacs-switch-to-buffer)
+ (define-key map [remap
recenter-top-bottom] 'ergoemacs-recenter-top-bottom)
+ (define-key map [remap shell-command]
'ergoemacs-shell-command)
+ (define-key map [remap comment-dwim]
'ergoemacs-comment-dwim)
+ (define-key map [remap
delete-horizontal-space] 'ergoemacs-delete-horizontal-space)
+ (define-key map [remap
mark-paragraph] 'ergoemacs-mark-paragraph)
map)
"This defines the remaps for the `ergoemacs-mode-send-emacs-keys' commands.")
diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el
index 04231fc..b3c69c1 100644
--- a/ergoemacs-themes.el
+++ b/ergoemacs-themes.el
@@ -607,7 +607,7 @@ These keys do not depend on the layout."
(ergoemacs-define-key keymap (kbd "<apps> x") 'ergoemacs-cut-line-or-region)
(ergoemacs-define-key keymap (kbd "<apps> c")
'ergoemacs-copy-line-or-region)
(ergoemacs-define-key keymap (kbd "<apps> v") 'ergoemacs-paste)
- (ergoemacs-define-key keymap (kbd "<apps> b") '(redo undo-tree-redo
ergoemacs-redo))
+ (ergoemacs-define-key keymap (kbd "<apps> b") 'ergoemacs-redo)
(ergoemacs-define-key keymap (kbd "<apps> t") 'switch-to-buffer)
(ergoemacs-define-key keymap (kbd "<apps> z") 'undo)
(ergoemacs-define-key keymap (kbd "<apps> r") 'goto-map) ;; Already in CUA)