summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2016-10-23 01:14:23 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2016-10-23 01:14:57 -0700
commit6f1325ed926ed455398021377a10160ac695c0d6 (patch)
tree98d0a889f76a348124f370adfe76ea29ccad2663
parentc2a17924a57483d14692c8913edbe8ad24b5ffbb (diff)
downloademacs-6f1325ed926ed455398021377a10160ac695c0d6.tar.gz
electric-quote mode no longer worries about coding
* doc/emacs/text.texi (Quotation Marks), etc/NEWS: Document this. * lisp/electric.el (electric--insertable-p): Remove. All uses removed (Bug#24759).
-rw-r--r--doc/emacs/text.texi4
-rw-r--r--etc/NEWS6
-rw-r--r--lisp/electric.el21
3 files changed, 11 insertions, 20 deletions
diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi
index 579f7880cfe..7fa0804d270 100644
--- a/doc/emacs/text.texi
+++ b/doc/emacs/text.texi
@@ -422,9 +422,7 @@ portable; curved quotes are less ambiguous and typically look nicer.
Electric Quote mode makes it easier to type curved quotes. As you
type characters it optionally converts @t{`} to @t{‘}, @t{'} to @t{’},
-@t{``} to @t{“}, and @t{''} to @t{”}. These conversions are
-suppressed in buffers whose coding systems cannot represent curved
-quote characters.
+@t{``} to @t{“}, and @t{''} to @t{”}.
@vindex electric-quote-paragraph
@vindex electric-quote-comment
diff --git a/etc/NEWS b/etc/NEWS
index 5b89639440d..a5bcb8dabdc 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -38,6 +38,12 @@ fontsets if the default font supports these characters. Set this
variable to nil to disable the new behavior and get back the old
behavior.
++++
+** 'electric-quote-mode' is no longer suppressed in a buffer whose
+whose coding system cannot represent curved quote characters.
+Instead, users can deal with the unrepresentable characters in the
+usual way when they save the buffer.
+
---
** New variable 'inhibit-compacting-font-caches'.
Set this variable to a non-nil value to speed up display of characters
diff --git a/lisp/electric.el b/lisp/electric.el
index b6697e0736a..ab9770b0bbb 100644
--- a/lisp/electric.el
+++ b/lisp/electric.el
@@ -430,12 +430,6 @@ The variable `electric-layout-rules' says when and how to insert newlines."
:version "25.1"
:type 'boolean :safe 'booleanp :group 'electricity)
-(defun electric--insertable-p (string)
- (or (not buffer-file-coding-system)
- (eq (coding-system-base buffer-file-coding-system) 'undecided)
- (not (unencodable-char-position nil nil buffer-file-coding-system
- nil string))))
-
(defun electric-quote-post-self-insert-function ()
"Function that `electric-quote-mode' adds to `post-self-insert-hook'.
This requotes when a quoting key is typed."
@@ -460,8 +454,7 @@ This requotes when a quoting key is typed."
(when start
(save-excursion
(if (eq last-command-event ?\`)
- (cond ((and (electric--insertable-p "“")
- (search-backward "‘`" (- (point) 2) t))
+ (cond ((search-backward "‘`" (- (point) 2) t)
(replace-match "“")
(when (and electric-pair-mode
(eq (cdr-safe
@@ -469,16 +462,13 @@ This requotes when a quoting key is typed."
(char-after)))
(delete-char 1))
(setq last-command-event ?“))
- ((and (electric--insertable-p "‘")
- (search-backward "`" (1- (point)) t))
+ ((search-backward "`" (1- (point)) t)
(replace-match "‘")
(setq last-command-event ?‘)))
- (cond ((and (electric--insertable-p "”")
- (search-backward "’'" (- (point) 2) t))
+ (cond ((search-backward "’'" (- (point) 2) t)
(replace-match "”")
(setq last-command-event ?”))
- ((and (electric--insertable-p "’")
- (search-backward "'" (1- (point)) t))
+ ((search-backward "'" (1- (point)) t)
(replace-match "’")
(setq last-command-event ?’)))))))))
@@ -497,9 +487,6 @@ and text paragraphs, and these are selectively controlled with
`electric-quote-comment', `electric-quote-string', and
`electric-quote-paragraph'.
-Electric quoting is suppressed in a buffer whose coding system
-cannot represent the replacement characters.
-
This is a global minor mode. To toggle the mode in a single buffer,
use `electric-quote-local-mode'."
:global t :group 'electricity