aboutsummaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
authorGlenn Morris2021-10-19 07:50:35 -0700
committerGlenn Morris2021-10-19 07:50:35 -0700
commit4d4b4017591c7fb4e37b7d1e0d6b2db565a56c66 (patch)
tree132fc64cbb5da9e0f5d0600edfcf189dd86e783d /admin
parent41c262af322eab6c35a94d747dcaf776b0975f35 (diff)
parentd742cc3c204ba0adeb9600d236a0e454e35a42ff (diff)
downloademacs-4d4b4017591c7fb4e37b7d1e0d6b2db565a56c66.tar.gz
emacs-4d4b4017591c7fb4e37b7d1e0d6b2db565a56c66.zip
Merge from origin/emacs-28
d742cc3c20 (origin/emacs-28) ; etc/NEWS: Fix typos 28db29590f * admin/notes/unicode: Refer to Unicode's emoji-style.txt 9bd2f59db6 Handle VS-16 correctly for non-emoji codepoints e55e2d4a11 ; * etc/NEWS: Minor copyedit about 'repeat-mode'. 380981ddb5 Adjust bug-reference-bug-regexp default values to match on... c1cf95a0e1 ; * doc/emacs/windows.texi: Doc fix. 98eb6d783a Fix a typo in emacs-lisp-intro.texi f5b8f626e3 Fix some Tramp problems fc988a7113 Adapt Tramp manual 0c241043a8 Further fixes to Elisp manual 8e8a920246 * lisp/progmodes/cc-engine.el (c-forward-decl-or-cast-1): ... 5a3242301d Rename tab-bar-drag-maybe to tab-bar--dragging-in-progress bb4209a5a5 Fix xref elisp identifier namespace mistake # Conflicts: # etc/NEWS
Diffstat (limited to 'admin')
-rw-r--r--admin/notes/unicode8
-rwxr-xr-xadmin/unidata/blocks.awk26
-rw-r--r--admin/unidata/emoji-zwj.awk41
3 files changed, 47 insertions, 28 deletions
diff --git a/admin/notes/unicode b/admin/notes/unicode
index 21233ac2819..c41b9a6d26d 100644
--- a/admin/notes/unicode
+++ b/admin/notes/unicode
@@ -116,8 +116,12 @@ FONT-NAME-REGEXP is checked using `string-match'."
116 116
117Visit "emoji-zwj-sequences.txt" and "emoji-sequences.txt" with the 117Visit "emoji-zwj-sequences.txt" and "emoji-sequences.txt" with the
118rebuilt Emacs, and check that the sample sequences are composed 118rebuilt Emacs, and check that the sample sequences are composed
119properly. Note that your emoji font might not have glyphs for the 119properly. Also check the Unicode style chart file available at
120newest codepoints yet. 120https://unicode.org/emoji/charts/emoji-style.txt for any issues
121involving VS-15 and VS-16, if so you may need to update the value
122generated for auto-composition-emoji-eligible-codepoints by
123admin/unidata/emoji-zwj.awk. Note that your emoji font might not have
124glyphs for the newest codepoints yet.
121 125
122Finally, etc/NEWS should be updated to announce the support for the 126Finally, etc/NEWS should be updated to announce the support for the
123new Unicode version. 127new Unicode version.
diff --git a/admin/unidata/blocks.awk b/admin/unidata/blocks.awk
index 96b0413875d..314ac3e9394 100755
--- a/admin/unidata/blocks.awk
+++ b/admin/unidata/blocks.awk
@@ -221,31 +221,9 @@ FILENAME ~ "emoji-data.txt" && /^[0-9A-F].*; Emoji_Presentation / {
221} 221}
222 222
223END { 223END {
224 ## These codepoints have Emoji_Presentation = No, but they are
225 ## used in emoji-sequences.txt and emoji-zwj-sequences.txt (with a
226 ## Variation Selector), so force them into the emoji script so
227 ## they will get composed correctly. FIXME: delete this when we
228 ## can change the font used for a codepoint based on whether it's
229 ## followed by a VS (usually VS-16)
230 idx = 0 224 idx = 0
231 override_start[idx] = "1F3CB" 225 # ## These are here so that font_range can choose Emoji presentation
232 override_end[idx] = "1F3CC" 226 # ## for the preceding codepoint when it encounters a VS
233 idx++
234 override_start[idx] = "1F3F3"
235 override_end[idx] = "1F3F4"
236 idx++
237 override_start[idx] = "1F441"
238 override_end[idx] = "1F441"
239 idx++
240 override_start[idx] = "1F574"
241 override_end[idx] = "1F575"
242 idx++
243 override_start[idx] = "1F590"
244 override_end[idx] = "1F590"
245
246 ## These are here so that font_range can choose Emoji presentation
247 ## for the preceding codepoint when it encounters a VS
248 idx++
249 override_start[idx] = "FE00" 227 override_start[idx] = "FE00"
250 override_end[idx] = "FE0F" 228 override_end[idx] = "FE0F"
251 229
diff --git a/admin/unidata/emoji-zwj.awk b/admin/unidata/emoji-zwj.awk
index 5aca157cbd4..d4e2944ca34 100644
--- a/admin/unidata/emoji-zwj.awk
+++ b/admin/unidata/emoji-zwj.awk
@@ -64,6 +64,44 @@ END {
64 print ";;; emoji-zwj.el --- emoji zwj character composition table -*- lexical-binding:t -*-" 64 print ";;; emoji-zwj.el --- emoji zwj character composition table -*- lexical-binding:t -*-"
65 print ";;; Automatically generated from admin/unidata/emoji-{zwj-,}sequences.txt" 65 print ";;; Automatically generated from admin/unidata/emoji-{zwj-,}sequences.txt"
66 print "(eval-when-compile (require 'regexp-opt))" 66 print "(eval-when-compile (require 'regexp-opt))"
67
68 # The following codepoints are not emoji, but they are part of
69 # emoji sequences. We have code in font.c:font_range that will
70 # try to display them with the emoji font anyway.
71
72 trigger_codepoints[1] = "261D"
73 trigger_codepoints[2] = "26F9"
74 trigger_codepoints[3] = "270C"
75 trigger_codepoints[4] = "270D"
76 trigger_codepoints[5] = "2764"
77 trigger_codepoints[6] = "1F3CB"
78 trigger_codepoints[7] = "1F3CC"
79 trigger_codepoints[8] = "1F3F3"
80 trigger_codepoints[9] = "1F3F4"
81 trigger_codepoints[10] = "1F441"
82 trigger_codepoints[11] = "1F574"
83 trigger_codepoints[12] = "1F575"
84 trigger_codepoints[13] = "1F590"
85
86 printf "(setq auto-composition-emoji-eligible-codepoints\n"
87 printf "'("
88
89 for (trig in trigger_codepoints)
90 {
91 printf("\n?\\N{U+%s}", trigger_codepoints[trig])
92 }
93 printf "\n))\n\n"
94
95 # We add entries for 'codepoint U+FE0F' here to ensure that the
96 # code in font_range is triggered.
97
98 for (trig in trigger_codepoints)
99 {
100 codepoint = trigger_codepoints[trig]
101 c = sprintf("\\N{U+%s}", codepoint)
102 vec[codepoint] = vec[codepoint] "\n\"" c "\\N{U+FE0F}\""
103 }
104
67 print "(dolist (elt `(" 105 print "(dolist (elt `("
68 106
69 for (elt in ch) 107 for (elt in ch)
@@ -98,6 +136,5 @@ END {
98 print " 0" 136 print " 0"
99 print " 'compose-gstring-for-graphic))))" 137 print " 'compose-gstring-for-graphic))))"
100 138
101 print "\n" 139 printf "\n(provide 'emoji-zwj)"
102 print "(provide 'emoji-zwj)"
103} 140}