aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorEli Zaretskii2016-03-12 17:51:45 +0200
committerEli Zaretskii2016-03-12 17:51:45 +0200
commita761fbf262b6898036a537a36476da7767c0daca (patch)
tree5bc9e4796927f6bf1f41b5618f7d732a6c1c5ccb /lisp
parent06aad394ab3cd83de8fc407e5dfeb59aa8518557 (diff)
downloademacs-a761fbf262b6898036a537a36476da7767c0daca.tar.gz
emacs-a761fbf262b6898036a537a36476da7767c0daca.zip
Import new data files from Unicode 9.0.0beta
* admin/unidata/UnicodeData.txt: * admin/unidata/Blocks.txt: * admin/unidata/BidiMirroring.txt: * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta. * admin/unidata/unidata-gen.el (unidata-gen-files): Bind 'coding-system-for-read' to 'utf-8, as various Unicode data files now actually use non-ASCII characters. (unidata-setup-list, unidata-get-name): Support the new Tangut Ideographs block. * lisp/international/characters.el (standard-case-table): Add new characters from Unicode 9.0.0. (standard-category-table): Add Arabic block u+08A0..u+08FF. Add Cyrillic Extended-C block. (char-width-table): Update ranges per Unicode 9.0.0. * lisp/international/fontset.el (script-representative-chars): Add new scripts defined by Unicode 9.0.0. (otf-script-alist): Add new OTF script tags. * lisp/international/mule-cmds.el (ucs-names): Update ranges per Unicode 9.0.0 additions.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/international/characters.el90
-rw-r--r--lisp/international/fontset.el50
-rw-r--r--lisp/international/mule-cmds.el5
3 files changed, 141 insertions, 4 deletions
diff --git a/lisp/international/characters.el b/lisp/international/characters.el
index a43c0f68070..00f68f0fbbf 100644
--- a/lisp/international/characters.el
+++ b/lisp/international/characters.el
@@ -290,6 +290,7 @@ with L, LRE, or LRO Unicode bidi character type.")
290 (map-charset-chars #'modify-category-entry (car charsets) ?b) 290 (map-charset-chars #'modify-category-entry (car charsets) ?b)
291 (setq charsets (cdr charsets)))) 291 (setq charsets (cdr charsets))))
292(modify-category-entry '(#x600 . #x6ff) ?b) 292(modify-category-entry '(#x600 . #x6ff) ?b)
293(modify-category-entry '(#x8a0 . #x8ff) ?b)
293(modify-category-entry '(#xfb50 . #xfdff) ?b) 294(modify-category-entry '(#xfb50 . #xfdff) ?b)
294(modify-category-entry '(#xfe70 . #xfefe) ?b) 295(modify-category-entry '(#xfe70 . #xfefe) ?b)
295 296
@@ -700,6 +701,7 @@ with L, LRE, or LRO Unicode bidi character type.")
700 (set-case-syntax-pair ?Ɜ ?ɜ tbl) 701 (set-case-syntax-pair ?Ɜ ?ɜ tbl)
701 (set-case-syntax-pair ?Ɡ ?ɡ tbl) 702 (set-case-syntax-pair ?Ɡ ?ɡ tbl)
702 (set-case-syntax-pair ?Ɬ ?ɬ tbl) 703 (set-case-syntax-pair ?Ɬ ?ɬ tbl)
704 (set-case-syntax-pair ?Ɪ ?ɪ tbl)
703 (set-case-syntax-pair ?Ʞ ?ʞ tbl) 705 (set-case-syntax-pair ?Ʞ ?ʞ tbl)
704 (set-case-syntax-pair ?Ʇ ?ʇ tbl) 706 (set-case-syntax-pair ?Ʇ ?ʇ tbl)
705 (set-case-syntax-pair ?Ʝ ?ʝ tbl) 707 (set-case-syntax-pair ?Ʝ ?ʝ tbl)
@@ -810,6 +812,9 @@ with L, LRE, or LRO Unicode bidi character type.")
810 (set-case-syntax-pair c (+ c #x1C60) tbl) 812 (set-case-syntax-pair c (+ c #x1C60) tbl)
811 (setq c (1+ c))) 813 (setq c (1+ c)))
812 814
815 ;; Cyrillic Extended-C
816 (modify-category-entry '(#x1C80 . #x1C8F) ?y)
817
813 ;; general punctuation 818 ;; general punctuation
814 (setq c #x2000) 819 (setq c #x2000)
815 (while (<= c #x200b) 820 (while (<= c #x200b)
@@ -903,6 +908,12 @@ with L, LRE, or LRO Unicode bidi character type.")
903 (set-case-syntax-pair c (+ c 28) tbl) 908 (set-case-syntax-pair c (+ c 28) tbl)
904 (setq c (1+ c))) 909 (setq c (1+ c)))
905 910
911 ;; Osage
912 (setq c #x104B0)
913 (while (<= c #x104D3)
914 (set-case-syntax-pair c (+ c 40) tbl)
915 (setq c (1+ c)))
916
906 ;; Old Hungarian 917 ;; Old Hungarian
907 (setq c #x10c80) 918 (setq c #x10c80)
908 (while (<= c #x10cb2) 919 (while (<= c #x10cb2)
@@ -915,6 +926,12 @@ with L, LRE, or LRO Unicode bidi character type.")
915 (set-case-syntax-pair c (+ c #x20) tbl) 926 (set-case-syntax-pair c (+ c #x20) tbl)
916 (setq c (1+ c))) 927 (setq c (1+ c)))
917 928
929 ;; Adlam
930 (setq c #x1e900)
931 (while (<= c #x1e921)
932 (set-case-syntax-pair c (+ c #x22) tbl)
933 (setq c (1+ c)))
934
918 ;; Combining diacritics 935 ;; Combining diacritics
919 (modify-category-entry '(#x300 . #x362) ?^) 936 (modify-category-entry '(#x300 . #x362) ?^)
920 ;; Combining marks 937 ;; Combining marks
@@ -1183,7 +1200,40 @@ with L, LRE, or LRO Unicode bidi character type.")
1183 1200
1184;; 2: East Asian Wide and Full-width characters. 1201;; 2: East Asian Wide and Full-width characters.
1185(let ((l '((#x1100 . #x115F) 1202(let ((l '((#x1100 . #x115F)
1203 (#x231A . #x231B)
1186 (#x2329 . #x232A) 1204 (#x2329 . #x232A)
1205 (#x23E9 . #x23EC)
1206 (#x23F0 . #x23F0)
1207 (#x23F3 . #x23F3)
1208 (#x25FD . #x25FE)
1209 (#x2614 . #x2615)
1210 (#x2648 . #x2653)
1211 (#x267F . #x267F)
1212 (#x2693 . #x2693)
1213 (#x26A1 . #x26A1)
1214 (#x26AA . #x26AB)
1215 (#x26BD . #x26BE)
1216 (#x26C4 . #x26C5)
1217 (#x26CE . #x26CE)
1218 (#x26D4 . #x26D4)
1219 (#x26EA . #x26EA)
1220 (#x26F2 . #x26F3)
1221 (#x26F5 . #x26F5)
1222 (#x26FA . #x26FA)
1223 (#x26FD . #x26FD)
1224 (#x2705 . #x2705)
1225 (#x270A . #x270B)
1226 (#x2728 . #x2728)
1227 (#x274C . #x274C)
1228 (#x274E . #x274E)
1229 (#x2753 . #x2755)
1230 (#x2757 . #x2757)
1231 (#x2795 . #x2797)
1232 (#x27B0 . #x27B0)
1233 (#x27BF . #x27BF)
1234 (#x2B1B . #x2B1C)
1235 (#x2B50 . #x2B50)
1236 (#x2B55 . #x2B55)
1187 (#x2E80 . #x303E) 1237 (#x2E80 . #x303E)
1188 (#x3040 . #xA4CF) 1238 (#x3040 . #xA4CF)
1189 (#xAC00 . #xD7A3) 1239 (#xAC00 . #xD7A3)
@@ -1191,6 +1241,46 @@ with L, LRE, or LRO Unicode bidi character type.")
1191 (#xFE30 . #xFE6F) 1241 (#xFE30 . #xFE6F)
1192 (#xFF01 . #xFF60) 1242 (#xFF01 . #xFF60)
1193 (#xFFE0 . #xFFE6) 1243 (#xFFE0 . #xFFE6)
1244 (#x16FE0 . #x16FE0)
1245 (#x17000 . #x187EC)
1246 (#x18800 . #x18AF2)
1247 (#x1F18E . #x1F18E)
1248 (#x1F191 . #x1F19A)
1249 (#x1F200 . #x1F202)
1250 (#x1F210 . #x1F23B)
1251 (#x1F300 . #x1F320)
1252 (#x1F32D . #x1F335)
1253 (#x1F337 . #x1F37C)
1254 (#x1F37E . #x1F393)
1255 (#x1F3A0 . #x1F3CA)
1256 (#x1F3CF . #x1F3D3)
1257 (#x1F3E0 . #x1F3F0)
1258 (#x1F3F4 . #x1F3F4)
1259 (#x1F3F8 . #x1F3FA)
1260 (#x1F3FB . #x1F3FF)
1261 (#x1F440 . #x1F440)
1262 (#x1F442 . #x1F4FC)
1263 (#x1F4FF . #x1F53D)
1264 (#x1F54B . #x1F54E)
1265 (#x1F550 . #x1F567)
1266 (#x1F57A . #x1F57A)
1267 (#x1F595 . #x1F596)
1268 (#x1F5A4 . #x1F5A4)
1269 (#x1F5FB . #x1F5FF)
1270 (#x1F600 . #x1F64F)
1271 (#x1F680 . #x1F6C5)
1272 (#x1F6CC . #x1F6CC)
1273 (#x1F6D0 . #x1F6D2)
1274 (#x1F6EB . #x1F6EC)
1275 (#x1F6F4 . #x1F6F6)
1276 (#x1F910 . #x1F91E)
1277 (#x1F920 . #x1F927)
1278 (#x1F930 . #x1F930)
1279 (#x1F933 . #x1F93E)
1280 (#x1F940 . #x1F94B)
1281 (#x1F950 . #x1F95E)
1282 (#x1F980 . #x1F991)
1283 (#x1F9C0 . #x1F9C0)
1194 (#x20000 . #x2FFFF) 1284 (#x20000 . #x2FFFF)
1195 (#x30000 . #x3FFFF)))) 1285 (#x30000 . #x3FFFF))))
1196 (dolist (elt l) 1286 (dolist (elt l)
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index 2ecfa7e53af..90905a2ade9 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -205,6 +205,7 @@
205 (deseret #x10400) 205 (deseret #x10400)
206 (shavian #x10450) 206 (shavian #x10450)
207 (osmanya #x10480) 207 (osmanya #x10480)
208 (osage #x104B0)
208 (elbasan #x10500) 209 (elbasan #x10500)
209 (caucasian-albanian #x10530) 210 (caucasian-albanian #x10530)
210 (linear-a #x10600) 211 (linear-a #x10600)
@@ -220,17 +221,22 @@
220 (khojki #x11200) 221 (khojki #x11200)
221 (khudawadi #x112B0) 222 (khudawadi #x112B0)
222 (grantha #x11305) 223 (grantha #x11305)
224 (newa #x11400)
223 (tirhuta #x11481) 225 (tirhuta #x11481)
224 (siddham #x11580) 226 (siddham #x11580)
225 (modi #x11600) 227 (modi #x11600)
226 (takri #x11680) 228 (takri #x11680)
227 (warang-citi #x118A1) 229 (warang-citi #x118A1)
228 (pau-cin-hau #x11AC0) 230 (pau-cin-hau #x11AC0)
231 (bhaiksuki #x11C00)
232 (marchen #x11C72)
229 (cuneiform #x12000) 233 (cuneiform #x12000)
230 (cuneiform-numbers-and-punctuation #x12400) 234 (cuneiform-numbers-and-punctuation #x12400)
231 (mro #x16A40) 235 (mro #x16A40)
232 (bassa-vah #x16AD0) 236 (bassa-vah #x16AD0)
233 (pahawh-hmong #x16B11) 237 (pahawh-hmong #x16B11)
238 (tangut #x17000)
239 (tangut-components #x18800)
234 (duployan-shorthand #x1BC20) 240 (duployan-shorthand #x1BC20)
235 (byzantine-musical-symbol #x1D000) 241 (byzantine-musical-symbol #x1D000)
236 (musical-symbol #x1D100) 242 (musical-symbol #x1D100)
@@ -238,31 +244,38 @@
238 (tai-xuan-jing-symbol #x1D300) 244 (tai-xuan-jing-symbol #x1D300)
239 (counting-rod-numeral #x1D360) 245 (counting-rod-numeral #x1D360)
240 (mende-kikakui #x1E810) 246 (mende-kikakui #x1E810)
247 (adlam #x1E900)
241 (mahjong-tile #x1F000) 248 (mahjong-tile #x1F000)
242 (domino-tile #x1F030))) 249 (domino-tile #x1F030)))
243 250
244(defvar otf-script-alist) 251(defvar otf-script-alist)
245 252
246;; The below was synchronized with the latest Jan 3, 2013 version of 253;; The below was synchronized with the latest Feb 25, 2016 version of
247;; https://www.microsoft.com/typography/otspec/scripttags.htm. 254;; https://www.microsoft.com/typography/otspec/scripttags.htm.
248(setq otf-script-alist 255(setq otf-script-alist
249 '((arab . arabic) 256 '((adlm . adlam)
257 (ahom . ahom)
258 (hluw . anatolian)
259 (arab . arabic)
250 (armi . aramaic) 260 (armi . aramaic)
251 (armn . armenian) 261 (armn . armenian)
252 (avst . avestan) 262 (avst . avestan)
253 (bali . balinese) 263 (bali . balinese)
254 (bamu . bamum) 264 (bamu . bamum)
265 (bass . bassa-vah)
255 (batk . batak) 266 (batk . batak)
256 (bng2 . bengali) 267 (bng2 . bengali)
257 (beng . bengali) 268 (beng . bengali)
269 (bhks . bhaiksuki)
258 (bopo . bopomofo) 270 (bopo . bopomofo)
259 (brai . braille)
260 (brah . brahmi) 271 (brah . brahmi)
272 (brai . braille)
261 (bugi . buginese) 273 (bugi . buginese)
262 (buhd . buhid) 274 (buhd . buhid)
263 (byzm . byzantine-musical-symbol) 275 (byzm . byzantine-musical-symbol)
264 (cans . canadian-aboriginal) 276 (cans . canadian-aboriginal)
265 (cari . carian) 277 (cari . carian)
278 (aghb . caucasian-albanian)
266 (cakm . chakma) 279 (cakm . chakma)
267 (cham . cham) 280 (cham . cham)
268 (cher . cherokee) 281 (cher . cherokee)
@@ -273,11 +286,14 @@
273 (dsrt . deseret) 286 (dsrt . deseret)
274 (deva . devanagari) 287 (deva . devanagari)
275 (dev2 . devanagari) 288 (dev2 . devanagari)
289 (dupl . duployan-shorthand)
276 (egyp . egyptian) 290 (egyp . egyptian)
291 (elba . elbasan)
277 (ethi . ethiopic) 292 (ethi . ethiopic)
278 (geor . georgian) 293 (geor . georgian)
279 (glag . glagolitic) 294 (glag . glagolitic)
280 (goth . gothic) 295 (goth . gothic)
296 (gran . grantha)
281 (grek . greek) 297 (grek . greek)
282 (gujr . gujarati) 298 (gujr . gujarati)
283 (gjr2 . gujarati) 299 (gjr2 . gujarati)
@@ -287,6 +303,7 @@
287 (hang . hangul) 303 (hang . hangul)
288 (jamo . hangul) 304 (jamo . hangul)
289 (hano . hanunoo) 305 (hano . hanunoo)
306 (hatr . hatran)
290 (hebr . hebrew) 307 (hebr . hebrew)
291 (phli . inscriptional-pahlavi) 308 (phli . inscriptional-pahlavi)
292 (prti . inscriptional-parthian) 309 (prti . inscriptional-parthian)
@@ -298,43 +315,67 @@
298 (kali . kayah-li) 315 (kali . kayah-li)
299 (khar . kharoshthi) 316 (khar . kharoshthi)
300 (khmr . khmer) 317 (khmr . khmer)
318 (khoj . khojki)
319 (sind . khudawadi)
301 (lao\ . lao) 320 (lao\ . lao)
302 (latn . latin) 321 (latn . latin)
303 (lepc . lepcha) 322 (lepc . lepcha)
304 (limb . limbu) 323 (limb . limbu)
324 (lina . linear_a)
305 (linb . linear_b) 325 (linb . linear_b)
306 (lisu . lisu) 326 (lisu . lisu)
307 (lyci . lycian) 327 (lyci . lycian)
308 (lydi . lydian) 328 (lydi . lydian)
329 (mahj . mahajani)
330 (marc . marchen)
309 (mlym . malayalam) 331 (mlym . malayalam)
310 (mlm2 . malayalam) 332 (mlm2 . malayalam)
311 (mand . mandaic) 333 (mand . mandaic)
334 (mani . manichaean)
312 (math . mathematical) 335 (math . mathematical)
313 (mtei . meetei-mayek) 336 (mtei . meetei-mayek)
337 (mend . mende-kikakui)
314 (merc . meroitic) 338 (merc . meroitic)
315 (mero . meroitic) 339 (mero . meroitic)
340 (plrd . miao)
341 (modi . modi)
316 (mong . mongolian) 342 (mong . mongolian)
343 (mroo . mro)
344 (mult . multani)
317 (musc . musical-symbol) 345 (musc . musical-symbol)
318 (mym2 . burmese) 346 (mym2 . burmese)
319 (mymr . burmese) 347 (mymr . burmese)
348 (nbat . nabataean)
349 (newa . newa)
320 (nko\ . nko) 350 (nko\ . nko)
321 (ogam . ogham) 351 (ogam . ogham)
322 (olck . ol-chiki) 352 (olck . ol-chiki)
323 (ital . old_italic) 353 (ital . old_italic)
324 (xpeo . old_persian) 354 (xpeo . old_persian)
355 (narb . old-north-arabian)
356 (perm . old-permic)
325 (sarb . old-south-arabian) 357 (sarb . old-south-arabian)
326 (orkh . old-turkic) 358 (orkh . old-turkic)
327 (orya . oriya) 359 (orya . oriya)
328 (ory2 . oriya) 360 (ory2 . oriya)
361 (osge . osage)
329 (osma . osmanya) 362 (osma . osmanya)
363 (hmng . pahawh-hmong)
364 (palm . palmyrene)
365 (pauc . pau-cin-hau)
330 (phag . phags-pa) 366 (phag . phags-pa)
367 (phli . inscriptional-pahlavi)
331 (phnx . phoenician) 368 (phnx . phoenician)
369 (phlp . psalter-pahlavi)
370 (prti . inscriptional-parthian)
332 (rjng . rejang) 371 (rjng . rejang)
333 (runr . runic) 372 (runr . runic)
334 (samr . samaritan) 373 (samr . samaritan)
335 (saur . saurashtra) 374 (saur . saurashtra)
336 (shrd . sharada) 375 (shrd . sharada)
337 (shaw . shavian) 376 (shaw . shavian)
377 (sidd . siddham)
378 (sgnw . sutton-sign-writing)
338 (sinh . sinhala) 379 (sinh . sinhala)
339 (sora . sora-sompeng) 380 (sora . sora-sompeng)
340 (sund . sundanese) 381 (sund . sundanese)
@@ -349,14 +390,17 @@
349 (takr . takri) 390 (takr . takri)
350 (taml . tamil) 391 (taml . tamil)
351 (tml2 . tamil) 392 (tml2 . tamil)
393 (tang . tangut)
352 (telu . telugu) 394 (telu . telugu)
353 (tel2 . telugu) 395 (tel2 . telugu)
354 (thaa . thaana) 396 (thaa . thaana)
355 (thai . thai) 397 (thai . thai)
356 (tibt . tibetan) 398 (tibt . tibetan)
357 (tfng . tifinagh) 399 (tfng . tifinagh)
400 (tirh . tirhuta)
358 (ugar . ugaritic) 401 (ugar . ugaritic)
359 (vai\ . vai) 402 (vai\ . vai)
403 (wara . warang-citi)
360 (yi\ \ . yi))) 404 (yi\ \ . yi)))
361 405
362;; Set standard fontname specification of characters in the default 406;; Set standard fontname specification of characters in the default
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index dc9699099e8..dbf12247fc6 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -2939,7 +2939,10 @@ on encoding."
2939 (#x14400 . #x14646) 2939 (#x14400 . #x14646)
2940 ;; (#x14647 . #x167FF) unused 2940 ;; (#x14647 . #x167FF) unused
2941 (#x16800 . #x16F9F) 2941 (#x16800 . #x16F9F)
2942 ;; (#x16FA0 . #x1AFFF) unused 2942 (#x16FE0 . #x16FE0)
2943 ;; (#x17000 . #x187FF) Tangut Ideographs
2944 ;; (#x18800 . #x18AFF) Tangut Components
2945 ;; (#x18B00 . #x1AFFF) unused
2943 (#x1B000 . #x1B0FF) 2946 (#x1B000 . #x1B0FF)
2944 ;; (#x1B100 . #x1BBFF) unused 2947 ;; (#x1B100 . #x1BBFF) unused
2945 (#x1BC00 . #x1BCAF) 2948 (#x1BC00 . #x1BCAF)