From 46dde4953a9ebad69863075672bb79d9ced78e23 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Thu, 14 Jun 2007 03:59:02 +0000 Subject: [PATCH] * src/autofit/aflatin.c (af_latin_uniranges): Expand structure to cover all ranges which could possibly be handled by the aflatin module (since the default fallback for unknown ranges is now the afcjk module). It might be necessary to fine-tune this further by splitting off modules for Greek, Cyrillic, or other blocks. --- ChangeLog | 8 ++++++++ src/autofit/aflatin.c | 27 ++++++++++++++++++++++++--- 2 files changed, 32 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index c01e10915..128905b61 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-06-14 Werner Lemberg + + * src/autofit/aflatin.c (af_latin_uniranges): Expand structure to + cover all ranges which could possibly be handled by the aflatin + module (since the default fallback for unknown ranges is now the + afcjk module). It might be necessary to fine-tune this further by + splitting off modules for Greek, Cyrillic, or other blocks. + 2007-06-11 David Turner * src/autofit/aflatin.c (af_latin_hints_link_segments): Fix diff --git a/src/autofit/aflatin.c b/src/autofit/aflatin.c index 04b4f7b23..6b4e8c207 100644 --- a/src/autofit/aflatin.c +++ b/src/autofit/aflatin.c @@ -2116,11 +2116,32 @@ /*************************************************************************/ + /* XXX: this should probably fine tuned to differentiate better between */ + /* scripts... */ + static const AF_Script_UniRangeRec af_latin_uniranges[] = { - { 32, 127 }, /* XXX: TODO: Add new Unicode ranges here! */ - { 160, 255 }, - { 0, 0 } + { 0x0020, 0x007F }, /* Basic Latin (no control characters) */ + { 0x00A0, 0x00FF }, /* Latin-1 Supplement (no control characters) */ + { 0x0100, 0x017F }, /* Latin Extended-A */ + { 0x0180, 0x024F }, /* Latin Extended-B */ + { 0x0250, 0x02AF }, /* IPA Extensions */ + { 0x02B0, 0x02FF }, /* Spacing Modifier Letters */ + { 0x0300, 0x036F }, /* Combining Diacritical Marks */ + { 0x0370, 0x03FF }, /* Greek and Coptic */ + { 0x0400, 0x04FF }, /* Cyrillic */ + { 0x0500, 0x052F }, /* Cyrillic Supplement */ + { 0x1D00, 0x1D7F }, /* Phonetic Extensions */ + { 0x1D80, 0x1DBF }, /* Phonetic Extensions Supplement */ + { 0x1DC0, 0x1DFF }, /* Combining Diacritical Marks Supplement */ + { 0x1E00, 0x1EFF }, /* Latin Extended Additional */ + { 0x1F00, 0x1FFF }, /* Greek Extended */ + { 0x2000, 0x206F }, /* General Punctuation */ + { 0x2070, 0x209F }, /* Superscripts and Subscripts */ + { 0x20A0, 0x20CF }, /* Currency Symbols */ + { 0x2150, 0x218F }, /* Number Forms */ + { 0x2460, 0x24FF }, /* Enclosed Alphanumerics */ + { 0 , 0 } };