Send M-left and M-right control sequences as in xterm for my Readline
authorOleksandr Gavenko <gavenkoa@gmail.com>
Thu, 22 Nov 2012 21:18:54 +0200
changeset 1001 d9b2474219f6
parent 1000 289782aa4afa
child 1002 73a5303842e3
Send M-left and M-right control sequences as in xterm for my Readline 'menu-complete' key binding for M-x term.
.emacs-my
--- a/.emacs-my	Tue Nov 20 21:48:05 2012 +0200
+++ b/.emacs-my	Thu Nov 22 21:18:54 2012 +0200
@@ -390,12 +390,17 @@
   '(progn
     (defun my-term-send-delete-word-forward () (interactive) (term-send-raw-string "\ed"))
     (defun my-term-send-delete-word-backward () (interactive) (term-send-raw-string "\e\C-h"))
+    (define-key term-raw-map [C-delete] 'my-term-send-delete-word-forward)
+    (define-key term-raw-map [C-backspace] 'my-term-send-delete-word-backward)
     (defun my-term-send-forward-word () (interactive) (term-send-raw-string "\ef"))
     (defun my-term-send-backward-word () (interactive) (term-send-raw-string "\eb"))
-    (define-key term-raw-map [C-delete] 'my-term-send-delete-word-forward)
-    (define-key term-raw-map [C-backspace] 'my-term-send-delete-word-backward)
     (define-key term-raw-map [C-left] 'my-term-send-backward-word)
-    (define-key term-raw-map [C-right] 'my-term-send-forward-word)))
+    (define-key term-raw-map [C-right] 'my-term-send-forward-word)
+    (defun my-term-send-m-right () (interactive) (term-send-raw-string "\e[1;3C"))
+    (defun my-term-send-m-left () (interactive) (term-send-raw-string "\e[1;3D"))
+    (define-key term-raw-map [M-right] 'my-term-send-m-right)
+    (define-key term-raw-map [M-left] 'my-term-send-m-left)
+    ))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 (message "whitespaces")