Mercurial > emacs
diff mac/src/macterm.c @ 39107:e4461ba10180
2001-09-04 Andrew Choi <akochoi@cse.cuhk.edu.hk>
* src/macterm.c (mac_to_x_fontname): Return name with
jisx0201.1976-0 encoding if a script code of -smJapanese is specified.
(x_font_name_to_mac_font_name): Also recognize the jisx0201.1976-0
encoding.
(init_font_name_table): Use a script code of -smJapanese instead
of smRoman for the second entry of a Japanese font.
(XLoadQueryFont): Recognize a font as having the smRoman script
code if its encoding is jisx0201.1976-0.
author | Andrew Choi <akochoi@shaw.ca> |
---|---|
date | Tue, 04 Sep 2001 06:49:24 +0000 |
parents | 6addcec799eb |
children | 0f5c2cf91c81 |
line wrap: on
line diff
--- a/mac/src/macterm.c Tue Sep 04 06:19:12 2001 +0000 +++ b/mac/src/macterm.c Tue Sep 04 06:49:24 2001 +0000 @@ -10287,6 +10287,15 @@ case smJapanese: strcpy(cs, "jisx0208.1983-sjis"); break; + case -smJapanese: + /* Each Apple Japanese font is entered into the font table + twice: once as a jisx0208.1983-sjis font and once as a + jisx0201.1976-0 font. The latter can be used to display + the ascii charset and katakana-jisx0201 charset. A + negative script code signals that the name of this latter + font is being built. */ + strcpy(cs, "jisx0201.1976-0"); + break; case smKorean: strcpy(cs, "ksc5601.1989-0"); break; @@ -10330,6 +10339,7 @@ if (strcmp (cs, "big5-0") == 0 || strcmp (cs, "gb2312.1980-0") == 0 || strcmp (cs, "jisx0208.1983-sjis") == 0 + || strcmp (cs, "jisx0201.1976-0") == 0 || strcmp (cs, "ksc5601.1989-0") == 0 || strcmp (cs, "mac-roman") == 0) strcpy(mf, family); else @@ -10409,16 +10419,15 @@ assc_entry->fontSize, assc_entry->fontStyle, scriptcode); - /* Both jisx0208.1983-sjis and jisx0201.1976-sjis - parts are contained in Apple Japanese (SJIS) - font. */ + /* Both jisx0208.1983-sjis and jisx0201.1976-0 parts + are contained in Apple Japanese (SJIS) font. */ if (smJapanese == scriptcode) { font_name_table[font_name_count++] = mac_to_x_fontname (name, assc_entry->fontSize, assc_entry->fontStyle, - smRoman); + -smJapanese); } } } @@ -10676,16 +10685,16 @@ font->mac_scriptcode = FontToScript (fontnum); /* Apple Japanese (SJIS) font is listed as both - "*-jisx0208.1983-sjis" (Japanese script) and "*-mac-roman" (Roman - script) in init_font_name_table(). The latter should be treated - as a one-byte font. */ + "*-jisx0208.1983-sjis" (Japanese script) and "*-jisx0201.1976-0" + (Roman script) in init_font_name_table(). The latter should be + treated as a one-byte font. */ { char cs[32]; if (sscanf (name, "-%*[^-]-%*[^-]-%*[^-]-%*c-%*[^-]--%*[^-]-%*[^-]-%*[^-]-%*[^-]-%*c-%*[^-]-%31s", cs) == 1 - && 0 == strcmp (cs, "mac-roman")) + && 0 == strcmp (cs, "jisx0201.1976-0")) font->mac_scriptcode = smRoman; }