[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 966abdb: Add prefix to help.el uni-confusable* vars
From: |
Noam Postavsky |
Subject: |
master 966abdb: Add prefix to help.el uni-confusable* vars |
Date: |
Fri, 13 Dec 2019 06:41:44 -0500 (EST) |
branch: master
commit 966abdba09214813a86979f22bfb08475a73f10c
Author: Noam Postavsky <address@hidden>
Commit: Noam Postavsky <address@hidden>
Add prefix to help.el uni-confusable* vars
* lisp/help.el (help-uni-confusables, help-uni-confusables-regexp):
Rename from uni-confusable and uni-confusables-regexp, respectively.
(help-uni-confusable-suggestions): Use ngettext. Use new variable
name.
* lisp/emacs-lisp/lisp-mode.el (lisp--match-confusable-symbol-character):
Use new variable name.
---
lisp/emacs-lisp/lisp-mode.el | 2 +-
lisp/help.el | 25 ++++++++++++++++---------
2 files changed, 17 insertions(+), 10 deletions(-)
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index 56f8ef6..1da2b79 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -284,7 +284,7 @@ This will generate compile-time constants from BINDINGS."
;; Match a confusable character within a Lisp symbol.
(catch 'matched
(while t
- (if (re-search-forward uni-confusables-regexp limit t)
+ (if (re-search-forward help-uni-confusables-regexp limit t)
;; Skip confusables which are backslash escaped, or inside
;; strings or comments.
(save-match-data
diff --git a/lisp/help.el b/lisp/help.el
index 8bb942a..857064c 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -1511,7 +1511,7 @@ the same names as used in the original source code, when
possible."
;; Just some quote-like characters for now. TODO: generate this stuff
;; from official Unicode data.
-(defconst uni-confusables
+(defconst help-uni-confusables
'((#x2018 . "'") ;; LEFT SINGLE QUOTATION MARK
(#x2019 . "'") ;; RIGHT SINGLE QUOTATION MARK
(#x201B . "'") ;; SINGLE HIGH-REVERSED-9 QUOTATION MARK
@@ -1521,25 +1521,32 @@ the same names as used in the original source code,
when possible."
(#x301E . "\"") ;; DOUBLE PRIME QUOTATION MARK
(#xFF02 . "'") ;; FULLWIDTH QUOTATION MARK
(#xFF07 . "'") ;; FULLWIDTH APOSTROPHE
- ))
+ )
+ "An alist of confusable characters to give hints about.
+Each alist element is of the form (CHAR . REPLACEMENT), where
+CHAR is the potentially confusable character, and REPLACEMENT is
+the suggested string to use instead. See
+`help-uni-confusable-suggestions'.")
-(defconst uni-confusables-regexp
- (concat "[" (mapcar #'car uni-confusables) "]"))
+(defconst help-uni-confusables-regexp
+ (concat "[" (mapcar #'car help-uni-confusables) "]")
+ "Regexp matching any character listed in `help-uni-confusables'.")
(defun help-uni-confusable-suggestions (string)
"Return a message describing confusables in STRING."
(let ((i 0)
(confusables nil))
- (while (setq i (string-match uni-confusables-regexp string i))
- (let ((replacement (alist-get (aref string i) uni-confusables)))
+ (while (setq i (string-match help-uni-confusables-regexp string i))
+ (let ((replacement (alist-get (aref string i) help-uni-confusables)))
(push (aref string i) confusables)
(setq string (replace-match replacement t t string))
(setq i (+ i (length replacement)))))
(when confusables
(format-message
- (if (> (length confusables) 1)
- "Found confusable characters: %s; perhaps you meant: `%s'?"
- "Found confusable character: %s, perhaps you meant: `%s'?")
+ (ngettext
+ "Found confusable character: %s, perhaps you meant: `%s'?"
+ "Found confusable characters: %s; perhaps you meant: `%s'?"
+ (length confusables))
(mapconcat (lambda (c) (format-message "`%c'" c))
confusables ", ")
string))))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master 966abdb: Add prefix to help.el uni-confusable* vars,
Noam Postavsky <=