summaryrefslogtreecommitdiff
path: root/lisp/international/fontset.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/international/fontset.el')
-rw-r--r--lisp/international/fontset.el97
1 files changed, 76 insertions, 21 deletions
diff --git a/lisp/international/fontset.el b/lisp/international/fontset.el
index 31ffaf157b6..8d34aa99c39 100644
--- a/lisp/international/fontset.el
+++ b/lisp/international/fontset.el
@@ -182,8 +182,21 @@
(canadian-aboriginal #x14C0)
(ogham #x168F)
(runic #x16A0)
+ (tagalog #x1700)
+ (hanunoo #x1720)
+ (buhid #x1740)
+ (tagbanwa #x1760)
(khmer #x1780)
(mongolian #x1826)
+ (limbu #x1901 #x1920 #x1936)
+ (buginese #x1A00 #x1A1E)
+ (balinese #x1B13 #x1B35 #x1B5E)
+ (sundanese #x1B8A #x1BAB #x1CC4)
+ (batak #x1BC2 #x1BE7 #x1BFF)
+ (lepcha #x1C00 #x1C24 #x1C40)
+ (tai-le #x1950)
+ (tai-lue #x1980)
+ (tai-tham #x1A20 #x1A55 #x1A61 #x1A80)
(symbol . [#x201C #x2200 #x2500])
(braille #x2800)
(ideographic-description #x2FF0)
@@ -193,9 +206,12 @@
(kanbun #x319D)
(han #x5B57)
(yi #xA288)
- (javanese #xA980)
+ (syloti-nagri #xA807 #xA823 #xA82C)
+ (rejang #xA930 #xA947 #xA95F)
+ (javanese #xA98F #xA9B4 #xA9CA)
(cham #xAA00)
(tai-viet #xAA80)
+ (meetei-mayek #xABC0 #xABE3 #xAAE0 #xAAF6)
(hangul #xAC00)
(linear-b #x10000)
(aegean-number #x10100)
@@ -223,22 +239,24 @@
(lydian #x10920)
(kharoshthi #x10A00)
(manichaean #x10AC0)
- (hanifi-rohingya #x10D00)
+ (hanifi-rohingya #x10D00 #x10D24 #x10D39)
(yezidi #x10E80)
(old-sogdian #x10F00)
(sogdian #x10F30)
(chorasmian #x10FB0)
(elymaic #x10FE0)
(old-uyghur #x10F70)
+ (brahmi #x11013 #x11045 #x11052 #x11065)
+ (kaithi #x1108D #x110B0 #x110BD)
(mahajani #x11150)
- (sinhala-archaic-number #x111E1)
+ (sharada #x11191 #x111B3 #x111CD)
(khojki #x11200)
(khudawadi #x112B0)
- (grantha #x11305)
+ (grantha #x11315 #x1133E #x11374)
(newa #x11400)
- (tirhuta #x11481)
- (siddham #x11580)
- (modi #x11600)
+ (tirhuta #x11481 #x1148F #x114D0)
+ (siddham #x1158E #x115AF #x115D4)
+ (modi #x1160E #x11630 #x11655)
(takri #x11680)
(dogra #x11800)
(warang-citi #x118A1)
@@ -251,9 +269,8 @@
(marchen #x11C72)
(masaram-gondi #x11D00)
(gunjala-gondi #x11D60)
- (makasar #x11EE0)
+ (makasar #x11EE0 #x11EF7)
(cuneiform #x12000)
- (cuneiform-numbers-and-punctuation #x12400)
(cypro-minoan #x12F90)
(egyptian #x13000)
(mro #x16A40)
@@ -262,7 +279,6 @@
(pahawh-hmong #x16B11)
(medefaidrin #x16E40)
(tangut #x17000)
- (tangut-components #x18800)
(khitan-small-script #x18B00)
(nushu #x1B170)
(duployan-shorthand #x1BC20)
@@ -285,7 +301,7 @@
(defvar otf-script-alist)
-;; The below was synchronized with the latest Oct 8, 2020 version of
+;; The below was synchronized with the latest Sep 12, 2021 version of
;; https://docs.microsoft.com/en-us/typography/opentype/spec/scripttags
(setq otf-script-alist
'((adlm . adlam)
@@ -318,6 +334,7 @@
(copt . coptic)
(xsux . cuneiform)
(cprt . cypriot)
+ (cpmn . cypro-minoan)
(cyrl . cyrillic)
(dsrt . deseret)
(deva . devanagari)
@@ -341,7 +358,7 @@
(gur2 . gurmukhi)
(hani . han)
(hang . hangul)
- (jamo . hangul)
+ (jamo . hangul) ; Not recommended; use 'hang' instead.
(rohg . hanifi-rohingya)
(hano . hanunoo)
(hatr . hatran)
@@ -364,8 +381,8 @@
(latn . latin)
(lepc . lepcha)
(limb . limbu)
- (lina . linear_a)
- (linb . linear_b)
+ (lina . linear-a)
+ (linb . linear-b)
(lisu . lisu)
(lyci . lycian)
(lydi . lydian)
@@ -391,6 +408,7 @@
(musc . musical-symbol)
(mym2 . burmese)
(mymr . burmese)
+ (nand . nandinagari)
(nbat . nabataean)
(newa . newa)
(nko\ . nko)
@@ -405,6 +423,7 @@
(sogo . old-sogdian)
(sarb . old-south-arabian)
(orkh . old-turkic)
+ (ougr . old-uyghur)
(orya . oriya)
(ory2 . oriya)
(osge . osage)
@@ -430,17 +449,18 @@
(sora . sora-sompeng)
(soyo . soyombo)
(sund . sundanese)
- (sylo . syloti_nagri)
+ (sylo . syloti-nagri)
(syrc . syriac)
(tglg . tagalog)
(tagb . tagbanwa)
- (tale . tai_le)
+ (tale . tai-le)
(talu . tai-lue)
(lana . tai-tham)
(tavt . tai-viet)
(takr . takri)
(taml . tamil)
(tml2 . tamil)
+ (tnsa . tangsa)
(tang . tangut)
(telu . telugu)
(tel2 . telugu)
@@ -449,7 +469,9 @@
(tibt . tibetan)
(tfng . tifinagh)
(tirh . tirhuta)
+ (toto . toto)
(ugar . ugaritic)
+ (vith . vithkuqi)
(vai\ . vai)
(wcho . wancho)
(wara . warang-citi)
@@ -738,11 +760,24 @@
cham
ogham
runic
+ tagalog
+ hanunoo
+ buhid
+ tagbanwa
+ limbu
+ buginese
+ balinese
+ sundanese
+ batak
+ lepcha
symbol
braille
yi
+ syloti-nagri
+ rejang
javanese
tai-viet
+ meetei-mayek
aegean-number
ancient-greek-number
ancient-symbol
@@ -760,15 +795,22 @@
cypriot-syllabary
phoenician
lydian
+ hanifi-rohingya
yezidi
kharoshthi
manichaean
chorasmian
elymaic
old-uyghur
+ brahmi
+ kaithi
+ sharada
+ grantha
+ tirhuta
+ siddham
+ modi
makasar
dives-akuru
- cuneiform-numbers-and-punctuation
cuneiform
egyptian
tangsa
@@ -783,6 +825,7 @@
counting-rod-numeral
toto
adlam
+ tai-tham
mahjong-tile
domino-tile
emoji))
@@ -816,11 +859,16 @@
(#x1D7EC #x1D7F5 mathematical-sans-serif-bold)
(#x1D7F6 #x1D7FF mathematical-monospace)))
(let ((slot (assq (nth 2 math-subgroup) script-representative-chars)))
+ ;; Add both ends of each subgroup to help filter out some
+ ;; incomplete fonts, e.g. those that cover MATHEMATICAL SCRIPT
+ ;; CAPITAL glyphs but not MATHEMATICAL SCRIPT SMALL ones.
(if slot
- (if (vectorp (cdr slot))
- (setcdr slot (vconcat (cdr slot) (vector (car math-subgroup))))
- (setcdr slot (vector (cadr slot) (car math-subgroup))))
- (setq slot (list (nth 2 math-subgroup) (car math-subgroup)))
+ (setcdr slot (append (list (nth 0 math-subgroup)
+ (nth 1 math-subgroup))
+ (cdr slot)))
+ (setq slot (list (nth 2 math-subgroup)
+ (nth 0 math-subgroup)
+ (nth 1 math-subgroup)))
(nconc script-representative-chars (list slot))))
(set-fontset-font
"fontset-default"
@@ -930,6 +978,13 @@
(set-fontset-font "fontset-default" 'emoji
'("Noto Color Emoji" . "iso10646-1") nil 'prepend)
+ ;; This supports the display of Tamil Supplement characters. As
+ ;; these characters are pretty simple and do not need reordering,
+ ;; ligatures, vowel signs, virama etc., neither tml2 nor other OTF
+ ;; features are needed here.
+ (set-fontset-font "fontset-default" '(#x11FC0 . #x11FFF)
+ '("Noto Sans Tamil Supplement" . "iso10646-1") nil 'append)
+
;; Append CJK fonts for characters other than han, kana, cjk-misc.
;; Append fonts for scripts whose name is also a charset name.
(let* ((data (build-default-fontset-data))