mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
* lisp/character-fold.el: Fix lax whitespace
(character-fold-table): Don't make space match other whitespace chars. (character-fold-to-regexp): Simplify lax behaviour.
This commit is contained in:
parent
ee50e62a44
commit
437862c5c9
1 changed files with 6 additions and 8 deletions
|
|
@ -94,8 +94,7 @@ some).")
|
|||
;; Add some manual entries.
|
||||
(dolist (it '((?\" """ "“" "”" "”" "„" "⹂" "〞" "‟" "‟" "❞" "❝" "❠" "“" "„" "〝" "〟" "🙷" "🙶" "🙸" "«" "»")
|
||||
(?' "❟" "❛" "❜" "‘" "’" "‚" "‛" "‚" "" "❮" "❯" "‹" "›")
|
||||
(?` "❛" "‘" "‛" "" "❮" "‹")
|
||||
(?\s "\t" "\r" "\n")))
|
||||
(?` "❛" "‘" "‛" "" "❮" "‹")))
|
||||
(let ((idx (car it))
|
||||
(chars (cdr it)))
|
||||
(aset equiv idx (append chars (aref equiv idx)))))
|
||||
|
|
@ -121,12 +120,11 @@ If LAX is non-nil, any single whitespace character is allowed to
|
|||
match any number of times."
|
||||
(if character-fold-search
|
||||
(apply #'concat
|
||||
(mapcar (lambda (c) (let ((out (or (aref character-fold-table c)
|
||||
(regexp-quote (string c)))))
|
||||
(if (and lax (memq c '(?\s ?\t ?\r ?\n )))
|
||||
(concat out "+")
|
||||
out)))
|
||||
string))
|
||||
(mapcar (lambda (c) (if (and lax (memq c '(?\s ?\t ?\r ?\n)))
|
||||
"[ \t\n\r\xa0\x2002\x2d\x200a\x202f\x205f\x3000]+"
|
||||
(or (aref character-fold-table c)
|
||||
(regexp-quote (string c)))))
|
||||
string))
|
||||
(regexp-quote string)))
|
||||
|
||||
;;; character-fold.el ends here
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue