summaryrefslogtreecommitdiff
path: root/lisp/composite.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2019-08-20 09:01:55 -0700
committerGlenn Morris <rgm@gnu.org>2019-08-20 09:01:55 -0700
commit8f68449c9476956425881bf1534fa727d5247448 (patch)
tree6647f6d286b2efdfab829f0a6715164743594084 /lisp/composite.el
parent65dc07f563f229faadaa44312776941abbf6e1b6 (diff)
parent0b810ebc9fe65e447e37832db40ccf634e5548d9 (diff)
downloademacs-8f68449c9476956425881bf1534fa727d5247448.tar.gz
Merge from origin/emacs-26
0b810eb Fix a typo in char-width-table 3f00db7 Minor update in admin/notes/unicode bcd0115 Fix lisp indent infloop on unfinished strings (Bug#37045) 5f992d1 Improve commentary in composite.el 3a04be2 ; Improve commentary in xdisp.c 15de1d1 Fix markup in dired-x.texi bda7fc7 ; Fix typo in a doc string of speedbar.el 6f57ef9 * src/callproc.c (Fcall_process): Doc fix. # Conflicts: # doc/misc/dired-x.texi # lisp/international/characters.el # src/callproc.c
Diffstat (limited to 'lisp/composite.el')
-rw-r--r--lisp/composite.el9
1 files changed, 8 insertions, 1 deletions
diff --git a/lisp/composite.el b/lisp/composite.el
index e0d0721f16d..d0f20949438 100644
--- a/lisp/composite.el
+++ b/lisp/composite.el
@@ -555,6 +555,11 @@ All non-spacing characters have this function in
;; This sequence doesn't start with a proper base character.
((memq (get-char-code-property (lgstring-char gstring 0)
'general-category)
+ ;; "Improper" base characters are of the following general
+ ;; categories:
+ ;; Mark (nonspacing, combining, enclosing)
+ ;; Separator (space, line, paragraph)
+ ;; Other (control, format, surrogate)
'(Mn Mc Me Zs Zl Zp Cc Cf Cs))
nil)
@@ -647,6 +652,7 @@ All non-spacing characters have this function in
de (+ de yoff)))
((and (= class 0)
(eq (get-char-code-property (lglyph-char glyph)
+ ;; Me = enclosing mark
'general-category) 'Me))
;; Artificially laying out glyphs in an enclosing
;; mark is difficult. All we can do is to adjust
@@ -772,7 +778,8 @@ prepending a space before it."
'general-category)
'Cf)
(progn
- ;; Compose by replacing with a space.
+ ;; Compose Cf (format) control characters by
+ ;; replacing with a space.
(lglyph-set-char glyph 32)
(lglyph-set-width glyph 1)
(setq i (1+ i)))