diff options
| author | Tom Willemse | 2015-03-28 14:43:33 +0000 |
|---|---|---|
| committer | João Távora | 2015-03-28 15:16:13 +0000 |
| commit | 40b3dcd2c06e30048be0bdc32861148a53660c90 (patch) | |
| tree | b3e8786fe490020562b306d42b193d8921e2127d | |
| parent | be5e9348dc137d06655676e686f153cf33de4f28 (diff) | |
| download | emacs-40b3dcd2c06e30048be0bdc32861148a53660c90.tar.gz emacs-40b3dcd2c06e30048be0bdc32861148a53660c90.zip | |
New `electric-pair-local-mode'
Fixes: big#19528
* lisp/elec-pair.el (electric-pair-local-mode): New command.
(electric-pair-mode): Mention `electric-pair-local-mode' in the
docstring.
| -rw-r--r-- | doc/emacs/programs.texi | 4 | ||||
| -rw-r--r-- | etc/NEWS | 3 | ||||
| -rw-r--r-- | lisp/ChangeLog | 6 | ||||
| -rw-r--r-- | lisp/elec-pair.el | 16 |
4 files changed, 27 insertions, 2 deletions
diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi index b161a0cc63b..1fffa233e56 100644 --- a/doc/emacs/programs.texi +++ b/doc/emacs/programs.texi | |||
| @@ -870,7 +870,9 @@ mode to skip whitespace forward before deciding whether to skip over | |||
| 870 | the closing delimiter. | 870 | the closing delimiter. |
| 871 | @end itemize | 871 | @end itemize |
| 872 | 872 | ||
| 873 | To toggle Electric Pair mode, type @kbd{M-x electric-pair-mode}. | 873 | To toggle Electric Pair mode, type @kbd{M-x electric-pair-mode}. To |
| 874 | toggle the mode in a single buffer, use @kbd{M-x | ||
| 875 | electric-pair-local-mode}. | ||
| 874 | 876 | ||
| 875 | @node Comments | 877 | @node Comments |
| 876 | @section Manipulating Comments | 878 | @section Manipulating Comments |
| @@ -215,6 +215,9 @@ Unicode standards. | |||
| 215 | 215 | ||
| 216 | ** You can access `mouse-buffer-menu' (C-down-mouse-1) using C-f10. | 216 | ** You can access `mouse-buffer-menu' (C-down-mouse-1) using C-f10. |
| 217 | 217 | ||
| 218 | +++ | ||
| 219 | ** New buffer-local `electric-pair-local-mode'. | ||
| 220 | |||
| 218 | 221 | ||
| 219 | * Changes in Specialized Modes and Packages in Emacs 25.1 | 222 | * Changes in Specialized Modes and Packages in Emacs 25.1 |
| 220 | ** xterm-mouse-mode now supports mouse-tracking (if your xterm supports it). | 223 | ** xterm-mouse-mode now supports mouse-tracking (if your xterm supports it). |
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 488abb1b39b..40a57902d1d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2015-03-28 Tom Willemse <tom@ryuslash.org> | ||
| 2 | |||
| 3 | * elec-pair.el (electric-pair-local-mode): New command. | ||
| 4 | (electric-pair-mode): Mention `electric-pair-local-mode' in the | ||
| 5 | docstring. | ||
| 6 | |||
| 1 | 2015-03-28 Jan Djärv <jan.h.d@swipnet.se> | 7 | 2015-03-28 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 8 | ||
| 3 | * emacs-lisp/package.el (package-refresh-contents): Add a message at | 9 | * emacs-lisp/package.el (package-refresh-contents): Add a message at |
diff --git a/lisp/elec-pair.el b/lisp/elec-pair.el index 2cede62ab4f..562b29467c1 100644 --- a/lisp/elec-pair.el +++ b/lisp/elec-pair.el | |||
| @@ -557,7 +557,8 @@ the mode if ARG is omitted or nil. | |||
| 557 | 557 | ||
| 558 | Electric Pair mode is a global minor mode. When enabled, typing | 558 | Electric Pair mode is a global minor mode. When enabled, typing |
| 559 | an open parenthesis automatically inserts the corresponding | 559 | an open parenthesis automatically inserts the corresponding |
| 560 | closing parenthesis. (Likewise for brackets, etc.)." | 560 | closing parenthesis. (Likewise for brackets, etc.). To toggle |
| 561 | the mode in a single buffer, use `electric-pair-local-mode'." | ||
| 561 | :global t :group 'electricity | 562 | :global t :group 'electricity |
| 562 | (if electric-pair-mode | 563 | (if electric-pair-mode |
| 563 | (progn | 564 | (progn |
| @@ -571,6 +572,19 @@ closing parenthesis. (Likewise for brackets, etc.)." | |||
| 571 | (remove-hook 'self-insert-uses-region-functions | 572 | (remove-hook 'self-insert-uses-region-functions |
| 572 | #'electric-pair-will-use-region))) | 573 | #'electric-pair-will-use-region))) |
| 573 | 574 | ||
| 575 | ;;;###autoload | ||
| 576 | (define-minor-mode electric-pair-local-mode | ||
| 577 | "Toggle `electric-pair-mode' only in this buffer." | ||
| 578 | :variable (buffer-local-value 'electric-pair-mode (current-buffer)) | ||
| 579 | (cond | ||
| 580 | ((eq electric-pair-mode (default-value 'electric-pair-mode)) | ||
| 581 | (kill-local-variable 'electric-pair-mode)) | ||
| 582 | ((not (default-value 'electric-pair-mode)) | ||
| 583 | ;; Locally enabled, but globally disabled. | ||
| 584 | (electric-pair-mode 1) ; Setup the hooks. | ||
| 585 | (setq-default electric-pair-mode nil) ; But keep it globally disabled. | ||
| 586 | ))) | ||
| 587 | |||
| 574 | (provide 'elec-pair) | 588 | (provide 'elec-pair) |
| 575 | 589 | ||
| 576 | ;;; elec-pair.el ends here | 590 | ;;; elec-pair.el ends here |