Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
f88cc4d6
Commit
f88cc4d6
authored
Feb 26, 2010
by
Kenichi Handa
Browse files
Fix Myanmar OTF support
parent
06aac901
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
47 additions
and
13 deletions
+47
-13
lisp/ChangeLog
lisp/ChangeLog
+11
-0
lisp/international/characters.el
lisp/international/characters.el
+2
-1
lisp/international/fontset.el
lisp/international/fontset.el
+3
-1
lisp/language/burmese.el
lisp/language/burmese.el
+20
-2
src/ChangeLog
src/ChangeLog
+2
-0
src/ftfont.c
src/ftfont.c
+9
-9
No files found.
lisp/ChangeLog
View file @
f88cc4d6
2010-02-26 Kenichi Handa <handa@m17n.org>
* language/burmese.el: Fix entries in composition-function-table.
(myanmar-composable-pattern): New variable.
* international/fontset.el (setup-default-fontset): Add an entry
for myanmar.
* international/characters.el (script-list): Add Myanmar
Extended-A.
2010-02-25 Alan Mackenzie <acm@muc.de>
* progmodes/cc-engine.el (c-clear-<-pair-props)
...
...
lisp/international/characters.el
View file @
f88cc4d6
...
...
@@ -1124,7 +1124,7 @@ Setup char-width-table appropriate for non-CJK language environment."
(
#x0E00
#x0E5F
thai
)
(
#x0E80
#x0EDF
lao
)
(
#x0F00
#x0FFF
tibetan
)
(
#x1000
#x10
5
F
myanmar
)
(
#x1000
#x10
9
F
myanmar
)
(
#x10A0
#x10FF
georgian
)
(
#x1100
#x11FF
hangul
)
(
#x1200
#x139F
ethiopic
)
...
...
@@ -1151,6 +1151,7 @@ Setup char-width-table appropriate for non-CJK language environment."
(
#x3400
#x9FAF
han
)
(
#xA000
#xA4CF
yi
)
(
#xAA00
#xAA5F
cham
)
(
#xAA60
#xAA7B
myanmar
)
(
#xAA80
#xAADF
tai-viet
)
(
#xAC00
#xD7AF
hangul
)
(
#xF900
#xFAFF
han
)
...
...
lisp/international/fontset.el
View file @
f88cc4d6
...
...
@@ -415,6 +415,9 @@
(
sinhala
,
(
font-spec
:registry
"iso10646-1"
:otf
'
(
sinh
nil
(
akhn
))))
(
malayalam
,
(
font-spec
:registry
"iso10646-1"
:otf
'
(
mlym
nil
(
akhn
))))
(
myanmar
,
(
font-spec
:registry
"iso10646-1"
:otf
'
(
mymr
))
,
(
font-spec
:registry
"iso10646-1"
:script
'myanmar
))
(
lao
,
(
font-spec
:registry
"iso10646-1"
:otf
'
(
lao\
nil
nil
(
mark
)))
,
(
font-spec
:registry
"iso10646-1"
:script
'lao
)
(
nil
.
"MuleLao-1"
))
...
...
@@ -548,7 +551,6 @@
armenian
syriac
thaana
myanmar
georgian
cherokee
canadian-aboriginal
...
...
lisp/language/burmese.el
View file @
f88cc4d6
...
...
@@ -36,7 +36,25 @@
(
sample-text
.
"Burmese (မ္ရန္မာ) မင္ဂလာပာ"
)
(
documentation
.
t
)))
(
set-char-table-range
composition-function-table
'
(
#x1000
.
#x107F
)
'
(
[
"[\x1000-\x107F\x200C\x200D]+"
0
font-shape-gstring]
))
(
defvar
myanmar-composable-pattern
(
let
((
table
'
((
"K"
.
"[\u1004\u105A]\u103A\u1039"
)
; KINZI sequence
(
"C"
.
"[\u1000-\u102A\u103F\u1041-\u1049\u104E\u105A-\u105D\u1061\u1065-\u1066\u106E\u1071\u1075\u1081\u108E\uAA60-\uAA6F\uAA71-\uAA76]"
)
; consonant and vowel letter
(
"V"
.
"\u1039"
)
; VIRAMA
(
"A"
.
"\u103A"
)
; ASAT
(
"S"
.
"[\u1000-\u1019\u101C\u101E\u1020\u1021\u105A]"
)
; subscript
(
"M"
.
"[\u103B-\u103E\105E-\1060]"
)
; medial
(
"v"
.
"[\u102B-\u103A\u103C-\u103E\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A\u109C\uAA70]"
)))
; vowel sign, etc.
(
regexp
"\\(K\\)?C\\(VS\\)?\\(VS\\)?A?M*v*"
))
(
let
((
case-fold-search
nil
))
(
dolist
(
elt
table
)
(
setq
regexp
(
replace-regexp-in-string
(
car
elt
)
(
cdr
elt
)
regexp
t
t
))))
regexp
))
(
let
((
elt
(
list
(
vector
myanmar-composable-pattern
0
'font-shape-gstring
)
(
vector
"."
0
'font-shape-gstring
))))
(
set-char-table-range
composition-function-table
'
(
#x1000
.
#x107F
)
elt
)
(
set-char-table-range
composition-function-table
'
(
#xAA60
.
#xAA7B
)
elt
))
;; arch-tag: 8ba5f4cd-ef89-4008-b784-397edd0cb32e
src/ChangeLog
View file @
f88cc4d6
2010-02-26 Kenichi Handa <handa@m17n.org>
* ftfont.c (ftfont_get_open_type_spec): Fix parsing of otf_spec.
* xdisp.c (reseat_to_string): Fix previous change.
2010-02-26 David Reitter <david.reitter@gmail.com>
...
...
src/ftfont.c
View file @
f88cc4d6
...
...
@@ -663,19 +663,19 @@ ftfont_get_open_type_spec (Lisp_Object otf_spec)
else
spec->script_tag = 0x44464C54; /* "DFLT" */
otf_spec = XCDR (otf_spec);
val = XCAR (otf_spec);
if (! NILP (val))
OTF_SYM_TAG (val, spec->langsys_tag);
else
spec->langsys_tag = 0;
spec->langsys_tag = 0;
if (! NILP (otf_spec))
{
val = XCAR (otf_spec);
if (! NILP (val))
OTF_SYM_TAG (val, spec->langsys_tag);
otf_spec = XCDR (otf_spec);
}
spec->nfeatures[0] = spec->nfeatures[1] = 0;
for (i = 0; i < 2
; i++
)
for (i = 0; i < 2
&& ! NILP (otf_spec); i++, otf_spec = XCDR (otf_spec)
)
{
Lisp_Object len;
otf_spec = XCDR (otf_spec);
if (NILP (otf_spec))
break;
val = XCAR (otf_spec);
if (NILP (val))
continue;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment