X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=lisp%2Fkeydefs.el;h=b7296d08e791eebd0a47fee790502bda10edc684;hp=947ce34d5e19977aa12fe2950ed4effa0e664907;hb=1a5e625ffcc6b2e9a9828a89763c062a0b09b361;hpb=a5f466de30a3e927ed1146b0c7e3870e71465c8f diff --git a/lisp/keydefs.el b/lisp/keydefs.el index 947ce34..b7296d0 100644 --- a/lisp/keydefs.el +++ b/lisp/keydefs.el @@ -1,6 +1,7 @@ ;;; keydefs.el --- Define standard keybindings. ;; Copyright (C) 1992-4, 1997 Free Software Foundation, Inc. +;; Copyright (C) 2000 Ben Wing. ;; Maintainer: XEmacs Development Team ;; Keywords: internal, dumped @@ -106,9 +107,6 @@ Keymap for characters following C-c.") (define-key global-map "\C-e" 'end-of-line) (define-key global-map "\C-f" 'forward-char-command) (define-key global-map "\C-d" 'delete-char) -(define-key global-map 'delete 'backward-or-forward-delete-char) -(define-key global-map '(meta delete) 'backward-or-forward-kill-word) -(define-key global-map [(control x) (delete)] 'backward-or-forward-kill-sentence) ;; FSFmacs files.el @@ -158,6 +156,10 @@ Keymap for characters following C-c.") (define-key global-map (vector help-char) 'help-command) (define-key global-map 'help 'help-command) (define-key global-map 'f1 'help-command) +;; This is a failsafe mechanism, esp. on TTY's, in case the terminal is +;; somewhat broken and f1 keys can't work, and backspace is redefined to +;; do backspace. +(define-key global-map '(meta ??) 'help-command) ;; FSFmacs indent.el @@ -240,6 +242,8 @@ Keymap for characters following C-c.") (define-key global-map '(control meta -) 'negative-argument) (define-key global-map "\C-k" 'kill-line) +;will change like this in 21.5. +;(define-key global-map "\M-k" 'kill-entire-line) (define-key global-map "\C-w" 'kill-region) (define-key global-map "\M-w" 'kill-ring-save) (define-key global-map "\M-\C-w" 'append-next-kill) @@ -273,6 +277,10 @@ Keymap for characters following C-c.") (define-key global-map "\M-\C-t" 'transpose-sexps) (define-key global-map "\C-x\C-t" 'transpose-lines) +;; XEmacs: much more reasonable and useful key definitions. +(define-key global-map '(control T) 'transpose-line-down) +(define-key global-map '(meta T) 'transpose-line-up) + (define-key global-map "\M-;" 'indent-for-comment) (define-key global-map "\M-j" 'indent-new-comment-line) (define-key global-map "\M-\C-j" 'indent-new-comment-line) @@ -305,9 +313,6 @@ Keymap for characters following C-c.") (define-key global-map "\M-\)" 'move-past-close-and-reindent) (define-key global-map "\M-\t" 'lisp-complete-symbol) -(define-key global-map '(control meta backspace) 'backward-kill-sexp) -(define-key global-map '(control meta delete) 'backward-or-forward-kill-sexp) - (define-key global-map "\C-x/" 'point-to-register) (define-key global-map "\C-xj" 'jump-to-register) @@ -332,9 +337,11 @@ Keymap for characters following C-c.") (define-key global-map "\C-xr+" 'increment-register) (define-key global-map "\C-xrc" 'clear-rectangle) (define-key global-map "\C-xrk" 'kill-rectangle) +(define-key global-map "\C-xrd" 'delete-rectangle) (define-key global-map "\C-xry" 'yank-rectangle) (define-key global-map "\C-xro" 'open-rectangle) (define-key global-map "\C-xrt" 'string-rectangle) +(define-key global-map "\C-xrp" 'replace-rectangle) (define-key global-map "\C-xrw" 'window-configuration-to-register) ;(define-key global-map "\C-xrf" 'frame-configuration-to-register) @@ -352,6 +359,8 @@ Keymap for characters following C-c.") (define-key global-map "\M-a" 'backward-sentence) (define-key global-map "\M-e" 'forward-sentence) (define-key global-map "\M-k" 'kill-sentence) +;will change like this in 21.5. +;(define-key global-map "\M-K" 'kill-sentence) ;;(define-key global-map "\C-x\177" 'backward-kill-sentence) (define-key global-map "\C-x[" 'backward-page) @@ -389,6 +398,7 @@ Keymap for characters following C-c.") ;; Default binding of "Control-h" is help. (define-key global-map 'backspace 'delete-backward-char) (define-key global-map '(meta backspace) 'backward-kill-word) +(define-key global-map [(control x) backspace] 'backward-kill-sentence) (define-key global-map "\M-\C-z" 'activate-region) @@ -510,75 +520,74 @@ Keymap for characters following C-c.") ;; movement by units (define-key global-map 'left 'backward-char-command) -(define-key global-map 'up 'previous-line) (define-key global-map 'right 'forward-char-command) +(define-key global-map 'up 'previous-line) (define-key global-map 'down 'next-line) - -;; movement by pages -(define-key global-map 'prior 'scroll-down-command) -(define-key global-map 'next 'scroll-up-command) - -;; movement to the limits -(define-key global-map 'home 'beginning-of-line) -(define-key global-map 'end 'end-of-line) - -;;; Miscellaneous key bindings -(define-key global-map 'again 'repeat-complex-command) -(define-key global-map 'insert 'overwrite-mode) - -;;; These aren't bound to kbd macros like "\C-b" so that they have the -;; expected behavior even in, for example, vi-mode. - -;; We use here symbolic names, assuming that the corresponding keys will -;; generate these keysyms. This is not true on Suns, but x-win-sun.el -;; fixes that. If it turns out that the semantics of these keys should -;; differ from server to server, this should be moved into server-specific -;; files, but these appear to be the standard Motif and PC bindings. - -;; potential R6isms (define-key global-map 'kp-left 'backward-char-command) -(define-key global-map 'kp-up 'previous-line) (define-key global-map 'kp-right 'forward-char-command) +(define-key global-map 'kp-up 'previous-line) (define-key global-map 'kp-down 'next-line) - -;; movement by larger blocks -(define-key global-map '(control left) 'backward-word) -(define-key global-map '(control up) #'(lambda () - (interactive "_") - (forward-line -6))) -(define-key global-map '(control right) 'forward-word) -(define-key global-map '(control down) #'(lambda () - (interactive "_") - (forward-line 6))) - -;; context-sensitive movement -(define-key global-map '(meta left) 'backward-sexp) -(define-key global-map '(meta right) 'forward-sexp) -(define-key global-map '(meta up) 'backward-paragraph) -(define-key global-map '(meta down) 'forward-paragraph) - ;; movement by pages +(define-key global-map 'prior 'scroll-down-command) +(define-key global-map 'next 'scroll-up-command) (define-key global-map '(control prior) 'scroll-right) (define-key global-map '(control next) 'scroll-left) -;; potential R6isms (define-key global-map 'kp-prior 'scroll-down-command) (define-key global-map 'kp-next 'scroll-up-command) (define-key global-map '(control kp-prior) 'scroll-right) (define-key global-map '(control kp-next) 'scroll-left) - ;; movement to the limits +(define-key global-map 'home 'beginning-of-line) +(define-key global-map 'end 'end-of-line) (define-key global-map '(control home) 'beginning-of-buffer) (define-key global-map '(control end) 'end-of-buffer) -(define-key global-map 'begin 'beginning-of-line) -(define-key global-map '(control begin) 'beginning-of-buffer) -;; potential R6isms (define-key global-map 'kp-home 'beginning-of-line) -(define-key global-map '(control kp-home) 'beginning-of-buffer) (define-key global-map 'kp-end 'end-of-line) +(define-key global-map '(control kp-home) 'beginning-of-buffer) (define-key global-map '(control kp-end) 'end-of-buffer) +;; on which systems do these exist? +(define-key global-map 'begin 'beginning-of-line) +(define-key global-map '(control begin) 'beginning-of-buffer) + +;; movement by larger blocks +(define-key global-map '(control left) 'backward-word) +(define-key global-map '(control right) 'forward-word) +(define-key global-map '(control up) 'backward-block-of-lines) +(define-key global-map '(control down) 'forward-block-of-lines) +(define-key global-map '(control kp-left) 'backward-word) +(define-key global-map '(control kp-right) 'forward-word) +(define-key global-map '(control kp-up) 'backward-block-of-lines) +(define-key global-map '(control kp-down) 'forward-block-of-lines) + +;; context-sensitive movement +(define-key global-map '(meta left) 'backward-sexp) +(define-key global-map '(meta right) 'forward-sexp) +(define-key global-map '(meta up) 'backward-paragraph) +(define-key global-map '(meta down) 'forward-paragraph) +(define-key global-map '(meta control left) 'backward-sentence) +(define-key global-map '(meta control right) 'forward-sentence) +(define-key global-map '(meta control up) 'scroll-down-one) +(define-key global-map '(meta control down) 'scroll-up-one) +(define-key global-map '(meta control home) 'beginning-of-defun) +(define-key global-map '(meta control end) 'end-of-defun) +(define-key global-map '(meta control prior) 'backward-page) +(define-key global-map '(meta control next) 'forward-page) +(define-key global-map '(meta kp-left) 'backward-sexp) +(define-key global-map '(meta kp-right) 'forward-sexp) +(define-key global-map '(meta kp-up) 'backward-paragraph) +(define-key global-map '(meta kp-down) 'forward-paragraph) +(define-key global-map '(meta control kp-left) 'backward-sentence) +(define-key global-map '(meta control kp-right) 'forward-sentence) +(define-key global-map '(meta control kp-up) 'scroll-down-one) +(define-key global-map '(meta control kp-down) 'scroll-up-one) +(define-key global-map '(meta control kp-home) 'beginning-of-defun) +(define-key global-map '(meta control kp-end) 'end-of-defun) +(define-key global-map '(meta control kp-prior) 'backward-page) +(define-key global-map '(meta control kp-next) 'forward-page) + ;; movement between windows (define-key global-map '(control tab) 'other-window) (define-key global-map '(control shift tab) 'backward-other-window) @@ -588,16 +597,33 @@ Keymap for characters following C-c.") (define-key global-map '(meta prior) 'scroll-other-window-down) (define-key global-map '(meta home) 'beginning-of-buffer-other-window) (define-key global-map '(meta end) 'end-of-buffer-other-window) -;; potential R6isms (define-key global-map '(meta kp-next) 'scroll-other-window) (define-key global-map '(meta kp-prior) 'scroll-other-window-down) (define-key global-map '(meta kp-home) 'beginning-of-buffer-other-window) (define-key global-map '(meta kp-end) 'end-of-buffer-other-window) -;; potential R6isms -(define-key global-map 'redo 'repeat-complex-command) +;; the infamous delete key +(define-key global-map 'delete 'backward-or-forward-delete-char) +(define-key global-map '(meta delete) 'backward-or-forward-kill-word) +(define-key global-map [(control x) (delete)] + 'backward-or-forward-kill-sentence) +(define-key global-map 'kp-delete 'backward-or-forward-delete-char) +(define-key global-map '(meta kp-delete) 'backward-or-forward-kill-word) +(define-key global-map [(control x) (kp-delete)] + 'backward-or-forward-kill-sentence) + +;; don't try this one at home, kids. +(define-key global-map '(control meta delete) 'backward-or-forward-kill-sexp) +(define-key global-map '(control meta kp-delete) 'backward-or-forward-kill-sexp) +;; or this one, either, on Linux. +(define-key global-map '(control meta backspace) 'backward-kill-sexp) + + +;;; Miscellaneous key bindings +(define-key global-map 'insert 'overwrite-mode) (define-key global-map 'kp-insert 'overwrite-mode) -(define-key global-map 'kp-delete 'backward-delete-char-untabify) +(define-key global-map 'again 'repeat-complex-command) +(define-key global-map 'redo 'repeat-complex-command) (define-key global-map 'kp-enter [return]) ; do whatever RET does now (define-key global-map 'kp-tab [tab])