Mercurial > emacs
annotate lisp/bindings.el @ 100818:03f922072d04
* display.texi (Face Attributes): Clarify :height attribute.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Thu, 01 Jan 2009 08:28:56 +0000 |
parents | 8f585a03d4d4 |
children | 46065363a5a6 |
rev | line source |
---|---|
38409
153f1b1f2efd
Emacs lisp coding convention fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
38300
diff
changeset
|
1 ;;; bindings.el --- define standard key bindings and some variables |
16164 | 2 |
64762
41bb365f41c4
Update years in copyright notice; nfc.
Thien-Thi Nguyen <ttn@gnuvola.org>
parents:
64091
diff
changeset
|
3 ;; Copyright (C) 1985, 1986, 1987, 1992, 1993, 1994, 1995, 1996, 1999, |
79721 | 4 ;; 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. |
16164 | 5 |
6 ;; Maintainer: FSF | |
7 ;; Keywords: internal | |
8 | |
9 ;; This file is part of GNU Emacs. | |
10 | |
94678
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
93889
diff
changeset
|
11 ;; GNU Emacs is free software: you can redistribute it and/or modify |
16164 | 12 ;; it under the terms of the GNU General Public License as published by |
94678
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
93889
diff
changeset
|
13 ;; the Free Software Foundation, either version 3 of the License, or |
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
93889
diff
changeset
|
14 ;; (at your option) any later version. |
16164 | 15 |
16 ;; GNU Emacs is distributed in the hope that it will be useful, | |
17 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 ;; GNU General Public License for more details. | |
20 | |
21 ;; You should have received a copy of the GNU General Public License | |
94678
ee5932bf781d
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
93889
diff
changeset
|
22 ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. |
16164 | 23 |
24 ;;; Commentary: | |
25 | |
26 ;;; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
27 ;;; Special formatting conventions are used in this file! | |
28 ;;; | |
50354
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
29 ;;; A backslash-newline is used at the beginning of a documentation string |
16164 | 30 ;;; when that string should be stored in the file etc/DOCnnn, not in core. |
31 ;;; | |
32 ;;; Such strings read into Lisp as numbers (during the pure-loading phase). | |
33 ;;; | |
34 ;;; But you must obey certain rules to make sure the string is understood | |
25537
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
35 ;;; and goes into etc/DOCnnn properly. |
16164 | 36 ;;; |
37 ;;; The doc string must appear in the standard place in a call to | |
38 ;;; defun, autoload, defvar or defconst. No Lisp macros are recognized. | |
39 ;;; The open-paren starting the definition must appear in column 0. | |
40 ;;; | |
41 ;;; In defvar and defconst, there is an additional rule: | |
42 ;;; The double-quote that starts the string must be on the same | |
43 ;;; line as the defvar or defconst. | |
44 ;;; !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
45 | |
46 ;;; Code: | |
47 | |
38755
2fa1afcedab9
(make-mode-line-mouse-map): Renamed from
Gerd Moellmann <gerd@gnu.org>
parents:
38752
diff
changeset
|
48 (defun make-mode-line-mouse-map (mouse function) "\ |
2fa1afcedab9
(make-mode-line-mouse-map): Renamed from
Gerd Moellmann <gerd@gnu.org>
parents:
38752
diff
changeset
|
49 Return a keymap with single entry for mouse key MOUSE on the mode line. |
2fa1afcedab9
(make-mode-line-mouse-map): Renamed from
Gerd Moellmann <gerd@gnu.org>
parents:
38752
diff
changeset
|
50 MOUSE is defined to run function FUNCTION with no args in the buffer |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
51 corresponding to the mode line clicked." |
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
52 (let ((map (make-sparse-keymap))) |
38755
2fa1afcedab9
(make-mode-line-mouse-map): Renamed from
Gerd Moellmann <gerd@gnu.org>
parents:
38752
diff
changeset
|
53 (define-key map (vector 'mode-line mouse) function) |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
54 map)) |
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
55 |
33261
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
56 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
57 (defun mode-line-toggle-read-only (event) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
58 "Like `toggle-read-only', for the mode-line." |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
59 (interactive "e") |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
60 (save-selected-window |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
61 (select-window (posn-window (event-start event))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
62 (toggle-read-only) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
63 (force-mode-line-update))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
64 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
65 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
66 (defun mode-line-toggle-modified (event) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
67 "Toggle the buffer-modified flag from the mode-line." |
33585
f8f722137584
(mode-line-modified): Fix a typo.
Gerd Moellmann <gerd@gnu.org>
parents:
33261
diff
changeset
|
68 (interactive "e") |
33261
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
69 (save-selected-window |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
70 (select-window (posn-window (event-start event))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
71 (set-buffer-modified-p (not (buffer-modified-p))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
72 (force-mode-line-update))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
73 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
74 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
75 (defun mode-line-widen (event) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
76 "Widen a buffer from the mode-line." |
33585
f8f722137584
(mode-line-modified): Fix a typo.
Gerd Moellmann <gerd@gnu.org>
parents:
33261
diff
changeset
|
77 (interactive "e") |
33261
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
78 (save-selected-window |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
79 (select-window (posn-window (event-start event))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
80 (widen) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
81 (force-mode-line-update))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
82 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
83 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
84 (defun mode-line-abbrev-mode (event) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
85 "Turn off `abbrev-mode' from the mode-line." |
33585
f8f722137584
(mode-line-modified): Fix a typo.
Gerd Moellmann <gerd@gnu.org>
parents:
33261
diff
changeset
|
86 (interactive "e") |
33261
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
87 (save-selected-window |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
88 (select-window (posn-window (event-start event))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
89 (abbrev-mode) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
90 (force-mode-line-update))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
91 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
92 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
93 (defun mode-line-auto-fill-mode (event) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
94 "Turn off `auto-fill-mode' from the mode-line." |
33585
f8f722137584
(mode-line-modified): Fix a typo.
Gerd Moellmann <gerd@gnu.org>
parents:
33261
diff
changeset
|
95 (interactive "e") |
33261
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
96 (save-selected-window |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
97 (select-window (posn-window (event-start event))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
98 (auto-fill-mode) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
99 (force-mode-line-update))) |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
100 |
a3294ec7a032
(mode-line-toggle-read-only)
Gerd Moellmann <gerd@gnu.org>
parents:
30946
diff
changeset
|
101 |
27649
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
102 (defvar mode-line-input-method-map |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
103 (let ((map (make-sparse-keymap))) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
104 (define-key map [mode-line mouse-2] |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
105 (lambda (e) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
106 (interactive "e") |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
107 (save-selected-window |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
108 (select-window |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
109 (posn-window (event-start e))) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
110 (toggle-input-method) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
111 (force-mode-line-update)))) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
112 (define-key map [mode-line mouse-3] |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
113 (lambda (e) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
114 (interactive "e") |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
115 (save-selected-window |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
116 (select-window |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
117 (posn-window (event-start e))) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
118 (describe-current-input-method)))) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
119 (purecopy map))) |
248e0de1bae2
(mode-line-input-method-map): New variable.
Dave Love <fx@gnu.org>
parents:
27616
diff
changeset
|
120 |
39037
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
121 |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
122 (defvar mode-line-coding-system-map |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
123 (let ((map (make-sparse-keymap))) |
65524
d4001c18bf64
(mode-line-eol-desc, mode-line-coding-system-map)
Nick Roberts <nickrob@snap.net.nz>
parents:
64762
diff
changeset
|
124 (define-key map [mode-line mouse-1] |
39037
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
125 (lambda (e) |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
126 (interactive "e") |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
127 (save-selected-window |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
128 (select-window (posn-window (event-start e))) |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
129 (when (and enable-multibyte-characters |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
130 buffer-file-coding-system) |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
131 (describe-coding-system buffer-file-coding-system))))) |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
132 (purecopy map)) |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
133 "Local keymap for the coding-system part of the mode line.") |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
134 |
e178a1e23722
(mode-line-coding-system-map): New variable.
Gerd Moellmann <gerd@gnu.org>
parents:
38903
diff
changeset
|
135 |
53551
fadd740b9db3
(mode-line-change-eol): Add EVENT parameter.
John Paul Wallington <jpw@pobox.com>
parents:
53463
diff
changeset
|
136 (defun mode-line-change-eol (event) |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
137 "Cycle through the various possible kinds of end-of-line styles." |
53551
fadd740b9db3
(mode-line-change-eol): Add EVENT parameter.
John Paul Wallington <jpw@pobox.com>
parents:
53463
diff
changeset
|
138 (interactive "e") |
93234
3f711cd30ffa
(mode-line-change-eol): Use with-selected-window.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93206
diff
changeset
|
139 (with-selected-window (posn-window (event-start event)) |
53551
fadd740b9db3
(mode-line-change-eol): Add EVENT parameter.
John Paul Wallington <jpw@pobox.com>
parents:
53463
diff
changeset
|
140 (let ((eol (coding-system-eol-type buffer-file-coding-system))) |
fadd740b9db3
(mode-line-change-eol): Add EVENT parameter.
John Paul Wallington <jpw@pobox.com>
parents:
53463
diff
changeset
|
141 (set-buffer-file-coding-system |
fadd740b9db3
(mode-line-change-eol): Add EVENT parameter.
John Paul Wallington <jpw@pobox.com>
parents:
53463
diff
changeset
|
142 (cond ((eq eol 0) 'dos) ((eq eol 1) 'mac) (t 'unix)))))) |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
143 |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
144 (defvar mode-line-eol-desc-cache nil) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
145 |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
146 (defun mode-line-eol-desc () |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
147 (let* ((eol (coding-system-eol-type buffer-file-coding-system)) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
148 (mnemonic (coding-system-eol-type-mnemonic buffer-file-coding-system)) |
100586
8f585a03d4d4
(mode-line-eol-desc): Use assoc to query mode-line-eol-desc-cache.
Chong Yidong <cyd@stupidchicken.com>
parents:
97857
diff
changeset
|
149 (desc (assoc eol mode-line-eol-desc-cache))) |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
150 (if (and desc (eq (cadr desc) mnemonic)) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
151 (cddr desc) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
152 (if desc (setq mode-line-eol-desc-cache nil)) ;Flush the cache if stale. |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
153 (setq desc |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
154 (propertize |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
155 mnemonic |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
156 'help-echo (format "End-of-line style: %s\nmouse-1 to cycle" |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
157 (if (eq eol 0) "Unix-style LF" |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
158 (if (eq eol 1) "Dos-style CRLF" |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
159 (if (eq eol 2) "Mac-style CR" |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
160 "Undecided")))) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
161 'keymap |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
162 (eval-when-compile |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
163 (let ((map (make-sparse-keymap))) |
65524
d4001c18bf64
(mode-line-eol-desc, mode-line-coding-system-map)
Nick Roberts <nickrob@snap.net.nz>
parents:
64762
diff
changeset
|
164 (define-key map [mode-line mouse-1] 'mode-line-change-eol) |
62651
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
165 map)) |
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
166 'mouse-face 'mode-line-highlight)) |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
167 (push (cons eol (cons mnemonic desc)) mode-line-eol-desc-cache) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
168 desc))) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
169 |
83434
944e6b68a0de
Display "@" in mode-lines of Emacsclient frames.
Karoly Lorentey <lorentey@elte.hu>
parents:
83414
diff
changeset
|
170 (defvar mode-line-client |
944e6b68a0de
Display "@" in mode-lines of Emacsclient frames.
Karoly Lorentey <lorentey@elte.hu>
parents:
83414
diff
changeset
|
171 `("" |
944e6b68a0de
Display "@" in mode-lines of Emacsclient frames.
Karoly Lorentey <lorentey@elte.hu>
parents:
83414
diff
changeset
|
172 (:propertize ("" (:eval (if (frame-parameter nil 'client) "@" ""))) |
83538
5a2272b3d2b7
Remove superfluous properties from the mode-line-client indicator. (Reported by Kalle Olavi Niemitalo)
Karoly Lorentey <lorentey@elte.hu>
parents:
83533
diff
changeset
|
173 help-echo "Emacsclient frame")) |
83434
944e6b68a0de
Display "@" in mode-lines of Emacsclient frames.
Karoly Lorentey <lorentey@elte.hu>
parents:
83414
diff
changeset
|
174 "Mode-line control for identifying Emacsclient frames.") |
944e6b68a0de
Display "@" in mode-lines of Emacsclient frames.
Karoly Lorentey <lorentey@elte.hu>
parents:
83414
diff
changeset
|
175 |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
176 (defvar mode-line-mule-info |
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
177 `("" |
27616
18b19e347f65
(mode-line-mule-info): Fix/extend last change.
Dave Love <fx@gnu.org>
parents:
27238
diff
changeset
|
178 (current-input-method |
44205
999568e4ea2c
(mode-line-mule-info): Use :propertize, not :eval.
Richard M. Stallman <rms@gnu.org>
parents:
43942
diff
changeset
|
179 (:propertize ("" current-input-method-title) |
999568e4ea2c
(mode-line-mule-info): Use :propertize, not :eval.
Richard M. Stallman <rms@gnu.org>
parents:
43942
diff
changeset
|
180 help-echo (concat |
91859
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
181 "Current input method: " |
44205
999568e4ea2c
(mode-line-mule-info): Use :propertize, not :eval.
Richard M. Stallman <rms@gnu.org>
parents:
43942
diff
changeset
|
182 current-input-method |
91859
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
183 "\n\ |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
184 mouse-2: Disable input method\n\ |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
185 mouse-3: Describe current input method") |
62651
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
186 local-map ,mode-line-input-method-map |
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
187 mouse-face mode-line-highlight)) |
30309
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
188 ,(propertize |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
189 "%z" |
39840
68ca5f31c24d
(completion-ignored-extensions): CL-related
Sam Steingold <sds@gnu.org>
parents:
39587
diff
changeset
|
190 'help-echo |
43942
fc8561532c81
(mode-line-mule-info): In computing help-echo prop,
Richard M. Stallman <rms@gnu.org>
parents:
43267
diff
changeset
|
191 #'(lambda (window object point) |
fc8561532c81
(mode-line-mule-info): In computing help-echo prop,
Richard M. Stallman <rms@gnu.org>
parents:
43267
diff
changeset
|
192 (with-current-buffer (window-buffer window) |
fc8561532c81
(mode-line-mule-info): In computing help-echo prop,
Richard M. Stallman <rms@gnu.org>
parents:
43267
diff
changeset
|
193 ;; Don't show this tip if the coding system is nil, |
fc8561532c81
(mode-line-mule-info): In computing help-echo prop,
Richard M. Stallman <rms@gnu.org>
parents:
43267
diff
changeset
|
194 ;; it reads like a bug, and is not useful anyway. |
fc8561532c81
(mode-line-mule-info): In computing help-echo prop,
Richard M. Stallman <rms@gnu.org>
parents:
43267
diff
changeset
|
195 (when buffer-file-coding-system |
91859
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
196 (format "Buffer coding system %s\nmouse-1: describe coding system" |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
197 (if enable-multibyte-characters |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
198 (concat "(multi-byte): " |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
199 (symbol-name buffer-file-coding-system)) |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
200 (concat "(unibyte): " |
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
201 (symbol-name buffer-file-coding-system))))))) |
62651
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
202 'mouse-face 'mode-line-highlight |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
203 'local-map mode-line-coding-system-map) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
204 (:eval (mode-line-eol-desc))) |
18303
8d8d4aa12426
(mode-line-mule-info): Change style for showing
Kenichi Handa <handa@m17n.org>
parents:
18225
diff
changeset
|
205 "Mode-line control for displaying information of multilingual environment. |
8d8d4aa12426
(mode-line-mule-info): Change style for showing
Kenichi Handa <handa@m17n.org>
parents:
18225
diff
changeset
|
206 Normally it displays current input method (if any activated) and |
8d8d4aa12426
(mode-line-mule-info): Change style for showing
Kenichi Handa <handa@m17n.org>
parents:
18225
diff
changeset
|
207 mnemonics of the following coding systems: |
8d8d4aa12426
(mode-line-mule-info): Change style for showing
Kenichi Handa <handa@m17n.org>
parents:
18225
diff
changeset
|
208 coding system for saving or writing the current buffer |
8d8d4aa12426
(mode-line-mule-info): Change style for showing
Kenichi Handa <handa@m17n.org>
parents:
18225
diff
changeset
|
209 coding system for keyboard input (if Emacs is running on terminal) |
25282 | 210 coding system for terminal output (if Emacs is running on terminal)" |
48124
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
211 ;; Currently not: |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
212 ;; coding system for decoding output of buffer process (if any) |
110ec10bd1ea
(mode-line-change-eol, mode-line-eol-desc-cache, mode-line-eol-desc): New.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
46991
diff
changeset
|
213 ;; coding system for encoding text to send to buffer process (if any)." |
25282 | 214 ) |
17058
8d2ff69b0c0a
(mode-line-mule-info): New variable.
Karl Heuer <kwzh@gnu.org>
parents:
16776
diff
changeset
|
215 |
8d2ff69b0c0a
(mode-line-mule-info): New variable.
Karl Heuer <kwzh@gnu.org>
parents:
16776
diff
changeset
|
216 (make-variable-buffer-local 'mode-line-mule-info) |
8d2ff69b0c0a
(mode-line-mule-info): New variable.
Karl Heuer <kwzh@gnu.org>
parents:
16776
diff
changeset
|
217 |
97706
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
218 ;; MSDOS frames have window-system, but want the Fn identification. |
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
219 (defun mode-line-frame-control () |
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
220 "Compute mode-line control for frame identification. |
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
221 Value is used for `mode-line-frame-identification', which see." |
97857
67484b4a5175
(mode-line-frame-control, mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97850
diff
changeset
|
222 (if (or (null window-system) |
67484b4a5175
(mode-line-frame-control, mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97850
diff
changeset
|
223 (eq window-system 'pc)) |
97706
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
224 "-%F " |
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
225 " ")) |
08d09fb1534e
(mode-line-frame-control): New function, caters to `pc' ``window system''.
Eli Zaretskii <eliz@gnu.org>
parents:
97142
diff
changeset
|
226 |
97850
da6fd3fcdb25
(mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97706
diff
changeset
|
227 ;; We need to defer the call to mode-line-frame-control to the time |
da6fd3fcdb25
(mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97706
diff
changeset
|
228 ;; the mode line is actually displayed. |
97857
67484b4a5175
(mode-line-frame-control, mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97850
diff
changeset
|
229 (defvar mode-line-frame-identification '(:eval (mode-line-frame-control)) |
67484b4a5175
(mode-line-frame-control, mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97850
diff
changeset
|
230 "Mode-line control to describe the current frame.") |
97850
da6fd3fcdb25
(mode-line-frame-identification): Fix last change.
Eli Zaretskii <eliz@gnu.org>
parents:
97706
diff
changeset
|
231 (put 'mode-line-frame-identification 'risky-local-variable t) |
17812
7fb38e7df85b
(mode-line-mule-info): Delete the colon.
Richard M. Stallman <rms@gnu.org>
parents:
17793
diff
changeset
|
232 |
25537
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
233 (defvar mode-line-process nil "\ |
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
234 Mode-line control for displaying info on process status. |
16164 | 235 Normally nil in most modes, since there is no process to display.") |
236 | |
237 (make-variable-buffer-local 'mode-line-process) | |
238 | |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
239 (defvar mode-line-modified |
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
240 (list (propertize |
30309
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
241 "%1*" |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
242 'help-echo (purecopy (lambda (window object point) |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
243 (format "Buffer is %s\nmouse-1 toggles" |
30309
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
244 (save-selected-window |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
245 (select-window window) |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
246 (if buffer-read-only |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
247 "read-only" |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
248 "writable"))))) |
38755
2fa1afcedab9
(make-mode-line-mouse-map): Renamed from
Gerd Moellmann <gerd@gnu.org>
parents:
38752
diff
changeset
|
249 'local-map (purecopy (make-mode-line-mouse-map |
65524
d4001c18bf64
(mode-line-eol-desc, mode-line-coding-system-map)
Nick Roberts <nickrob@snap.net.nz>
parents:
64762
diff
changeset
|
250 'mouse-1 |
62651
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
251 #'mode-line-toggle-read-only)) |
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
252 'mouse-face 'mode-line-highlight) |
30309
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
253 (propertize |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
254 "%1+" |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
255 'help-echo (purecopy (lambda (window object point) |
91859
1a6529179b70
(mode-line-mule-info): Make the tooltips more explicit.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91858
diff
changeset
|
256 (format "Buffer is %sodified\nmouse-1 toggles modified state" |
30309
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
257 (save-selected-window |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
258 (select-window window) |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
259 (if (buffer-modified-p) |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
260 "M" |
a1ed8edb10b5
(mode-line-mule-info, mode-line-modified): help-echo
Dave Love <fx@gnu.org>
parents:
30113
diff
changeset
|
261 "Not m"))))) |
38755
2fa1afcedab9
(make-mode-line-mouse-map): Renamed from
Gerd Moellmann <gerd@gnu.org>
parents:
38752
diff
changeset
|
262 'local-map (purecopy (make-mode-line-mouse-map |
65524
d4001c18bf64
(mode-line-eol-desc, mode-line-coding-system-map)
Nick Roberts <nickrob@snap.net.nz>
parents:
64762
diff
changeset
|
263 'mouse-1 #'mode-line-toggle-modified)) |
62651
8d965863dd8c
Supprot mouse-face on mode-line.
Masatake YAMATO <jet@gyve.org>
parents:
61709
diff
changeset
|
264 'mouse-face 'mode-line-highlight)) |
16164 | 265 "Mode-line control for displaying whether current buffer is modified.") |
266 | |
267 (make-variable-buffer-local 'mode-line-modified) | |
268 | |
82042
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
269 (defvar mode-line-remote |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
270 (list (propertize |
82182
78ee45af2b61
(mode-line-remote): Use updated %@ construct.
Nick Roberts <nickrob@snap.net.nz>
parents:
82140
diff
changeset
|
271 "%1@" |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
272 'mouse-face 'mode-line-highlight |
82042
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
273 'help-echo (purecopy (lambda (window object point) |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
274 (format "%s" |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
275 (save-selected-window |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
276 (select-window window) |
91858
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
277 (concat |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
278 (if (file-remote-p default-directory) |
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
279 "Current directory is remote: " |
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
280 "Current directory is local: ") |
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
281 default-directory))))))) |
82042
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
282 "Mode-line flag to show if default-directory for current buffer is remote.") |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
283 |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
284 (make-variable-buffer-local 'mode-line-remote) |
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
285 |
40585
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
286 ;; Actual initialization is below. |
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
287 (defvar mode-line-position nil |
52629
af4a74ff079d
(mode-line-position): Mention size indication in docstring.
Lute Kamstra <lute@gnu.org>
parents:
52465
diff
changeset
|
288 "Mode-line control for displaying the position in the buffer. |
af4a74ff079d
(mode-line-position): Mention size indication in docstring.
Lute Kamstra <lute@gnu.org>
parents:
52465
diff
changeset
|
289 Normally displays the buffer percentage and, optionally, the |
af4a74ff079d
(mode-line-position): Mention size indication in docstring.
Lute Kamstra <lute@gnu.org>
parents:
52465
diff
changeset
|
290 buffer size, the line number and the column number.") |
40585
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
291 |
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
292 (defvar mode-line-modes nil |
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
293 "Mode-line control for displaying major and minor modes.") |
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
294 |
93511
13111c679e71
(mode-line-mode-menu): Move before (new) first use.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93398
diff
changeset
|
295 (defvar mode-line-mode-menu (make-sparse-keymap "Minor Modes") "\ |
13111c679e71
(mode-line-mode-menu): Move before (new) first use.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93398
diff
changeset
|
296 Menu of mode operations in the mode line.") |
13111c679e71
(mode-line-mode-menu): Move before (new) first use.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93398
diff
changeset
|
297 |
53463
160b4f3af303
(completion-ignored-extensions): Add .pfsl.
John Paul Wallington <jpw@pobox.com>
parents:
52815
diff
changeset
|
298 (defvar mode-line-major-mode-keymap |
50565
cd863af50ea1
* help.el (describe-minor-mode): New function implementation.
Masatake YAMATO <jet@gyve.org>
parents:
50554
diff
changeset
|
299 (let ((map (make-sparse-keymap))) |
93889
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
300 (define-key map [mode-line down-mouse-1] |
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
301 '(menu-item "Menu Bar" ignore |
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
302 :filter (lambda (_) (mouse-menu-major-mode-map)))) |
50565
cd863af50ea1
* help.el (describe-minor-mode): New function implementation.
Masatake YAMATO <jet@gyve.org>
parents:
50554
diff
changeset
|
303 (define-key map [mode-line mouse-2] 'describe-mode) |
93511
13111c679e71
(mode-line-mode-menu): Move before (new) first use.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93398
diff
changeset
|
304 (define-key map [mode-line down-mouse-3] mode-line-mode-menu) |
50565
cd863af50ea1
* help.el (describe-minor-mode): New function implementation.
Masatake YAMATO <jet@gyve.org>
parents:
50554
diff
changeset
|
305 map) "\ |
50354
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
306 Keymap to display on major mode.") |
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
307 |
53463
160b4f3af303
(completion-ignored-extensions): Add .pfsl.
John Paul Wallington <jpw@pobox.com>
parents:
52815
diff
changeset
|
308 (defvar mode-line-minor-mode-keymap |
50565
cd863af50ea1
* help.el (describe-minor-mode): New function implementation.
Masatake YAMATO <jet@gyve.org>
parents:
50554
diff
changeset
|
309 (let ((map (make-sparse-keymap))) |
85389
a8bff00271d4
Drew Adams <drew.adams at oracle.com>
Glenn Morris <rgm@gnu.org>
parents:
85376
diff
changeset
|
310 (define-key map [mode-line down-mouse-1] 'mouse-minor-mode-menu) |
50565
cd863af50ea1
* help.el (describe-minor-mode): New function implementation.
Masatake YAMATO <jet@gyve.org>
parents:
50554
diff
changeset
|
311 (define-key map [mode-line mouse-2] 'mode-line-minor-mode-help) |
93511
13111c679e71
(mode-line-mode-menu): Move before (new) first use.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93398
diff
changeset
|
312 (define-key map [mode-line down-mouse-3] mode-line-mode-menu) |
13111c679e71
(mode-line-mode-menu): Move before (new) first use.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93398
diff
changeset
|
313 (define-key map [header-line down-mouse-3] mode-line-mode-menu) |
50565
cd863af50ea1
* help.el (describe-minor-mode): New function implementation.
Masatake YAMATO <jet@gyve.org>
parents:
50554
diff
changeset
|
314 map) "\ |
50354
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
315 Keymap to display on minor modes.") |
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
316 |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
317 (defvar mode-line-column-line-number-mode-map |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
318 (let ((map (make-sparse-keymap)) |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
319 (menu-map (make-sparse-keymap "Toggle Line and Column Number Display"))) |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
320 (define-key menu-map [line-number-mode] |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
321 `(menu-item ,(purecopy "Display Line Numbers") line-number-mode |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
322 :help "Toggle displaying line numbers in the mode-line" |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
323 :button (:toggle . line-number-mode))) |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
324 (define-key menu-map [column-number-mode] |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
325 `(menu-item ,(purecopy "Display Column Numbers") column-number-mode |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
326 :help "Toggle displaying column numbers in the mode-line" |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
327 :button (:toggle . column-number-mode))) |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
328 (define-key map [mode-line down-mouse-1] menu-map) |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
329 map) "\ |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
330 Keymap to display on column and line numbers.") |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
331 |
40585
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
332 (let* ((help-echo |
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
333 ;; The multi-line message doesn't work terribly well on the |
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
334 ;; bottom mode line... Better ideas? |
41172
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
335 ;; "\ |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
336 ;; mouse-1: select window, mouse-2: delete others, mouse-3: delete, |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
337 ;; drag-mouse-1: resize, C-mouse-2: split horizontally" |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
338 "mouse-1: Select (drag to resize)\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
339 mouse-2: Make current window occupy the whole frame\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
340 mouse-3: Remove current window from display") |
93161
e3b492a971e1
(standard-mode-line-modes): Avoid duplicating a string.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
93135
diff
changeset
|
341 (recursive-edit-help-echo "Recursive edit, type C-M-c to get out") |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
342 (dashes (propertize "--" 'help-echo help-echo)) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
343 (standard-mode-line-format |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
344 (list |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
345 "%e" |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
346 (propertize "-" 'help-echo help-echo) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
347 'mode-line-mule-info |
83541 | 348 'mode-line-client |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
349 'mode-line-modified |
82042
422bb10d6d88
(mode-line-remote): New variable.
Nick Roberts <nickrob@snap.net.nz>
parents:
75800
diff
changeset
|
350 'mode-line-remote |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
351 'mode-line-frame-identification |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
352 'mode-line-buffer-identification |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
353 (propertize " " 'help-echo help-echo) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
354 'mode-line-position |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
355 '(vc-mode vc-mode) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
356 (propertize " " 'help-echo help-echo) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
357 'mode-line-modes |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
358 `(which-func-mode ("" which-func-format ,dashes)) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
359 `(global-mode-string (,dashes global-mode-string)) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
360 (propertize "-%-" 'help-echo help-echo))) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
361 (standard-mode-line-modes |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
362 (list |
93161
e3b492a971e1
(standard-mode-line-modes): Avoid duplicating a string.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
93135
diff
changeset
|
363 (propertize "%[" 'help-echo recursive-edit-help-echo) |
93135
c3e303fc7a15
(standard-mode-line-modes): Put special help-echo
Juri Linkov <juri@jurta.org>
parents:
92493
diff
changeset
|
364 (propertize "(" 'help-echo help-echo) |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
365 `(:propertize ("" mode-name) |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
366 help-echo "Major mode\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
367 mouse-1: Display major mode menu\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
368 mouse-2: Show help for major mode\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
369 mouse-3: Toggle minor modes" |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
370 mouse-face mode-line-highlight |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
371 local-map ,mode-line-major-mode-keymap) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
372 '("" mode-line-process) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
373 `(:propertize ("" minor-mode-alist) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
374 mouse-face mode-line-highlight |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
375 help-echo "Minor mode\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
376 mouse-1: Display minor mode menu\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
377 mouse-2: Show help for minor mode\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
378 mouse-3: Toggle minor modes" |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
379 local-map ,mode-line-minor-mode-keymap) |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
380 (propertize "%n" 'help-echo "mouse-2: Remove narrowing from the current buffer" |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
381 'mouse-face 'mode-line-highlight |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
382 'local-map (make-mode-line-mouse-map |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
383 'mouse-2 #'mode-line-widen)) |
93135
c3e303fc7a15
(standard-mode-line-modes): Put special help-echo
Juri Linkov <juri@jurta.org>
parents:
92493
diff
changeset
|
384 (propertize ")" 'help-echo help-echo) |
93161
e3b492a971e1
(standard-mode-line-modes): Avoid duplicating a string.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
93135
diff
changeset
|
385 (propertize "%]" 'help-echo recursive-edit-help-echo) |
93135
c3e303fc7a15
(standard-mode-line-modes): Put special help-echo
Juri Linkov <juri@jurta.org>
parents:
92493
diff
changeset
|
386 (propertize "--" 'help-echo help-echo))) |
40585
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
387 |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
388 (standard-mode-line-position |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
389 `((-3 ,(propertize |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
390 "%p" |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
391 'local-map mode-line-column-line-number-mode-map |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
392 'mouse-face 'mode-line-highlight |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
393 ;; XXX needs better description |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
394 'help-echo "Size indication mode\n\ |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
395 mouse-1: Display Line and Column Mode Menu")) |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
396 (size-indication-mode |
91858
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
397 (8 ,(propertize |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
398 " of %I" |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
399 'local-map mode-line-column-line-number-mode-map |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
400 'mouse-face 'mode-line-highlight |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
401 ;; XXX needs better description |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
402 'help-echo "Size indication mode\n\ |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
403 mouse-1: Display Line and Column Mode Menu"))) |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
404 (line-number-mode |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
405 ((column-number-mode |
91858
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
406 (10 ,(propertize |
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
407 " (%l,%c)" |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
408 'local-map mode-line-column-line-number-mode-map |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
409 'mouse-face 'mode-line-highlight |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
410 'help-echo "Line number and Column number\n\ |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
411 mouse-1: Display Line and Column Mode Menu")) |
91858
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
412 (6 ,(propertize |
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
413 " L%l" |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
414 'local-map mode-line-column-line-number-mode-map |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
415 'mouse-face 'mode-line-highlight |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
416 'help-echo "Line Number\n\ |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
417 mouse-1: Display Line and Column Mode Menu")))) |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
418 ((column-number-mode |
91858
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
419 (5 ,(propertize |
0a38cdf50e28
*** empty log message ***
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91855
diff
changeset
|
420 " C%c" |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
421 'local-map mode-line-column-line-number-mode-map |
92493
402ee2cfca27
* bindings.el (mode-line-remote): Add mouse-face. Improve tooltip.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
92434
diff
changeset
|
422 'mouse-face 'mode-line-highlight |
92434
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
423 'help-echo "Column number\n\ |
1fe5dc1b18dd
(mode-line-column-line-number-mode-map): New variable.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91859
diff
changeset
|
424 mouse-1: Display Line and Column Mode Menu")))))))) |
40585
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
425 |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
426 (setq-default mode-line-format standard-mode-line-format) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
427 (put 'mode-line-format 'standard-value |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
428 (list `(quote ,standard-mode-line-format))) |
40585
595d79a92c0e
(mode-line-frame-identification): Add doc string.
Richard M. Stallman <rms@gnu.org>
parents:
40533
diff
changeset
|
429 |
72291
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
430 (setq-default mode-line-modes standard-mode-line-modes) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
431 (put 'mode-line-modes 'standard-value |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
432 (list `(quote ,standard-mode-line-modes))) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
433 |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
434 (setq-default mode-line-position standard-mode-line-position) |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
435 (put 'mode-line-position 'standard-value |
6425e3ef6472
* bindings.el: Give mode-line-format, mode-line-modes, and
Chong Yidong <cyd@stupidchicken.com>
parents:
72241
diff
changeset
|
436 (list `(quote ,standard-mode-line-position)))) |
16164 | 437 |
72798
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
438 (defvar mode-line-buffer-identification-keymap |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
439 ;; Add menu of buffer operations to the buffer identification part |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
440 ;; of the mode line.or header line. |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
441 (let ((map (make-sparse-keymap))) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
442 ;; Bind down- events so that the global keymap won't ``shine |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
443 ;; through''. |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
444 (define-key map [mode-line mouse-1] 'mode-line-previous-buffer) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
445 (define-key map [header-line down-mouse-1] 'ignore) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
446 (define-key map [header-line mouse-1] 'mode-line-previous-buffer) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
447 (define-key map [mode-line mouse-3] 'mode-line-next-buffer) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
448 (define-key map [header-line down-mouse-3] 'ignore) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
449 (define-key map [header-line mouse-3] 'mode-line-next-buffer) |
6e061fdbf037
(mode-line-buffer-identification-keymap):
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
72291
diff
changeset
|
450 map) "\ |
25537
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
451 Keymap for what is displayed by `mode-line-buffer-identification'.") |
24985
e4f2a5d1dc28
(make-mode-line-mouse-sensitive): Add key
Gerd Moellmann <gerd@gnu.org>
parents:
24606
diff
changeset
|
452 |
72174
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
453 (defun propertized-buffer-identification (fmt) |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
454 "Return a list suitable for `mode-line-buffer-identification'. |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
455 FMT is a format specifier such as \"%12b\". This function adds |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
456 text properties for face, help-echo, and local-map to it." |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
457 (list (propertize fmt |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
458 'face 'mode-line-buffer-id |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
459 'help-echo |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
460 (purecopy "Buffer name\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
461 mouse-1: previous buffer\n\ |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
462 mouse-3: next buffer") |
72174
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
463 'mouse-face 'mode-line-highlight |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
464 'local-map mode-line-buffer-identification-keymap))) |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
465 |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
466 (defvar mode-line-buffer-identification (propertized-buffer-identification "%12b") "\ |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
467 Mode-line control for identifying the buffer being displayed. |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
468 Its default value is (\"%12b\") with some text properties added. |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
469 Major modes that edit things other than ordinary files may change this |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
470 \(e.g. Info, Dired,...)") |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
471 |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
472 (make-variable-buffer-local 'mode-line-buffer-identification) |
a2038efe61ed
(mode-line-frame-identification)
Richard M. Stallman <rms@gnu.org>
parents:
72000
diff
changeset
|
473 |
41457
60f633593ee0
(last-buffer, unbury-buffer): Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
41280
diff
changeset
|
474 (defun unbury-buffer () "\ |
60f633593ee0
(last-buffer, unbury-buffer): Doc fixes.
Richard M. Stallman <rms@gnu.org>
parents:
41280
diff
changeset
|
475 Switch to the last buffer in the buffer list." |
41280
77b1386373e0
(last-buffer, unbury-buffer): New functions.
Sam Steingold <sds@gnu.org>
parents:
41210
diff
changeset
|
476 (interactive) |
77b1386373e0
(last-buffer, unbury-buffer): New functions.
Sam Steingold <sds@gnu.org>
parents:
41210
diff
changeset
|
477 (switch-to-buffer (last-buffer))) |
77b1386373e0
(last-buffer, unbury-buffer): New functions.
Sam Steingold <sds@gnu.org>
parents:
41210
diff
changeset
|
478 |
38903
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
479 (defun mode-line-unbury-buffer (event) "\ |
41280
77b1386373e0
(last-buffer, unbury-buffer): New functions.
Sam Steingold <sds@gnu.org>
parents:
41210
diff
changeset
|
480 Call `unbury-buffer' in this window." |
38903
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
481 (interactive "e") |
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
482 (save-selected-window |
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
483 (select-window (posn-window (event-start event))) |
41280
77b1386373e0
(last-buffer, unbury-buffer): New functions.
Sam Steingold <sds@gnu.org>
parents:
41210
diff
changeset
|
484 (unbury-buffer))) |
38903
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
485 |
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
486 (defun mode-line-bury-buffer (event) "\ |
41474 | 487 Like `bury-buffer', but temporarily select EVENT's window." |
38903
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
488 (interactive "e") |
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
489 (save-selected-window |
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
490 (select-window (posn-window (event-start event))) |
5653fe43d6fb
(mode-line-unbury-buffer): Add EVENT parameter.
Gerd Moellmann <gerd@gnu.org>
parents:
38757
diff
changeset
|
491 (bury-buffer))) |
24985
e4f2a5d1dc28
(make-mode-line-mouse-sensitive): Add key
Gerd Moellmann <gerd@gnu.org>
parents:
24606
diff
changeset
|
492 |
25537
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
493 (defun mode-line-other-buffer () "\ |
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
494 Switch to the most recently selected buffer other than the current one." |
24985
e4f2a5d1dc28
(make-mode-line-mouse-sensitive): Add key
Gerd Moellmann <gerd@gnu.org>
parents:
24606
diff
changeset
|
495 (interactive) |
e4f2a5d1dc28
(make-mode-line-mouse-sensitive): Add key
Gerd Moellmann <gerd@gnu.org>
parents:
24606
diff
changeset
|
496 (switch-to-buffer (other-buffer))) |
e4f2a5d1dc28
(make-mode-line-mouse-sensitive): Add key
Gerd Moellmann <gerd@gnu.org>
parents:
24606
diff
changeset
|
497 |
68215
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
498 (defun mode-line-next-buffer (event) |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
499 "Like `next-buffer', but temporarily select EVENT's window." |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
500 (interactive "e") |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
501 (save-selected-window |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
502 (select-window (posn-window (event-start event))) |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
503 (next-buffer))) |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
504 |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
505 (defun mode-line-previous-buffer (event) |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
506 "Like `previous-buffer', but temporarily select EVENT's window." |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
507 (interactive "e") |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
508 (save-selected-window |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
509 (select-window (posn-window (event-start event))) |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
510 (previous-buffer))) |
d300de715fe6
(propertized-buffer-identification): Use face
Juri Linkov <juri@jurta.org>
parents:
67602
diff
changeset
|
511 |
25898 | 512 (defmacro bound-and-true-p (var) |
513 "Return the value of symbol VAR if it is bound, else nil." | |
26052
b6e77fbb182b
(completion-ignored-extensions): Added ".sparcf"
Gerd Moellmann <gerd@gnu.org>
parents:
25898
diff
changeset
|
514 `(and (boundp (quote ,var)) ,var)) |
25898 | 515 |
73493
334001e04b9b
(mode-line-mode-menu): Remove bindings for global
Nick Roberts <nickrob@snap.net.nz>
parents:
73475
diff
changeset
|
516 ;; Use mode-line-mode-menu for local minor-modes only. |
334001e04b9b
(mode-line-mode-menu): Remove bindings for global
Nick Roberts <nickrob@snap.net.nz>
parents:
73475
diff
changeset
|
517 ;; Global ones can go on the menubar (Options --> Show/Hide). |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
518 (define-key mode-line-mode-menu [overwrite-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
519 `(menu-item ,(purecopy "Overwrite (Ovwrt)") overwrite-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
520 :help "Overwrite mode: typed characters replace existing text" |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
521 :button (:toggle . overwrite-mode))) |
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
522 (define-key mode-line-mode-menu [outline-minor-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
523 `(menu-item ,(purecopy "Outline (Outl)") outline-minor-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
524 ;; XXX: This needs a good, brief description. |
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
525 :help "" |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
526 :button (:toggle . (bound-and-true-p outline-minor-mode)))) |
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
527 (define-key mode-line-mode-menu [highlight-changes-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
528 `(menu-item ,(purecopy "Highlight changes (Chg)") highlight-changes-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
529 :help "Show changes in the buffer in a distinctive color" |
59600
26b237e765bf
(mode-line-mode-menu): Use bound-and-true-p for all the
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
58942
diff
changeset
|
530 :button (:toggle . (bound-and-true-p highlight-changes-mode)))) |
56416
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
531 (define-key mode-line-mode-menu [hide-ifdef-mode] |
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
532 `(menu-item ,(purecopy "Hide ifdef (Ifdef)") hide-ifdef-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
533 :help "Show/Hide code within #ifdef constructs" |
56416
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
534 :button (:toggle . (bound-and-true-p hide-ifdef-mode)))) |
34339
b00a4ef86bb4
(mode-line-mode-menu): Add glasses-mode.
Gerd Moellmann <gerd@gnu.org>
parents:
34337
diff
changeset
|
535 (define-key mode-line-mode-menu [glasses-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
536 `(menu-item ,(purecopy "Glasses (o^o)") glasses-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
537 :help "Insert virtual separators to make long identifiers easy to read" |
36882
595b423a9b3f
(mode-line-mode-menu): `glasses-mode' might be unbound.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
36806
diff
changeset
|
538 :button (:toggle . (bound-and-true-p glasses-mode)))) |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
539 (define-key mode-line-mode-menu [font-lock-mode] |
44623
29ce36db46de
(mode-line-mode-menu): Update names to reflect latest changes.
Pavel Janík <Pavel@Janik.cz>
parents:
44205
diff
changeset
|
540 `(menu-item ,(purecopy "Font Lock") font-lock-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
541 :help "Syntax coloring" |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
542 :button (:toggle . font-lock-mode))) |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
543 (define-key mode-line-mode-menu [flyspell-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
544 `(menu-item ,(purecopy "Flyspell (Fly)") flyspell-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
545 :help "Spell checking on the fly" |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
546 :button (:toggle . (bound-and-true-p flyspell-mode)))) |
56416
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
547 (define-key mode-line-mode-menu [auto-revert-tail-mode] |
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
548 `(menu-item ,(purecopy "Auto revert tail (Tail)") auto-revert-tail-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
549 :help "Revert the tail of the buffer when buffer grows" |
73453
c4f0807660f6
(mode-line-mode-menu): Disable auto-revert-tail-mode
Nick Roberts <nickrob@snap.net.nz>
parents:
73050
diff
changeset
|
550 :enable (buffer-file-name) |
59600
26b237e765bf
(mode-line-mode-menu): Use bound-and-true-p for all the
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
58942
diff
changeset
|
551 :button (:toggle . (bound-and-true-p auto-revert-tail-mode)))) |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
552 (define-key mode-line-mode-menu [auto-revert-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
553 `(menu-item ,(purecopy "Auto revert (ARev)") auto-revert-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
554 :help "Revert the buffer when the file on disk changes" |
59600
26b237e765bf
(mode-line-mode-menu): Use bound-and-true-p for all the
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
58942
diff
changeset
|
555 :button (:toggle . (bound-and-true-p auto-revert-mode)))) |
56416
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
556 (define-key mode-line-mode-menu [auto-fill-mode] |
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
557 `(menu-item ,(purecopy "Auto fill (Fill)") auto-fill-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
558 :help "Automatically insert new lines" |
56416
5b6d3a196c92
(mode-line-mode-menu): Fix alphabetical ordering and add auto-revert-tail-mode.
Daniel Pfeiffer <occitan@esperanto.org>
parents:
56049
diff
changeset
|
559 :button (:toggle . auto-fill-function))) |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
560 (define-key mode-line-mode-menu [abbrev-mode] |
43267
a98ecf783878
(mode-line-minor-mode-keymap): Definition moved up.
Richard M. Stallman <rms@gnu.org>
parents:
42911
diff
changeset
|
561 `(menu-item ,(purecopy "Abbrev (Abbrev)") abbrev-mode |
91855
0ea367242241
* vc-hooks.el (vc-menu-map):
Dan Nicolaescu <dann@ics.uci.edu>
parents:
91327
diff
changeset
|
562 :help "Automatically expand abbreviations" |
34337
b7ae6305e6eb
(mode-line-mode-menu): Reverse the order
Gerd Moellmann <gerd@gnu.org>
parents:
33585
diff
changeset
|
563 :button (:toggle . abbrev-mode))) |
27238
bfb9906d58b5
(make-mode-line-mouse2-map): New function.
Dave Love <fx@gnu.org>
parents:
27151
diff
changeset
|
564 |
50354
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
565 (defun mode-line-minor-mode-help (event) |
85389
a8bff00271d4
Drew Adams <drew.adams at oracle.com>
Glenn Morris <rgm@gnu.org>
parents:
85376
diff
changeset
|
566 "Describe minor mode for EVENT on minor modes area of the mode line." |
50354
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
567 (interactive "@e") |
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
568 (let ((indicator (car (nth 4 (car (cdr event)))))) |
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
569 (describe-minor-mode-from-indicator indicator))) |
e1b13a2263f8
(mode-line-major-mode-keymap): New variable.
Juanma Barranquero <lekktu@gmail.com>
parents:
48916
diff
changeset
|
570 |
38757
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
571 (defvar minor-mode-alist nil "\ |
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
572 Alist saying how to show minor modes in the mode line. |
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
573 Each element looks like (VARIABLE STRING); |
78492
7c8949dbfa0d
Replace `iff' in doc-strings and comments.
Glenn Morris <rgm@gnu.org>
parents:
78236
diff
changeset
|
574 STRING is included in the mode line if VARIABLE's value is non-nil. |
38757
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
575 |
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
576 Actually, STRING need not be a string; any possible mode-line element |
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
577 is okay. See `mode-line-format'.") |
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
578 ;; Don't use purecopy here--some people want to change these strings. |
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
579 (setq minor-mode-alist |
93889
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
580 '((abbrev-mode " Abbrev") |
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
581 (overwrite-mode overwrite-mode) |
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
582 (auto-fill-function " Fill") |
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
583 ;; not really a minor mode... |
a22fbbd18c59
* mouse.el (mouse-menu-major-mode-map): New fun extracted from
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
93511
diff
changeset
|
584 (defining-kbd-macro " Def"))) |
38757
75666bd5d498
(minor-mode-alist): Use mode-line-minor-mode-keymap
Gerd Moellmann <gerd@gnu.org>
parents:
38755
diff
changeset
|
585 |
16164 | 586 ;; These variables are used by autoloadable packages. |
587 ;; They are defined here so that they do not get overridden | |
588 ;; by the loading of those packages. | |
589 | |
590 ;; Names in directory that end in one of these | |
591 ;; are ignored in completion, | |
592 ;; making it more likely you will get a unique match. | |
593 (setq completion-ignored-extensions | |
16776
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
594 (append |
39930
2e2351633c8e
(completion-ignored-extensions) [ms-dos, windows-nt]:
Eli Zaretskii <eliz@gnu.org>
parents:
39903
diff
changeset
|
595 (cond ((memq system-type '(ms-dos windows-nt)) |
2e2351633c8e
(completion-ignored-extensions) [ms-dos, windows-nt]:
Eli Zaretskii <eliz@gnu.org>
parents:
39903
diff
changeset
|
596 '(".o" "~" ".bin" ".bak" ".obj" ".map" ".ico" ".pif" ".lnk" |
2e2351633c8e
(completion-ignored-extensions) [ms-dos, windows-nt]:
Eli Zaretskii <eliz@gnu.org>
parents:
39903
diff
changeset
|
597 ".a" ".ln" ".blg" ".bbl" ".dll" ".drv" ".vxd" ".386")) |
16776
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
598 (t |
39930
2e2351633c8e
(completion-ignored-extensions) [ms-dos, windows-nt]:
Eli Zaretskii <eliz@gnu.org>
parents:
39903
diff
changeset
|
599 '(".o" "~" ".bin" ".lbin" ".so" |
16776
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
600 ".a" ".ln" ".blg" ".bbl"))) |
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
601 '(".elc" ".lof" |
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
602 ".glo" ".idx" ".lot" |
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
603 ;; TeX-related |
85369
5b96a46cc08a
* bindings.el (completion-ignored-extensions): Remove pdf and dvi
Reiner Steib <Reiner.Steib@gmx.de>
parents:
85070
diff
changeset
|
604 ".fmt" ".tfm" |
21309
dfa28803a4aa
(completion-ignored-extensions): Add a few.
Richard M. Stallman <rms@gnu.org>
parents:
20798
diff
changeset
|
605 ;; Java compiled |
dfa28803a4aa
(completion-ignored-extensions): Add a few.
Richard M. Stallman <rms@gnu.org>
parents:
20798
diff
changeset
|
606 ".class" |
39840
68ca5f31c24d
(completion-ignored-extensions): CL-related
Sam Steingold <sds@gnu.org>
parents:
39587
diff
changeset
|
607 ;; CLISP |
68ca5f31c24d
(completion-ignored-extensions): CL-related
Sam Steingold <sds@gnu.org>
parents:
39587
diff
changeset
|
608 ".fas" ".lib" ".mem" |
21309
dfa28803a4aa
(completion-ignored-extensions): Add a few.
Richard M. Stallman <rms@gnu.org>
parents:
20798
diff
changeset
|
609 ;; CMUCL |
26052
b6e77fbb182b
(completion-ignored-extensions): Added ".sparcf"
Gerd Moellmann <gerd@gnu.org>
parents:
25898
diff
changeset
|
610 ".x86f" ".sparcf" |
53463
160b4f3af303
(completion-ignored-extensions): Add .pfsl.
John Paul Wallington <jpw@pobox.com>
parents:
52815
diff
changeset
|
611 ;; Other CL implementations (Allegro, LispWorks, OpenMCL) |
57168
b4b1dca14832
(completion-ignored-extensions): Add .dfsl.
John Paul Wallington <jpw@pobox.com>
parents:
57166
diff
changeset
|
612 ".fasl" ".ufsl" ".fsl" ".dxl" ".pfsl" ".dfsl" |
95593
54d39499f129
(completion-ignored-extensions): Add .p64fsl, .d64fsl, and .dx64fsl.
John Paul Wallington <jpw@pobox.com>
parents:
94678
diff
changeset
|
613 ".p64fsl" ".d64fsl" ".dx64fsl" |
30508
976820f4a1bb
(completion-ignored-extensions): Add `.la', `.lo',
Gerd Moellmann <gerd@gnu.org>
parents:
30309
diff
changeset
|
614 ;; Libtool |
976820f4a1bb
(completion-ignored-extensions): Add `.la', `.lo',
Gerd Moellmann <gerd@gnu.org>
parents:
30309
diff
changeset
|
615 ".lo" ".la" |
46191
ee1f09c2135a
(completion-ignored-extensions): Add .gmo and .mo.
Richard M. Stallman <rms@gnu.org>
parents:
44623
diff
changeset
|
616 ;; Gettext |
ee1f09c2135a
(completion-ignored-extensions): Add .gmo and .mo.
Richard M. Stallman <rms@gnu.org>
parents:
44623
diff
changeset
|
617 ".gmo" ".mo" |
16776
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
618 ;; Texinfo-related |
52775
cbc9675be6b0
(completion-ignored-extensions): Remove .log.
Dave Love <fx@gnu.org>
parents:
52664
diff
changeset
|
619 ;; This used to contain .log, but that's commonly used for log |
cbc9675be6b0
(completion-ignored-extensions): Remove .log.
Dave Love <fx@gnu.org>
parents:
52664
diff
changeset
|
620 ;; files you do want to see, not just TeX stuff. -- fx |
cbc9675be6b0
(completion-ignored-extensions): Remove .log.
Dave Love <fx@gnu.org>
parents:
52664
diff
changeset
|
621 ".toc" ".aux" |
16776
b998fe0016d5
(completion-ignored-extensions):
Richard M. Stallman <rms@gnu.org>
parents:
16691
diff
changeset
|
622 ".cp" ".fn" ".ky" ".pg" ".tp" ".vr" |
56049
ae7b62bc4999
(completion-ignored-extensions): Add file extensions
Eli Zaretskii <eliz@gnu.org>
parents:
55942
diff
changeset
|
623 ".cps" ".fns" ".kys" ".pgs" ".tps" ".vrs" |
ae7b62bc4999
(completion-ignored-extensions): Add file extensions
Eli Zaretskii <eliz@gnu.org>
parents:
55942
diff
changeset
|
624 ;; Python byte-compiled |
ae7b62bc4999
(completion-ignored-extensions): Add file extensions
Eli Zaretskii <eliz@gnu.org>
parents:
55942
diff
changeset
|
625 ".pyc" ".pyo"))) |
16164 | 626 |
39932
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
627 ;; Suffixes used for executables. |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
628 (setq exec-suffixes |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
629 (cond |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
630 ((memq system-type '(ms-dos windows-nt)) |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
631 '(".exe" ".com" ".bat" ".cmd" ".btm" "")) |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
632 (t |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
633 '("")))) |
ade54d52bb06
(exec-suffixes): Initialize to a system-dependent value.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39930
diff
changeset
|
634 |
28105
763e873d5257
(mode-line-format): Fix line-number and
Dave Love <fx@gnu.org>
parents:
27783
diff
changeset
|
635 ;; Packages should add to this list appropriately when they are |
763e873d5257
(mode-line-format): Fix line-number and
Dave Love <fx@gnu.org>
parents:
27783
diff
changeset
|
636 ;; loaded, rather than listing everything here. |
16164 | 637 (setq debug-ignored-errors |
638 '(beginning-of-line beginning-of-buffer end-of-line | |
639 end-of-buffer end-of-file buffer-read-only | |
21309
dfa28803a4aa
(completion-ignored-extensions): Add a few.
Richard M. Stallman <rms@gnu.org>
parents:
20798
diff
changeset
|
640 file-supersession |
16164 | 641 "^Previous command was not a yank$" |
642 "^Minibuffer window is not active$" | |
55942
7297a6eaf64b
* bindings.el (debug-ignored-errors): Add regexps for history
Juri Linkov <juri@jurta.org>
parents:
55275
diff
changeset
|
643 "^No previous history search regexp$" |
7297a6eaf64b
* bindings.el (debug-ignored-errors): Add regexps for history
Juri Linkov <juri@jurta.org>
parents:
55275
diff
changeset
|
644 "^No later matching history item$" |
7297a6eaf64b
* bindings.el (debug-ignored-errors): Add regexps for history
Juri Linkov <juri@jurta.org>
parents:
55275
diff
changeset
|
645 "^No earlier matching history item$" |
7297a6eaf64b
* bindings.el (debug-ignored-errors): Add regexps for history
Juri Linkov <juri@jurta.org>
parents:
55275
diff
changeset
|
646 "^End of history; no default available$" |
93398
f0a6d04b8dff
(debug-ignored-errors): Change "^End of history;
Juri Linkov <juri@jurta.org>
parents:
93234
diff
changeset
|
647 "^End of defaults; no next item$" |
16164 | 648 "^Beginning of history; no preceding item$" |
649 "^No recursive edit is in progress$" | |
650 "^Changes to be undone are outside visible portion of buffer$" | |
651 "^No undo information in this buffer$" | |
55942
7297a6eaf64b
* bindings.el (debug-ignored-errors): Add regexps for history
Juri Linkov <juri@jurta.org>
parents:
55275
diff
changeset
|
652 "^No further undo information" |
16164 | 653 "^Save not confirmed$" |
654 "^Recover-file cancelled\\.$" | |
20798
25b0721fc2fc
(debug-ignored-errors): Add some elements.
Richard M. Stallman <rms@gnu.org>
parents:
20638
diff
changeset
|
655 "^Cannot switch buffers in a dedicated window$" |
55942
7297a6eaf64b
* bindings.el (debug-ignored-errors): Add regexps for history
Juri Linkov <juri@jurta.org>
parents:
55275
diff
changeset
|
656 )) |
16164 | 657 |
658 | |
659 (make-variable-buffer-local 'indent-tabs-mode) | |
660 | |
36806
6eaf3f2390b4
(features): Add `md5' and `overlay' to the list.
Gerd Moellmann <gerd@gnu.org>
parents:
35777
diff
changeset
|
661 ;; We have base64 and md5 functions built in now. |
41172
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
662 (provide 'base64) |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
663 (provide 'md5) |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
664 (provide 'overlay '(display syntax-table field)) |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
665 (provide 'text-properties '(display syntax-table field point-entered)) |
23783
d015bfcaaead
(features): Add `base64' to this list.
Richard M. Stallman <rms@gnu.org>
parents:
22705
diff
changeset
|
666 |
18325
65986b1a2cd6
(complete-symbol): New function.
Richard M. Stallman <rms@gnu.org>
parents:
18303
diff
changeset
|
667 (define-key esc-map "\t" 'complete-symbol) |
65986b1a2cd6
(complete-symbol): New function.
Richard M. Stallman <rms@gnu.org>
parents:
18303
diff
changeset
|
668 |
25537
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
669 (defun complete-symbol (arg) "\ |
f329ed7625ee
Make some doc strings obey the make-docfile convention.
Dave Love <fx@gnu.org>
parents:
25312
diff
changeset
|
670 Perform tags completion on the text around point. |
16164 | 671 Completes to the set of names listed in the current tags table. |
672 The string to complete is chosen in the same way as the default | |
24606
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
673 for \\[find-tag] (which see). |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
674 |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
675 With a prefix argument, this command does completion within |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
676 the collection of symbols listed in the index of the manual for the |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
677 language you are using." |
18325
65986b1a2cd6
(complete-symbol): New function.
Richard M. Stallman <rms@gnu.org>
parents:
18303
diff
changeset
|
678 (interactive "P") |
65986b1a2cd6
(complete-symbol): New function.
Richard M. Stallman <rms@gnu.org>
parents:
18303
diff
changeset
|
679 (if arg |
24606
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
680 (info-complete-symbol) |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
681 (if (fboundp 'complete-tag) |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
682 (complete-tag) |
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
683 ;; Don't autoload etags if we have no tags table. |
87139
f358a2fd5895
Fix buggy calls to `error'.
Deepak Goel <deego@gnufans.org>
parents:
86275
diff
changeset
|
684 (error "%s" (substitute-command-keys |
24606
6f29d3fe8aa5
(complete-symbol): Invert meaning of prefix arg.
Richard M. Stallman <rms@gnu.org>
parents:
23783
diff
changeset
|
685 "No tags table loaded; use \\[visit-tags-table] to load one"))))) |
16164 | 686 |
687 ;; Reduce total amount of space we must allocate during this function | |
688 ;; that we will not need to keep permanently. | |
689 (garbage-collect) | |
690 | |
17784
5b2fa4a13a8b
Define Latin-1, Latin-2 and Latin-3 chars as self-inserting.
Richard M. Stallman <rms@gnu.org>
parents:
17595
diff
changeset
|
691 |
16164 | 692 (setq help-event-list '(help f1)) |
693 | |
20577
46c697b88c83
(minor-mode-overriding-map-alist):
Richard M. Stallman <rms@gnu.org>
parents:
20416
diff
changeset
|
694 (make-variable-buffer-local 'minor-mode-overriding-map-alist) |
46c697b88c83
(minor-mode-overriding-map-alist):
Richard M. Stallman <rms@gnu.org>
parents:
20416
diff
changeset
|
695 |
41172
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
696 ;; From frame.c |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
697 (global-set-key [switch-frame] 'handle-switch-frame) |
50554
ff982d8c0772
(global-map): Bind [select-window].
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50354
diff
changeset
|
698 (global-set-key [select-window] 'handle-select-window) |
ff982d8c0772
(global-map): Bind [select-window].
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50354
diff
changeset
|
699 |
ff982d8c0772
(global-map): Bind [select-window].
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50354
diff
changeset
|
700 ;; FIXME: Do those 3 events really ever reach the global-map ? |
ff982d8c0772
(global-map): Bind [select-window].
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50354
diff
changeset
|
701 ;; It seems that they can't because they're handled via |
ff982d8c0772
(global-map): Bind [select-window].
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
50354
diff
changeset
|
702 ;; special-event-map which is used at very low-level. -stef |
41172
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
703 (global-set-key [delete-frame] 'handle-delete-frame) |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
704 (global-set-key [iconify-frame] 'ignore-event) |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
705 (global-set-key [make-frame-visible] 'ignore-event) |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
706 |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
707 |
16164 | 708 ;These commands are defined in editfns.c |
709 ;but they are not assigned to keys there. | |
710 (put 'narrow-to-region 'disabled t) | |
96437
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
711 |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
712 (defvar narrow-map (make-sparse-keymap) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
713 "Keymap for narrowing commands.") |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
714 (define-key ctl-x-map "n" narrow-map) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
715 |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
716 (define-key narrow-map "n" 'narrow-to-region) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
717 (define-key narrow-map "w" 'widen) |
16164 | 718 |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
719 ;; Quitting |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
720 (define-key global-map "\e\e\e" 'keyboard-escape-quit) |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
721 (define-key global-map "\C-g" 'keyboard-quit) |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
722 |
84698
e6e2af0f00c5
Bind C-z to suspend-frame instead of suspend-emacs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
83652
diff
changeset
|
723 ;; Used to be in termdev.el: when using several terminals, make C-z |
e6e2af0f00c5
Bind C-z to suspend-frame instead of suspend-emacs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
83652
diff
changeset
|
724 ;; suspend only the relevant terminal. |
e6e2af0f00c5
Bind C-z to suspend-frame instead of suspend-emacs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
83652
diff
changeset
|
725 (substitute-key-definition 'suspend-emacs 'suspend-frame global-map) |
e6e2af0f00c5
Bind C-z to suspend-frame instead of suspend-emacs.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
83652
diff
changeset
|
726 |
16164 | 727 (define-key global-map "\C-j" 'newline-and-indent) |
728 (define-key global-map "\C-m" 'newline) | |
729 (define-key global-map "\C-o" 'open-line) | |
730 (define-key esc-map "\C-o" 'split-line) | |
731 (define-key global-map "\C-q" 'quoted-insert) | |
732 (define-key esc-map "^" 'delete-indentation) | |
733 (define-key esc-map "\\" 'delete-horizontal-space) | |
734 (define-key esc-map "m" 'back-to-indentation) | |
735 (define-key ctl-x-map "\C-o" 'delete-blank-lines) | |
736 (define-key esc-map " " 'just-one-space) | |
737 (define-key esc-map "z" 'zap-to-char) | |
738 (define-key esc-map "=" 'count-lines-region) | |
739 (define-key ctl-x-map "=" 'what-cursor-position) | |
740 (define-key esc-map ":" 'eval-expression) | |
741 ;; Define ESC ESC : like ESC : for people who type ESC ESC out of habit. | |
742 (define-key esc-map "\M-:" 'eval-expression) | |
743 ;; Changed from C-x ESC so that function keys work following C-x. | |
744 (define-key ctl-x-map "\e\e" 'repeat-complex-command) | |
745 ;; New binding analogous to M-:. | |
746 (define-key ctl-x-map "\M-:" 'repeat-complex-command) | |
747 (define-key ctl-x-map "u" 'advertised-undo) | |
748 ;; Many people are used to typing C-/ on X terminals and getting C-_. | |
749 (define-key global-map [?\C-/] 'undo) | |
750 (define-key global-map "\C-_" 'undo) | |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
751 ;; Richard said that we should not use C-x <uppercase letter> and I have |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
752 ;; no idea whereas to bind it. Any suggestion welcome. -stef |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
753 ;; (define-key ctl-x-map "U" 'undo-only) |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
754 |
16164 | 755 (define-key esc-map "!" 'shell-command) |
756 (define-key esc-map "|" 'shell-command-on-region) | |
757 | |
96437
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
758 (define-key ctl-x-map [right] 'next-buffer) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
759 (define-key ctl-x-map [C-right] 'next-buffer) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
760 (define-key ctl-x-map [left] 'previous-buffer) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
761 (define-key ctl-x-map [C-left] 'previous-buffer) |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
762 |
39842
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
763 (let ((map minibuffer-local-map)) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
764 (define-key map "\en" 'next-history-element) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
765 (define-key map [next] 'next-history-element) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
766 (define-key map [down] 'next-history-element) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
767 (define-key map "\ep" 'previous-history-element) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
768 (define-key map [prior] 'previous-history-element) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
769 (define-key map [up] 'previous-history-element) |
12413db4a01f
(minibuffer-local-map): Also bind next, C-n, C-s, prior,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39840
diff
changeset
|
770 (define-key map "\es" 'next-matching-history-element) |
72000
8c5ba642d479
(minibuffer-local-map): Rebind TAB so it inserts a \t.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
71393
diff
changeset
|
771 (define-key map "\er" 'previous-matching-history-element) |
8c5ba642d479
(minibuffer-local-map): Rebind TAB so it inserts a \t.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
71393
diff
changeset
|
772 ;; Override the global binding (which calls indent-relative via |
8c5ba642d479
(minibuffer-local-map): Rebind TAB so it inserts a \t.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
71393
diff
changeset
|
773 ;; indent-for-tab-command). The alignment that indent-relative tries to |
8c5ba642d479
(minibuffer-local-map): Rebind TAB so it inserts a \t.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
71393
diff
changeset
|
774 ;; do doesn't make much sense here since the prompt messes it up. |
79402
ffe5ab1e2653
(minibuffer-local-map): Bind C-tab here; moved from filecache.el.
Richard M. Stallman <rms@gnu.org>
parents:
78492
diff
changeset
|
775 (define-key map "\t" 'self-insert-command) |
93206
41abeabbef6f
(minibuffer-local-map): For the command
Juri Linkov <juri@jurta.org>
parents:
93161
diff
changeset
|
776 (define-key map [C-tab] 'file-cache-minibuffer-complete)) |
16164 | 777 |
778 (define-key global-map "\C-u" 'universal-argument) | |
779 (let ((i ?0)) | |
780 (while (<= i ?9) | |
781 (define-key esc-map (char-to-string i) 'digit-argument) | |
782 (setq i (1+ i)))) | |
783 (define-key esc-map "-" 'negative-argument) | |
784 ;; Define control-digits. | |
785 (let ((i ?0)) | |
786 (while (<= i ?9) | |
787 (define-key global-map (read (format "[?\\C-%c]" i)) 'digit-argument) | |
788 (setq i (1+ i)))) | |
789 (define-key global-map [?\C--] 'negative-argument) | |
790 ;; Define control-meta-digits. | |
791 (let ((i ?0)) | |
792 (while (<= i ?9) | |
793 (define-key esc-map (read (format "[?\\C-%c]" i)) 'digit-argument) | |
794 (setq i (1+ i)))) | |
795 (define-key global-map [?\C-\M--] 'negative-argument) | |
796 | |
797 (define-key global-map "\C-k" 'kill-line) | |
798 (define-key global-map "\C-w" 'kill-region) | |
799 (define-key esc-map "w" 'kill-ring-save) | |
800 (define-key esc-map "\C-w" 'append-next-kill) | |
801 (define-key global-map "\C-y" 'yank) | |
802 (define-key esc-map "y" 'yank-pop) | |
803 | |
804 ;; (define-key ctl-x-map "a" 'append-to-buffer) | |
805 | |
806 (define-key global-map "\C-@" 'set-mark-command) | |
807 ;; Many people are used to typing C-SPC and getting C-@. | |
20638
c3360a392ae4
Change "?\C-\ " to "?\C- " because "\ " is changed
Kenichi Handa <handa@m17n.org>
parents:
20577
diff
changeset
|
808 (define-key global-map [?\C- ] 'set-mark-command) |
16164 | 809 (define-key ctl-x-map "\C-x" 'exchange-point-and-mark) |
810 (define-key ctl-x-map "\C-@" 'pop-global-mark) | |
20638
c3360a392ae4
Change "?\C-\ " to "?\C- " because "\ " is changed
Kenichi Handa <handa@m17n.org>
parents:
20577
diff
changeset
|
811 (define-key ctl-x-map [?\C- ] 'pop-global-mark) |
16164 | 812 |
813 (define-key global-map "\C-n" 'next-line) | |
814 (define-key global-map "\C-p" 'previous-line) | |
815 (define-key ctl-x-map "\C-n" 'set-goal-column) | |
60485
6a79fa294dd4
(global-map): Bind C-a to move-beginning-of-line.
Kim F. Storm <storm@cua.dk>
parents:
60469
diff
changeset
|
816 (define-key global-map "\C-a" 'move-beginning-of-line) |
58355
7c3e2674726f
(global-map): Bind C-e to move-end-of-line.
Richard M. Stallman <rms@gnu.org>
parents:
57168
diff
changeset
|
817 (define-key global-map "\C-e" 'move-end-of-line) |
16164 | 818 |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
819 (define-key ctl-x-map "`" 'next-error) |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
820 |
96281
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
821 (defvar goto-map (make-sparse-keymap) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
822 "Keymap for navigation commands.") |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
823 (define-key esc-map "g" goto-map) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
824 |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
825 (define-key goto-map "g" 'goto-line) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
826 (define-key goto-map "\M-g" 'goto-line) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
827 (define-key goto-map "n" 'next-error) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
828 (define-key goto-map "\M-n" 'next-error) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
829 (define-key goto-map "p" 'previous-error) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
830 (define-key goto-map "\M-p" 'previous-error) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
831 |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
832 (defvar search-map (make-sparse-keymap) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
833 "Keymap for search related commands.") |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
834 (define-key esc-map "s" search-map) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
835 |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
836 (define-key search-map "o" 'occur) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
837 (define-key search-map "hr" 'highlight-regexp) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
838 (define-key search-map "hp" 'highlight-phrase) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
839 (define-key search-map "hl" 'highlight-lines-matching-regexp) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
840 (define-key search-map "hu" 'unhighlight-regexp) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
841 (define-key search-map "hf" 'hi-lock-find-patterns) |
b61f47138fd3
(goto-map): New variable. Rebind goto-related
Juri Linkov <juri@jurta.org>
parents:
95593
diff
changeset
|
842 (define-key search-map "hw" 'hi-lock-write-interactive-patterns) |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
843 |
16164 | 844 ;;(defun function-key-error () |
845 ;; (interactive) | |
38409
153f1b1f2efd
Emacs lisp coding convention fixes.
Pavel Janík <Pavel@Janik.cz>
parents:
38300
diff
changeset
|
846 ;; (error "That function key is not bound to anything")) |
16164 | 847 |
848 (define-key global-map [menu] 'execute-extended-command) | |
849 (define-key global-map [find] 'search-forward) | |
850 | |
35347
696e854064c5
Bind <backspace> and <delete> via function-key-map.
Gerd Moellmann <gerd@gnu.org>
parents:
35164
diff
changeset
|
851 ;; Don't do this. We define <delete> in function-key-map instead. |
696e854064c5
Bind <backspace> and <delete> via function-key-map.
Gerd Moellmann <gerd@gnu.org>
parents:
35164
diff
changeset
|
852 ;(define-key global-map [delete] 'backward-delete-char) |
30113
44717f85a62c
Bind ?[delete]' to delete-char.
Gerd Moellmann <gerd@gnu.org>
parents:
29216
diff
changeset
|
853 |
16164 | 854 ;; natural bindings for terminal keycaps --- defined in X keysym order |
51541
0b97efe4ae23
(global-map): Bind `kill-whole-line' to C-S-<backspace>.
Luc Teirlinck <teirllm@auburn.edu>
parents:
51420
diff
changeset
|
855 (define-key global-map [C-S-backspace] 'kill-whole-line) |
65844
d5c276f89641
(global-map): Resync [home] and [end] bindings with C-a and C-e.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
65524
diff
changeset
|
856 (define-key global-map [home] 'move-beginning-of-line) |
35164
b3365833b164
(global-map): Bind <home> to beginning-of-line,
Gerd Moellmann <gerd@gnu.org>
parents:
34830
diff
changeset
|
857 (define-key global-map [C-home] 'beginning-of-buffer) |
16164 | 858 (define-key global-map [M-home] 'beginning-of-buffer-other-window) |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
859 (define-key esc-map [home] 'beginning-of-buffer-other-window) |
16164 | 860 (define-key global-map [left] 'backward-char) |
861 (define-key global-map [up] 'previous-line) | |
862 (define-key global-map [right] 'forward-char) | |
863 (define-key global-map [down] 'next-line) | |
864 (define-key global-map [prior] 'scroll-down) | |
865 (define-key global-map [next] 'scroll-up) | |
866 (define-key global-map [C-up] 'backward-paragraph) | |
867 (define-key global-map [C-down] 'forward-paragraph) | |
868 (define-key global-map [C-prior] 'scroll-right) | |
57166
229978f30136
(scroll-left): Make it disabled.
Richard M. Stallman <rms@gnu.org>
parents:
56416
diff
changeset
|
869 (put 'scroll-left 'disabled t) |
16164 | 870 (define-key global-map [C-next] 'scroll-left) |
871 (define-key global-map [M-next] 'scroll-other-window) | |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
872 (define-key esc-map [next] 'scroll-other-window) |
16164 | 873 (define-key global-map [M-prior] 'scroll-other-window-down) |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
874 (define-key esc-map [prior] 'scroll-other-window-down) |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
875 (define-key esc-map [?\C-\S-v] 'scroll-other-window-down) |
65844
d5c276f89641
(global-map): Resync [home] and [end] bindings with C-a and C-e.
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
65524
diff
changeset
|
876 (define-key global-map [end] 'move-end-of-line) |
35164
b3365833b164
(global-map): Bind <home> to beginning-of-line,
Gerd Moellmann <gerd@gnu.org>
parents:
34830
diff
changeset
|
877 (define-key global-map [C-end] 'end-of-buffer) |
16164 | 878 (define-key global-map [M-end] 'end-of-buffer-other-window) |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
879 (define-key esc-map [end] 'end-of-buffer-other-window) |
16164 | 880 (define-key global-map [begin] 'beginning-of-buffer) |
881 (define-key global-map [M-begin] 'beginning-of-buffer-other-window) | |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
882 (define-key esc-map [begin] 'beginning-of-buffer-other-window) |
16164 | 883 ;; (define-key global-map [select] 'function-key-error) |
884 ;; (define-key global-map [print] 'function-key-error) | |
885 (define-key global-map [execute] 'execute-extended-command) | |
886 (define-key global-map [insert] 'overwrite-mode) | |
887 (define-key global-map [C-insert] 'kill-ring-save) | |
888 (define-key global-map [S-insert] 'yank) | |
63812
f4952f257c55
(global-map): Bind insertchar and its variants.
Richard M. Stallman <rms@gnu.org>
parents:
63654
diff
changeset
|
889 ;; `insertchar' is what term.c produces. Should we change term.c |
f4952f257c55
(global-map): Bind insertchar and its variants.
Richard M. Stallman <rms@gnu.org>
parents:
63654
diff
changeset
|
890 ;; to produce `insert' instead? |
f4952f257c55
(global-map): Bind insertchar and its variants.
Richard M. Stallman <rms@gnu.org>
parents:
63654
diff
changeset
|
891 (define-key global-map [insertchar] 'overwrite-mode) |
f4952f257c55
(global-map): Bind insertchar and its variants.
Richard M. Stallman <rms@gnu.org>
parents:
63654
diff
changeset
|
892 (define-key global-map [C-insertchar] 'kill-ring-save) |
f4952f257c55
(global-map): Bind insertchar and its variants.
Richard M. Stallman <rms@gnu.org>
parents:
63654
diff
changeset
|
893 (define-key global-map [S-insertchar] 'yank) |
16164 | 894 (define-key global-map [undo] 'undo) |
895 (define-key global-map [redo] 'repeat-complex-command) | |
52775
cbc9675be6b0
(completion-ignored-extensions): Remove .log.
Dave Love <fx@gnu.org>
parents:
52664
diff
changeset
|
896 (define-key global-map [again] 'repeat-complex-command) ; Sun keyboard |
cbc9675be6b0
(completion-ignored-extensions): Remove .log.
Dave Love <fx@gnu.org>
parents:
52664
diff
changeset
|
897 (define-key global-map [open] 'find-file) ; Sun |
52815 | 898 ;; The following wouldn't work to interrupt running code since C-g is |
899 ;; treated specially in the event loop. | |
900 ;; (define-key global-map [stop] 'keyboard-quit) ; Sun | |
16164 | 901 ;; (define-key global-map [clearline] 'function-key-error) |
902 (define-key global-map [insertline] 'open-line) | |
903 (define-key global-map [deleteline] 'kill-line) | |
904 (define-key global-map [deletechar] 'delete-char) | |
905 ;; (define-key global-map [backtab] 'function-key-error) | |
906 ;; (define-key global-map [f1] 'function-key-error) | |
907 ;; (define-key global-map [f2] 'function-key-error) | |
908 ;; (define-key global-map [f3] 'function-key-error) | |
909 ;; (define-key global-map [f4] 'function-key-error) | |
910 ;; (define-key global-map [f5] 'function-key-error) | |
911 ;; (define-key global-map [f6] 'function-key-error) | |
912 ;; (define-key global-map [f7] 'function-key-error) | |
913 ;; (define-key global-map [f8] 'function-key-error) | |
914 ;; (define-key global-map [f9] 'function-key-error) | |
915 ;; (define-key global-map [f10] 'function-key-error) | |
916 ;; (define-key global-map [f11] 'function-key-error) | |
917 ;; (define-key global-map [f12] 'function-key-error) | |
918 ;; (define-key global-map [f13] 'function-key-error) | |
919 ;; (define-key global-map [f14] 'function-key-error) | |
920 ;; (define-key global-map [f15] 'function-key-error) | |
921 ;; (define-key global-map [f16] 'function-key-error) | |
922 ;; (define-key global-map [f17] 'function-key-error) | |
923 ;; (define-key global-map [f18] 'function-key-error) | |
924 ;; (define-key global-map [f19] 'function-key-error) | |
925 ;; (define-key global-map [f20] 'function-key-error) | |
926 ;; (define-key global-map [f21] 'function-key-error) | |
927 ;; (define-key global-map [f22] 'function-key-error) | |
928 ;; (define-key global-map [f23] 'function-key-error) | |
929 ;; (define-key global-map [f24] 'function-key-error) | |
930 ;; (define-key global-map [f25] 'function-key-error) | |
931 ;; (define-key global-map [f26] 'function-key-error) | |
932 ;; (define-key global-map [f27] 'function-key-error) | |
933 ;; (define-key global-map [f28] 'function-key-error) | |
934 ;; (define-key global-map [f29] 'function-key-error) | |
935 ;; (define-key global-map [f30] 'function-key-error) | |
936 ;; (define-key global-map [f31] 'function-key-error) | |
937 ;; (define-key global-map [f32] 'function-key-error) | |
938 ;; (define-key global-map [f33] 'function-key-error) | |
939 ;; (define-key global-map [f34] 'function-key-error) | |
940 ;; (define-key global-map [f35] 'function-key-error) | |
941 ;; (define-key global-map [kp-backtab] 'function-key-error) | |
942 ;; (define-key global-map [kp-space] 'function-key-error) | |
943 ;; (define-key global-map [kp-tab] 'function-key-error) | |
944 ;; (define-key global-map [kp-enter] 'function-key-error) | |
945 ;; (define-key global-map [kp-f1] 'function-key-error) | |
946 ;; (define-key global-map [kp-f2] 'function-key-error) | |
947 ;; (define-key global-map [kp-f3] 'function-key-error) | |
948 ;; (define-key global-map [kp-f4] 'function-key-error) | |
949 ;; (define-key global-map [kp-multiply] 'function-key-error) | |
950 ;; (define-key global-map [kp-add] 'function-key-error) | |
951 ;; (define-key global-map [kp-separator] 'function-key-error) | |
952 ;; (define-key global-map [kp-subtract] 'function-key-error) | |
953 ;; (define-key global-map [kp-decimal] 'function-key-error) | |
954 ;; (define-key global-map [kp-divide] 'function-key-error) | |
955 ;; (define-key global-map [kp-0] 'function-key-error) | |
956 ;; (define-key global-map [kp-1] 'function-key-error) | |
957 ;; (define-key global-map [kp-2] 'function-key-error) | |
958 ;; (define-key global-map [kp-3] 'function-key-error) | |
959 ;; (define-key global-map [kp-4] 'function-key-error) | |
960 ;; (define-key global-map [kp-5] 'recenter) | |
961 ;; (define-key global-map [kp-6] 'function-key-error) | |
962 ;; (define-key global-map [kp-7] 'function-key-error) | |
963 ;; (define-key global-map [kp-8] 'function-key-error) | |
964 ;; (define-key global-map [kp-9] 'function-key-error) | |
965 ;; (define-key global-map [kp-equal] 'function-key-error) | |
966 | |
967 ;; X11R6 distinguishes these keys from the non-kp keys. | |
968 ;; Make them behave like the non-kp keys unless otherwise bound. | |
969 (define-key function-key-map [kp-home] [home]) | |
970 (define-key function-key-map [kp-left] [left]) | |
971 (define-key function-key-map [kp-up] [up]) | |
972 (define-key function-key-map [kp-right] [right]) | |
973 (define-key function-key-map [kp-down] [down]) | |
974 (define-key function-key-map [kp-prior] [prior]) | |
975 (define-key function-key-map [kp-next] [next]) | |
976 (define-key function-key-map [M-kp-next] [M-next]) | |
977 (define-key function-key-map [kp-end] [end]) | |
978 (define-key function-key-map [kp-begin] [begin]) | |
979 (define-key function-key-map [kp-insert] [insert]) | |
35347
696e854064c5
Bind <backspace> and <delete> via function-key-map.
Gerd Moellmann <gerd@gnu.org>
parents:
35164
diff
changeset
|
980 (define-key function-key-map [backspace] [?\C-?]) |
696e854064c5
Bind <backspace> and <delete> via function-key-map.
Gerd Moellmann <gerd@gnu.org>
parents:
35164
diff
changeset
|
981 (define-key function-key-map [delete] [?\C-?]) |
35777
b13d1ed54cfc
Define `kp-delete' like `delete' in function-key-map.
Gerd Moellmann <gerd@gnu.org>
parents:
35347
diff
changeset
|
982 (define-key function-key-map [kp-delete] [?\C-?]) |
38642
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
983 (define-key function-key-map [S-kp-end] [S-end]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
984 (define-key function-key-map [S-kp-down] [S-down]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
985 (define-key function-key-map [S-kp-next] [S-next]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
986 (define-key function-key-map [S-kp-left] [S-left]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
987 (define-key function-key-map [S-kp-right] [S-right]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
988 (define-key function-key-map [S-kp-home] [S-home]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
989 (define-key function-key-map [S-kp-up] [S-up]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
990 (define-key function-key-map [S-kp-prior] [S-prior]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
991 (define-key function-key-map [C-S-kp-end] [C-S-end]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
992 (define-key function-key-map [C-S-kp-down] [C-S-down]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
993 (define-key function-key-map [C-S-kp-next] [C-S-next]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
994 (define-key function-key-map [C-S-kp-left] [C-S-left]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
995 (define-key function-key-map [C-S-kp-right] [C-S-right]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
996 (define-key function-key-map [C-S-kp-home] [C-S-home]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
997 (define-key function-key-map [C-S-kp-up] [C-S-up]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
998 (define-key function-key-map [C-S-kp-prior] [C-S-prior]) |
42482
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
999 ;; Don't bind shifted keypad numeric keys, they reportedly |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1000 ;; interfere with the feature of some keyboards to produce |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1001 ;; numbers when NumLock is off. |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1002 ;(define-key function-key-map [S-kp-1] [S-end]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1003 ;(define-key function-key-map [S-kp-2] [S-down]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1004 ;(define-key function-key-map [S-kp-3] [S-next]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1005 ;(define-key function-key-map [S-kp-4] [S-left]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1006 ;(define-key function-key-map [S-kp-6] [S-right]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1007 ;(define-key function-key-map [S-kp-7] [S-home]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1008 ;(define-key function-key-map [S-kp-8] [S-up]) |
955a445b9717
(function-key-map): Don't bind shifted keypad numeric keys.
Eli Zaretskii <eliz@gnu.org>
parents:
41826
diff
changeset
|
1009 ;(define-key function-key-map [S-kp-9] [S-prior]) |
38642
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1010 (define-key function-key-map [C-S-kp-1] [C-S-end]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1011 (define-key function-key-map [C-S-kp-2] [C-S-down]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1012 (define-key function-key-map [C-S-kp-3] [C-S-next]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1013 (define-key function-key-map [C-S-kp-4] [C-S-left]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1014 (define-key function-key-map [C-S-kp-6] [C-S-right]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1015 (define-key function-key-map [C-S-kp-7] [C-S-home]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1016 (define-key function-key-map [C-S-kp-8] [C-S-up]) |
4d538c0a8afc
Bind shifted and control-shifted kp-* keys to the
Eli Zaretskii <eliz@gnu.org>
parents:
38409
diff
changeset
|
1017 (define-key function-key-map [C-S-kp-9] [C-S-prior]) |
16164 | 1018 |
1019 (define-key global-map [mouse-movement] 'ignore) | |
1020 | |
1021 (define-key global-map "\C-t" 'transpose-chars) | |
1022 (define-key esc-map "t" 'transpose-words) | |
1023 (define-key esc-map "\C-t" 'transpose-sexps) | |
1024 (define-key ctl-x-map "\C-t" 'transpose-lines) | |
1025 | |
29216
bc6192b0e1af
(esc-map): Change ; to comment-dwim and use the new function
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
29081
diff
changeset
|
1026 (define-key esc-map ";" 'comment-dwim) |
39903
001efc29394a
(esc-map): Revert `j' and `C-j' bindings to
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39842
diff
changeset
|
1027 (define-key esc-map "j" 'indent-new-comment-line) |
001efc29394a
(esc-map): Revert `j' and `C-j' bindings to
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
39842
diff
changeset
|
1028 (define-key esc-map "\C-j" 'indent-new-comment-line) |
29216
bc6192b0e1af
(esc-map): Change ; to comment-dwim and use the new function
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
29081
diff
changeset
|
1029 (define-key ctl-x-map ";" 'comment-set-column) |
16164 | 1030 (define-key ctl-x-map "f" 'set-fill-column) |
1031 (define-key ctl-x-map "$" 'set-selective-display) | |
1032 | |
1033 (define-key esc-map "@" 'mark-word) | |
1034 (define-key esc-map "f" 'forward-word) | |
1035 (define-key esc-map "b" 'backward-word) | |
1036 (define-key esc-map "d" 'kill-word) | |
1037 (define-key esc-map "\177" 'backward-kill-word) | |
1038 | |
1039 (define-key esc-map "<" 'beginning-of-buffer) | |
1040 (define-key esc-map ">" 'end-of-buffer) | |
1041 (define-key ctl-x-map "h" 'mark-whole-buffer) | |
1042 (define-key esc-map "\\" 'delete-horizontal-space) | |
1043 | |
1044 (defalias 'mode-specific-command-prefix (make-sparse-keymap)) | |
16691
285f4e41d163
Change defconsts to defvars.
Richard M. Stallman <rms@gnu.org>
parents:
16523
diff
changeset
|
1045 (defvar mode-specific-map (symbol-function 'mode-specific-command-prefix) |
16164 | 1046 "Keymap for characters following C-c.") |
1047 (define-key global-map "\C-c" 'mode-specific-command-prefix) | |
1048 | |
1049 (global-set-key [M-right] 'forward-word) | |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1050 (define-key esc-map [right] 'forward-word) |
16164 | 1051 (global-set-key [M-left] 'backward-word) |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1052 (define-key esc-map [left] 'backward-word) |
16164 | 1053 ;; ilya@math.ohio-state.edu says these bindings are standard on PC editors. |
1054 (global-set-key [C-right] 'forward-word) | |
1055 (global-set-key [C-left] 'backward-word) | |
1056 ;; This is not quite compatible, but at least is analogous | |
34830
67390da4022e
([C-backspace]): Bind C-backspace to kill-word.
Gerd Moellmann <gerd@gnu.org>
parents:
34554
diff
changeset
|
1057 (global-set-key [C-delete] 'backward-kill-word) |
67390da4022e
([C-backspace]): Bind C-backspace to kill-word.
Gerd Moellmann <gerd@gnu.org>
parents:
34554
diff
changeset
|
1058 (global-set-key [C-backspace] 'kill-word) |
16164 | 1059 ;; This is "move to the clipboard", or as close as we come. |
1060 (global-set-key [S-delete] 'kill-region) | |
1061 | |
63301
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1062 (global-set-key [C-M-left] 'backward-sexp) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1063 (define-key esc-map [C-left] 'backward-sexp) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1064 (global-set-key [C-M-right] 'forward-sexp) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1065 (define-key esc-map [C-right] 'forward-sexp) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1066 (global-set-key [C-M-up] 'backward-up-list) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1067 (define-key esc-map [C-up] 'backward-up-list) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1068 (global-set-key [C-M-down] 'down-list) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1069 (define-key esc-map [C-down] 'down-list) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1070 (global-set-key [C-M-home] 'beginning-of-defun) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1071 (define-key esc-map [C-home] 'beginning-of-defun) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1072 (global-set-key [C-M-end] 'end-of-defun) |
5a2af2a8e232
Add binding of `ESC functionkey' for every `M-functionkey'.
Andreas Schwab <schwab@suse.de>
parents:
62651
diff
changeset
|
1073 (define-key esc-map [C-end] 'end-of-defun) |
55275
1fcfb5d038a2
(propertized-buffer-identification):
Juri Linkov <juri@jurta.org>
parents:
53551
diff
changeset
|
1074 |
16164 | 1075 (define-key esc-map "\C-f" 'forward-sexp) |
1076 (define-key esc-map "\C-b" 'backward-sexp) | |
1077 (define-key esc-map "\C-u" 'backward-up-list) | |
1078 (define-key esc-map "\C-@" 'mark-sexp) | |
1079 (define-key esc-map [?\C-\ ] 'mark-sexp) | |
1080 (define-key esc-map "\C-d" 'down-list) | |
1081 (define-key esc-map "\C-k" 'kill-sexp) | |
51420
22c87cfe7fe4
(global-map): Delete C-M-delete and C-M-backspace.
Richard M. Stallman <rms@gnu.org>
parents:
51260
diff
changeset
|
1082 ;;; These are dangerous in various situations, |
22c87cfe7fe4
(global-map): Delete C-M-delete and C-M-backspace.
Richard M. Stallman <rms@gnu.org>
parents:
51260
diff
changeset
|
1083 ;;; so let's not encourage anyone to use them. |
22c87cfe7fe4
(global-map): Delete C-M-delete and C-M-backspace.
Richard M. Stallman <rms@gnu.org>
parents:
51260
diff
changeset
|
1084 ;;;(define-key global-map [C-M-delete] 'backward-kill-sexp) |
22c87cfe7fe4
(global-map): Delete C-M-delete and C-M-backspace.
Richard M. Stallman <rms@gnu.org>
parents:
51260
diff
changeset
|
1085 ;;;(define-key global-map [C-M-backspace] 'backward-kill-sexp) |
30946
0cc084d7b4a7
(esc-map): Bind `C-delete' and `C-backspace' to
Gerd Moellmann <gerd@gnu.org>
parents:
30508
diff
changeset
|
1086 (define-key esc-map [C-delete] 'backward-kill-sexp) |
0cc084d7b4a7
(esc-map): Bind `C-delete' and `C-backspace' to
Gerd Moellmann <gerd@gnu.org>
parents:
30508
diff
changeset
|
1087 (define-key esc-map [C-backspace] 'backward-kill-sexp) |
16164 | 1088 (define-key esc-map "\C-n" 'forward-list) |
1089 (define-key esc-map "\C-p" 'backward-list) | |
1090 (define-key esc-map "\C-a" 'beginning-of-defun) | |
1091 (define-key esc-map "\C-e" 'end-of-defun) | |
1092 (define-key esc-map "\C-h" 'mark-defun) | |
1093 (define-key ctl-x-map "nd" 'narrow-to-defun) | |
1094 (define-key esc-map "(" 'insert-parentheses) | |
1095 (define-key esc-map ")" 'move-past-close-and-reindent) | |
1096 | |
1097 (define-key ctl-x-map "\C-e" 'eval-last-sexp) | |
17595
eaad8bd00b12
Bind C-x m, C-x 4 m, C-x 5 m to compose-mail...
Richard M. Stallman <rms@gnu.org>
parents:
17537
diff
changeset
|
1098 |
eaad8bd00b12
Bind C-x m, C-x 4 m, C-x 5 m to compose-mail...
Richard M. Stallman <rms@gnu.org>
parents:
17537
diff
changeset
|
1099 (define-key ctl-x-map "m" 'compose-mail) |
eaad8bd00b12
Bind C-x m, C-x 4 m, C-x 5 m to compose-mail...
Richard M. Stallman <rms@gnu.org>
parents:
17537
diff
changeset
|
1100 (define-key ctl-x-4-map "m" 'compose-mail-other-window) |
eaad8bd00b12
Bind C-x m, C-x 4 m, C-x 5 m to compose-mail...
Richard M. Stallman <rms@gnu.org>
parents:
17537
diff
changeset
|
1101 (define-key ctl-x-5-map "m" 'compose-mail-other-frame) |
16164 | 1102 |
96437
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1103 |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1104 (defvar ctl-x-r-map (make-sparse-keymap) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1105 "Keymap for subcommands of C-x r.") |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1106 (define-key ctl-x-map "r" ctl-x-r-map) |
16164 | 1107 |
1108 (define-key esc-map "q" 'fill-paragraph) | |
1109 (define-key ctl-x-map "." 'set-fill-prefix) | |
1110 | |
1111 (define-key esc-map "{" 'backward-paragraph) | |
1112 (define-key esc-map "}" 'forward-paragraph) | |
1113 (define-key esc-map "h" 'mark-paragraph) | |
1114 (define-key esc-map "a" 'backward-sentence) | |
1115 (define-key esc-map "e" 'forward-sentence) | |
1116 (define-key esc-map "k" 'kill-sentence) | |
1117 (define-key ctl-x-map "\177" 'backward-kill-sentence) | |
1118 | |
1119 (define-key ctl-x-map "[" 'backward-page) | |
1120 (define-key ctl-x-map "]" 'forward-page) | |
1121 (define-key ctl-x-map "\C-p" 'mark-page) | |
1122 (define-key ctl-x-map "l" 'count-lines-page) | |
1123 (define-key ctl-x-map "np" 'narrow-to-page) | |
1124 ;; (define-key ctl-x-map "p" 'narrow-to-page) | |
1125 | |
96437
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1126 (defvar abbrev-map (make-sparse-keymap) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1127 "Keymap for abbrev commands.") |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1128 (define-key ctl-x-map "a" abbrev-map) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1129 |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1130 (define-key abbrev-map "l" 'add-mode-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1131 (define-key abbrev-map "\C-a" 'add-mode-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1132 (define-key abbrev-map "g" 'add-global-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1133 (define-key abbrev-map "+" 'add-mode-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1134 (define-key abbrev-map "ig" 'inverse-add-global-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1135 (define-key abbrev-map "il" 'inverse-add-mode-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1136 ;; (define-key abbrev-map "\C-h" 'inverse-add-global-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1137 (define-key abbrev-map "-" 'inverse-add-global-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1138 (define-key abbrev-map "e" 'expand-abbrev) |
e155bd4bbeeb
(abbrev-map, narrow-map): New variables.
Juri Linkov <juri@jurta.org>
parents:
96281
diff
changeset
|
1139 (define-key abbrev-map "'" 'expand-abbrev) |
16164 | 1140 ;; (define-key ctl-x-map "\C-a" 'add-mode-abbrev) |
1141 ;; (define-key ctl-x-map "\+" 'add-global-abbrev) | |
1142 ;; (define-key ctl-x-map "\C-h" 'inverse-add-mode-abbrev) | |
1143 ;; (define-key ctl-x-map "\-" 'inverse-add-global-abbrev) | |
1144 (define-key esc-map "'" 'abbrev-prefix-mark) | |
1145 (define-key ctl-x-map "'" 'expand-abbrev) | |
1146 | |
22424
d8368e1df721
(ctl-x-map): Change vi-dot binding to repeat.
Richard M. Stallman <rms@gnu.org>
parents:
22064
diff
changeset
|
1147 (define-key ctl-x-map "z" 'repeat) |
22064
6855330db15c
Add binding for C-x z to vi-dot here.
Richard M. Stallman <rms@gnu.org>
parents:
21670
diff
changeset
|
1148 |
79405
2465de5f1ff2
(esc-map): Bind C-M-l here; moved from reposition.el.
Richard M. Stallman <rms@gnu.org>
parents:
79402
diff
changeset
|
1149 (define-key esc-map "\C-l" 'reposition-window) |
2465de5f1ff2
(esc-map): Bind C-M-l here; moved from reposition.el.
Richard M. Stallman <rms@gnu.org>
parents:
79402
diff
changeset
|
1150 |
2465de5f1ff2
(esc-map): Bind C-M-l here; moved from reposition.el.
Richard M. Stallman <rms@gnu.org>
parents:
79402
diff
changeset
|
1151 (define-key ctl-x-4-map "a" 'add-change-log-entry-other-window) |
61650
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
1152 (define-key ctl-x-4-map "c" 'clone-indirect-buffer-other-window) |
9a27f4097b8f
(next-buffer, prev-buffer, next-error)
Kim F. Storm <storm@cua.dk>
parents:
60822
diff
changeset
|
1153 |
74410
ae98808fc6e4
(global-map): Bind [signal t] to ignore, to have
Kim F. Storm <storm@cua.dk>
parents:
73774
diff
changeset
|
1154 ;; Signal handlers |
74752
259471a9b617
Bind sigusr1 and sigusr2 in special-event-map instead of global-map.
Kim F. Storm <storm@cua.dk>
parents:
74410
diff
changeset
|
1155 (define-key special-event-map [sigusr1] 'ignore) |
259471a9b617
Bind sigusr1 and sigusr2 in special-event-map instead of global-map.
Kim F. Storm <storm@cua.dk>
parents:
74410
diff
changeset
|
1156 (define-key special-event-map [sigusr2] 'ignore) |
74410
ae98808fc6e4
(global-map): Bind [signal t] to ignore, to have
Kim F. Storm <storm@cua.dk>
parents:
73774
diff
changeset
|
1157 |
41172
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
1158 ;; Don't look for autoload cookies in this file. |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
1159 ;; Local Variables: |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
1160 ;; no-update-autoloads: t |
138cb29c858e
(mode-line-mode-name): Only put the help-echo property
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
40585
diff
changeset
|
1161 ;; End: |
16164 | 1162 |
59600
26b237e765bf
(mode-line-mode-menu): Use bound-and-true-p for all the
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
58942
diff
changeset
|
1163 ;; arch-tag: 23b5c7e6-e47b-49ed-8c6c-ed213c5fffe0 |
16164 | 1164 ;;; bindings.el ends here |