diff options
| author | Dan Nicolaescu | 2008-03-03 08:30:18 +0000 |
|---|---|---|
| committer | Dan Nicolaescu | 2008-03-03 08:30:18 +0000 |
| commit | 10a55ba03d12a79aa1ea749d26947b60342ab3ca (patch) | |
| tree | 15eb298bc18fa859bbd5c48ce77057add877b4f4 | |
| parent | 73f838adaf4d7fa14af503a4786076aea7329bb1 (diff) | |
| download | emacs-10a55ba03d12a79aa1ea749d26947b60342ab3ca.tar.gz emacs-10a55ba03d12a79aa1ea749d26947b60342ab3ca.zip | |
(mode-line-column-line-number-mode-map): New variable.
(standard-mode-line-position): Use it to add a menu for toggling
column number and line number display.
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/bindings.el | 41 |
2 files changed, 39 insertions, 8 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4c101745853..8c3dd53ce45 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2008-03-03 Dan Nicolaescu <dann@ics.uci.edu> | ||
| 2 | |||
| 3 | * bindings.el (mode-line-column-line-number-mode-map): New variable. | ||
| 4 | (standard-mode-line-position): Use it to add a menu for toggling | ||
| 5 | column number and line number display. | ||
| 6 | |||
| 1 | 2008-03-03 Stefan Monnier <monnier@iro.umontreal.ca> | 7 | 2008-03-03 Stefan Monnier <monnier@iro.umontreal.ca> |
| 2 | 8 | ||
| 3 | * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): | 9 | * emacs-lisp/bytecomp.el (byte-compile-maybe-guarded): |
diff --git a/lisp/bindings.el b/lisp/bindings.el index bee285a30b2..646129736b6 100644 --- a/lisp/bindings.el +++ b/lisp/bindings.el | |||
| @@ -299,6 +299,21 @@ Keymap to display on major mode.") | |||
| 299 | map) "\ | 299 | map) "\ |
| 300 | Keymap to display on minor modes.") | 300 | Keymap to display on minor modes.") |
| 301 | 301 | ||
| 302 | (defvar mode-line-column-line-number-mode-map | ||
| 303 | (let ((map (make-sparse-keymap)) | ||
| 304 | (menu-map (make-sparse-keymap "Toggle Line and Column Number Display"))) | ||
| 305 | (define-key menu-map [line-number-mode] | ||
| 306 | `(menu-item ,(purecopy "Display Line Numbers") line-number-mode | ||
| 307 | :help "Toggle displaying line numbers in the mode-line" | ||
| 308 | :button (:toggle . line-number-mode))) | ||
| 309 | (define-key menu-map [column-number-mode] | ||
| 310 | `(menu-item ,(purecopy "Display Column Numbers") column-number-mode | ||
| 311 | :help "Toggle displaying column numbers in the mode-line" | ||
| 312 | :button (:toggle . column-number-mode))) | ||
| 313 | (define-key map [mode-line down-mouse-1] menu-map) | ||
| 314 | map) "\ | ||
| 315 | Keymap to display on column and line numbers.") | ||
| 316 | |||
| 302 | (let* ((help-echo | 317 | (let* ((help-echo |
| 303 | ;; The multi-line message doesn't work terribly well on the | 318 | ;; The multi-line message doesn't work terribly well on the |
| 304 | ;; bottom mode line... Better ideas? | 319 | ;; bottom mode line... Better ideas? |
| @@ -352,27 +367,37 @@ mouse-3: Toggle minor modes" | |||
| 352 | (propertize ")%]--" 'help-echo help-echo))) | 367 | (propertize ")%]--" 'help-echo help-echo))) |
| 353 | 368 | ||
| 354 | (standard-mode-line-position | 369 | (standard-mode-line-position |
| 355 | `((-3 ,(propertize "%p" 'help-echo help-echo)) | 370 | `((-3 ,(propertize |
| 371 | "%p" | ||
| 372 | 'local-map mode-line-column-line-number-mode-map | ||
| 373 | ;; XXX needs better description | ||
| 374 | 'help-echo "Size indication mode\n\ | ||
| 375 | mouse-1: Display Line and Column Mode Menu")) | ||
| 356 | (size-indication-mode | 376 | (size-indication-mode |
| 357 | (8 ,(propertize | 377 | (8 ,(propertize |
| 358 | " of %I" | 378 | " of %I" |
| 379 | 'local-map mode-line-column-line-number-mode-map | ||
| 359 | ;; XXX needs better description | 380 | ;; XXX needs better description |
| 360 | 'help-echo (format "Size indication mode\n%s" help-echo)))) | 381 | 'help-echo "Size indication mode\n\ |
| 382 | mouse-1: Display Line and Column Mode Menu"))) | ||
| 361 | (line-number-mode | 383 | (line-number-mode |
| 362 | ((column-number-mode | 384 | ((column-number-mode |
| 363 | (10 ,(propertize | 385 | (10 ,(propertize |
| 364 | " (%l,%c)" | 386 | " (%l,%c)" |
| 365 | 'help-echo | 387 | 'local-map mode-line-column-line-number-mode-map |
| 366 | (format "Line number and Column number\n%s" help-echo))) | 388 | 'help-echo "Line number and Column number\n\ |
| 389 | mouse-1: Display Line and Column Mode Menu")) | ||
| 367 | (6 ,(propertize | 390 | (6 ,(propertize |
| 368 | " L%l" | 391 | " L%l" |
| 369 | 'help-echo | 392 | 'local-map mode-line-column-line-number-mode-map |
| 370 | (format "Line number\n%s" help-echo))))) | 393 | 'help-echo "Line Number\n\ |
| 394 | mouse-1: Display Line and Column Mode Menu")))) | ||
| 371 | ((column-number-mode | 395 | ((column-number-mode |
| 372 | (5 ,(propertize | 396 | (5 ,(propertize |
| 373 | " C%c" | 397 | " C%c" |
| 374 | 'help-echo | 398 | 'local-map mode-line-column-line-number-mode-map |
| 375 | (format "Column number\n%s" help-echo))))))))) | 399 | 'help-echo "Column number\n\ |
| 400 | mouse-1: Display Line and Column Mode Menu")))))))) | ||
| 376 | 401 | ||
| 377 | (setq-default mode-line-format standard-mode-line-format) | 402 | (setq-default mode-line-format standard-mode-line-format) |
| 378 | (put 'mode-line-format 'standard-value | 403 | (put 'mode-line-format 'standard-value |