diff options
| author | Stefan Monnier | 2010-05-02 22:29:46 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2010-05-02 22:29:46 -0400 |
| commit | 56eb09046e00ac7ee6d3d3d752cb1ee664b7e062 (patch) | |
| tree | 6ff481ffba16576053b3cb2a8ad24a4f66bdec4a /lisp/org | |
| parent | 063371f2b0dc2519db3abcbe54955167bde8ca9e (diff) | |
| download | emacs-56eb09046e00ac7ee6d3d3d752cb1ee664b7e062.tar.gz emacs-56eb09046e00ac7ee6d3d3d752cb1ee664b7e062.zip | |
Use define-minor-mode where applicable.
* mh-show.el (mh-showing-mode): Move function to mh-e.el.
* mh-e.el (mh-showing-mode):
* url-dired.el (url-dired-minor-mode):
* org-table.el (orgtbl-mode):
* view.el (view-mode):
* type-break.el (type-break-query-mode)
(type-break-mode-line-message-mode):
* textmodes/reftex.el (reftex-mode):
* term/vt100.el (vt100-wide-mode):
* tar-mode.el (tar-subfile-mode):
* savehist.el (savehist-mode):
* ibuf-ext.el (ibuffer-auto-mode):
* composite.el (auto-composition-mode):
* progmodes/vhdl-mode.el (vhdl-electric-mode, vhdl-stutter-mode):
Use define-minor-mode.
(vhdl-mode): Use static mode-line format.
(vhdl-mode-line-update): Delete.
(vhdl-create-mode-menu, vhdl-activate-customizations)
(vhdl-hs-minor-mode): Don't bother calling it.
Diffstat (limited to 'lisp/org')
| -rw-r--r-- | lisp/org/ChangeLog | 9 | ||||
| -rw-r--r-- | lisp/org/org-table.el | 92 |
2 files changed, 48 insertions, 53 deletions
diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog index 770fd883e2c..b4675723096 100644 --- a/lisp/org/ChangeLog +++ b/lisp/org/ChangeLog | |||
| @@ -1,8 +1,11 @@ | |||
| 1 | 2010-05-03 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * org-table.el (orgtbl-mode): Use define-minor-mode. | ||
| 4 | |||
| 1 | 2010-04-10 Carsten Dominik <carsten.dominik@gmail.com> | 5 | 2010-04-10 Carsten Dominik <carsten.dominik@gmail.com> |
| 2 | 6 | ||
| 3 | * org.el (org-insert-link): Find the link buffer on visible | 7 | * org.el (org-insert-link): Find the link buffer on visible frames. |
| 4 | frames. | 8 | (org-export-latex-default-packages-alist): Hyperref must be loaded |
| 5 | (org-export-latex-default-packages-alist): hyperref must be loaded | ||
| 6 | late. | 9 | late. |
| 7 | (org-open-file): More care with the new matching for file links. | 10 | (org-open-file): More care with the new matching for file links. |
| 8 | 11 | ||
diff --git a/lisp/org/org-table.el b/lisp/org/org-table.el index 24c02a658ba..98c48baf52c 100644 --- a/lisp/org/org-table.el +++ b/lisp/org/org-table.el | |||
| @@ -3401,11 +3401,6 @@ Use COMMAND to do the motion, repeat if necessary to end up in a data line." | |||
| 3401 | ;; active, this binding is ignored inside tables and replaced with a | 3401 | ;; active, this binding is ignored inside tables and replaced with a |
| 3402 | ;; modified self-insert. | 3402 | ;; modified self-insert. |
| 3403 | 3403 | ||
| 3404 | (defvar orgtbl-mode nil | ||
| 3405 | "Variable controlling `orgtbl-mode', a minor mode enabling the `org-mode' | ||
| 3406 | table editor in arbitrary modes.") | ||
| 3407 | (make-variable-buffer-local 'orgtbl-mode) | ||
| 3408 | |||
| 3409 | (defvar orgtbl-mode-map (make-keymap) | 3404 | (defvar orgtbl-mode-map (make-keymap) |
| 3410 | "Keymap for `orgtbl-mode'.") | 3405 | "Keymap for `orgtbl-mode'.") |
| 3411 | 3406 | ||
| @@ -3426,49 +3421,51 @@ table editor in arbitrary modes.") | |||
| 3426 | 0 (quote 'org-table) 'prepend)) | 3421 | 0 (quote 'org-table) 'prepend)) |
| 3427 | "Extra font-lock-keywords to be added when orgtbl-mode is active.") | 3422 | "Extra font-lock-keywords to be added when orgtbl-mode is active.") |
| 3428 | 3423 | ||
| 3424 | ;; Install it as a minor mode. | ||
| 3425 | (put 'orgtbl-mode :included t) | ||
| 3426 | (put 'orgtbl-mode :menu-tag "Org Table Mode") | ||
| 3429 | ;;;###autoload | 3427 | ;;;###autoload |
| 3430 | (defun orgtbl-mode (&optional arg) | 3428 | (define-minor-mode orgtbl-mode |
| 3431 | "The `org-mode' table editor as a minor mode for use in other modes." | 3429 | "The `org-mode' table editor as a minor mode for use in other modes." |
| 3432 | (interactive) | 3430 | :lighter " OrgTbl" :keymap orgtbl-mode-map |
| 3433 | (org-load-modules-maybe) | 3431 | (org-load-modules-maybe) |
| 3434 | (if (org-mode-p) | 3432 | (cond |
| 3435 | ;; Exit without error, in case some hook functions calls this | 3433 | ((org-mode-p) |
| 3436 | ;; by accident in org-mode. | 3434 | ;; Exit without error, in case some hook functions calls this |
| 3437 | (message "Orgtbl-mode is not useful in org-mode, command ignored") | 3435 | ;; by accident in org-mode. |
| 3438 | (setq orgtbl-mode | 3436 | (message "Orgtbl-mode is not useful in org-mode, command ignored")) |
| 3439 | (if arg (> (prefix-numeric-value arg) 0) (not orgtbl-mode))) | 3437 | (orgtbl-mode |
| 3440 | (if orgtbl-mode | 3438 | (and (orgtbl-setup) (defun orgtbl-setup () nil)) ;; FIXME: Yuck!?! |
| 3441 | (progn | 3439 | ;; Make sure we are first in minor-mode-map-alist |
| 3442 | (and (orgtbl-setup) (defun orgtbl-setup () nil)) | 3440 | (let ((c (assq 'orgtbl-mode minor-mode-map-alist))) |
| 3443 | ;; Make sure we are first in minor-mode-map-alist | 3441 | ;; FIXME: maybe it should use emulation-mode-map-alists? |
| 3444 | (let ((c (assq 'orgtbl-mode minor-mode-map-alist))) | 3442 | (and c (setq minor-mode-map-alist |
| 3445 | (and c (setq minor-mode-map-alist | 3443 | (cons c (delq c minor-mode-map-alist))))) |
| 3446 | (cons c (delq c minor-mode-map-alist))))) | 3444 | (org-set-local (quote org-table-may-need-update) t) |
| 3447 | (org-set-local (quote org-table-may-need-update) t) | 3445 | (org-add-hook 'before-change-functions 'org-before-change-function |
| 3448 | (org-add-hook 'before-change-functions 'org-before-change-function | 3446 | nil 'local) |
| 3449 | nil 'local) | 3447 | (org-set-local 'org-old-auto-fill-inhibit-regexp |
| 3450 | (org-set-local 'org-old-auto-fill-inhibit-regexp | 3448 | auto-fill-inhibit-regexp) |
| 3451 | auto-fill-inhibit-regexp) | 3449 | (org-set-local 'auto-fill-inhibit-regexp |
| 3452 | (org-set-local 'auto-fill-inhibit-regexp | 3450 | (if auto-fill-inhibit-regexp |
| 3453 | (if auto-fill-inhibit-regexp | 3451 | (concat orgtbl-line-start-regexp "\\|" |
| 3454 | (concat orgtbl-line-start-regexp "\\|" | 3452 | auto-fill-inhibit-regexp) |
| 3455 | auto-fill-inhibit-regexp) | 3453 | orgtbl-line-start-regexp)) |
| 3456 | orgtbl-line-start-regexp)) | 3454 | (org-add-to-invisibility-spec '(org-cwidth)) |
| 3457 | (org-add-to-invisibility-spec '(org-cwidth)) | 3455 | (when (fboundp 'font-lock-add-keywords) |
| 3458 | (when (fboundp 'font-lock-add-keywords) | 3456 | (font-lock-add-keywords nil orgtbl-extra-font-lock-keywords) |
| 3459 | (font-lock-add-keywords nil orgtbl-extra-font-lock-keywords) | 3457 | (org-restart-font-lock)) |
| 3460 | (org-restart-font-lock)) | 3458 | (easy-menu-add orgtbl-mode-menu)) |
| 3461 | (easy-menu-add orgtbl-mode-menu) | 3459 | (t |
| 3462 | (run-hooks 'orgtbl-mode-hook)) | 3460 | (setq auto-fill-inhibit-regexp org-old-auto-fill-inhibit-regexp) |
| 3463 | (setq auto-fill-inhibit-regexp org-old-auto-fill-inhibit-regexp) | 3461 | (org-table-cleanup-narrow-column-properties) |
| 3464 | (org-table-cleanup-narrow-column-properties) | 3462 | (org-remove-from-invisibility-spec '(org-cwidth)) |
| 3465 | (org-remove-from-invisibility-spec '(org-cwidth)) | 3463 | (remove-hook 'before-change-functions 'org-before-change-function t) |
| 3466 | (remove-hook 'before-change-functions 'org-before-change-function t) | 3464 | (when (fboundp 'font-lock-remove-keywords) |
| 3467 | (when (fboundp 'font-lock-remove-keywords) | 3465 | (font-lock-remove-keywords nil orgtbl-extra-font-lock-keywords) |
| 3468 | (font-lock-remove-keywords nil orgtbl-extra-font-lock-keywords) | 3466 | (org-restart-font-lock)) |
| 3469 | (org-restart-font-lock)) | 3467 | (easy-menu-remove orgtbl-mode-menu) |
| 3470 | (easy-menu-remove orgtbl-mode-menu) | 3468 | (force-mode-line-update 'all)))) |
| 3471 | (force-mode-line-update 'all)))) | ||
| 3472 | 3469 | ||
| 3473 | (defun org-table-cleanup-narrow-column-properties () | 3470 | (defun org-table-cleanup-narrow-column-properties () |
| 3474 | "Remove all properties related to narrow-column invisibility." | 3471 | "Remove all properties related to narrow-column invisibility." |
| @@ -3483,11 +3480,6 @@ table editor in arbitrary modes.") | |||
| 3483 | (while (setq s (text-property-any s (point-max) 'invisible 'org-cwidth)) | 3480 | (while (setq s (text-property-any s (point-max) 'invisible 'org-cwidth)) |
| 3484 | (remove-text-properties s (1+ s) '(invisible t))))) | 3481 | (remove-text-properties s (1+ s) '(invisible t))))) |
| 3485 | 3482 | ||
| 3486 | ;; Install it as a minor mode. | ||
| 3487 | (put 'orgtbl-mode :included t) | ||
| 3488 | (put 'orgtbl-mode :menu-tag "Org Table Mode") | ||
| 3489 | (add-minor-mode 'orgtbl-mode " OrgTbl" orgtbl-mode-map) | ||
| 3490 | |||
| 3491 | (defun orgtbl-make-binding (fun n &rest keys) | 3483 | (defun orgtbl-make-binding (fun n &rest keys) |
| 3492 | "Create a function for binding in the table minor mode. | 3484 | "Create a function for binding in the table minor mode. |
| 3493 | FUN is the command to call inside a table. N is used to create a unique | 3485 | FUN is the command to call inside a table. N is used to create a unique |