<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta content="text/html;charset=UTF-8" http-equiv="Content-Type"></head><body ><div style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10pt;"><div>Hi Christoph<br></div><div><br></div><div><br></div><div>I have looked at and added the class to my project notes.<br></div><div><br></div><div>I noticed the Class comment does not provide ease of use of viewing the characters in a ByteString the way that Levente  demonstrated with the key in the association: (16r002FF0 asCharacter to: 16r002FFF asCharacter) -> 'Ideographic Description Characters'<br></div><div><br></div><div>Its really handy for a quick way to see if the characters display.<br></div><div><br></div><div>When you write "does not yet support UTF-16 characters, I presume you mean stuff like the isUppercaseCode method:<br></div><div><br></div><blockquote style="border: 1px solid rgb(204, 204, 204); padding: 7px; background-color: rgb(245, 245, 245);"><div><div>isUppercaseCode: anInteger<br></div><div>"Answer whether anInteger is the code of an uppercase letter."<br></div><div><br></div><div>^ 8r101 <= anInteger and: [anInteger <= 8r132].<br></div><div><br></div></div></blockquote><br>anyway, thanks for pointing out the class to me. It may come in handy.<br><br>cheers.<br><div style="border-top: 1px solid rgb(204, 204, 204); height: 0px; margin-top: 10px; margin-bottom: 10px; line-height: 0px;" class="zmail_extra_hr"><br></div><div style="" data-zbluepencil-ignore="true" class="zmail_extra"><br><div id="Zm-_Id_-Sgn1">---- On Mon, 01 Feb 2021 09:36:35 -0500 <b>Thiede, Christoph <<a target="_blank" href="mailto:Christoph.Thiede@student.hpi.uni-potsdam.de">Christoph.Thiede@student.hpi.uni-potsdam.de</a>></b> wrote ----<br></div><br><blockquote style="margin: 0px;"><div class=" zm_-1483059135416987821_parse_-4184903807774461557"><style style="display: none;"></style><div dir="ltr" style="font-size: 12.0pt;color: rgb(0,0,0);font-family: Calibri, Helvetica, sans-serif;"><p>Hi Timothy,<br></p><p><br></p><p>do you also know Unicode class and, in particular, its class variables and its testing selectors? Not sure whether this is on the same abstraction level as your work - just wanted to add this pointer.<br></p><p><br></p><p>Also note that Unicode class's character classification does not yet support UTF-16 characters - I have added this to my todo-list some disgracefully long time ago [1] and not yet managed to return back to this issue (so sorry, Levente!).<br></p><p><br></p><p>Best,<br></p><p>Christoph<br></p><p><br></p><p>[1] <a class="x_-228849029OWAAutoLink" href="http://forum.world.st/Unicode-td5113495.html" target="_blank">http://forum.world.st/Unicode-td5113495.html</a><br></p><br><div><div style="font-size: 12.0pt;color: rgb(0,0,0);font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;" dir="ltr"><div style="font-family: Calibri, Arial, Helvetica, sans-serif;margin: 0;"><div><div class="x_-228849029_rp_T4"><div style="font-family: wf_segoe-ui_normal, "Segoe UI", "Segoe WP", Tahoma, Arial, sans-serif, serif, EmojiFont;" class="x_-228849029_rp_U4 x_-228849029ms-font-weight-regular x_-228849029ms-font-color-neutralDark x_-228849029rpHighlightAllClass x_-228849029rpHighlightBodyClass"><div dir="ltr"><div><span class="font" style="font-family:Calibri,Helvetica,sans-serif,EmojiFont,Apple Color Emoji,Segoe UI Emoji,NotoColorEmoji,Segoe UI Symbol,Android Emoji,EmojiSymbols"><div><div style="margin: 0.0px;"><span class="font" style="font-family:Calibri, Arial, Helvetica, sans-serif, serif, EmojiFont"><div><span class="size" style="font-size:16px"><span class="size" style="font-size:12pt"><a href="http://www.hpi.de/" target="_blank"><span class="size" style="font-size:13px"><span><span class="colour" style="color:#757B80"></span></span></span></a></span></span><br></div></span></div></div></span></div></div></div></div></div><div><span class="size" style="font-size:13px"><span class="colour" style="color:#808080"></span></span><br></div></div></div></div></div><hr style="display: inline-block;width: 98.0%;"><div dir="ltr"><span class="font" style="font-family:Calibri, sans-serif"><span class="colour" style="color:#000000"><b>Von:</b> Squeak-dev <<a href="mailto:squeak-dev-bounces@lists.squeakfoundation.org" target="_blank">squeak-dev-bounces@lists.squeakfoundation.org</a>> im Auftrag von gettimothy via Squeak-dev <<a href="mailto:squeak-dev@lists.squeakfoundation.org" target="_blank">squeak-dev@lists.squeakfoundation.org</a>><br> <b>Gesendet:</b> Montag, 1. Februar 2021 15:30:29<br> <b>An:</b> <a href="mailto:eric.gade@gmail.com" target="_blank">eric.gade@gmail.com</a><br> <b>Cc:</b> <a href="mailto:squeak-dev@lists.squeakfoundation.org" target="_blank">squeak-dev@lists.squeakfoundation.org</a><br> <b>Betreff:</b> Re: [squeak-dev] Unicode Ranges you might want to copy</span></span> <div> <br></div></div><div><div style="font-size: 10.0pt;font-family: Verdana, Arial, Helvetica, sans-serif;">Hi Eric<br> <br> <br> Thanks for the heads up!<br> <br> Doing some lite browsing on the matter, I found these resources....<br> <br> <a href="https://unicode-table.com/en/#control-character" target="_blank">https://unicode-table.com/en/#control-character</a><br>  <a href="https://css-tricks.com/almanac/properties/u/unicode-range/" target="_blank">https://css-tricks.com/almanac/properties/u/unicode-range/</a><br>  <a href="http://www.alanwood.net/unicode/alphabetic_presentation_forms.html" target="_blank">http://www.alanwood.net/unicode/alphabetic_presentation_forms.html</a><br> <br> <br> <br> That last one  looks very useful  and I will ve working through it.<br> <br> The middle one claims that fonts can be loaded dynamically when needed.<br> <br> An intersting thing is that the alan wood site displays the $ sign under the currency range, but the jgraphix  website does not!<br> <br> <br> It is also somewhat apparent that  "like" ranges are not contigous.<br> <br> Thanjs again for your gelp!<br> <br> Cheers,   <br> <div><br></div><br><div><br></div><div><br>---- On Mon, 01 Feb 2021 08:57:32 -0500<b><a href="mailto:eric.gade@gmail.com" target="_blank">eric.gade@gmail.com</a> </b>wrote ----<br> <br> <blockquote style="border-left: 1.0px solid rgb(204,204,204);padding-left: 6.0px;margin-left: 5.0px;"><div><div dir="ltr"><div>Hi Timothy,<br></div><div><br></div><div>I spent several (fruitless) days last year trying to get cuneiform fonts to render properly in Squeak (see <a href="https://www.hethport.uni-wuerzburg.de/cuneifont/" target="_blank">here</a> for examples of the fonts). There does seem to be an issue with rendering glyphs above a certain code point from what I recall. I am definitely interested in your work and what
 you end up finding out.<br></div></div><br><div class="x_369903778gmail_quote"><div class="x_369903778gmail_attr" dir="ltr">On Sun, Jan 31, 2021 at 7:20 AM gettimothy via Squeak-dev <<a href="mailto:squeak-dev@lists.squeakfoundation.org" target="_blank">squeak-dev@lists.squeakfoundation.org</a>> wrote:<br></div><blockquote style="margin: 0.0px 0.0px 0.0px 0.8ex;border-left: 1.0px solid rgb(204,204,204);padding-left: 1.0ex;" class="x_369903778gmail_quote"><u></u><div><div style="font-family: Verdana, Arial, Helvetica, sans-serif;font-size: 10.0pt;"><div>Hi Folks,<br></div><div><br></div><div>You might find the below handy.<br></div><div><br></div><div>Fwiw, I have coded the UnicodeRangeBrowser  SeasideApp to display all the below (it times out before all display, I will be doing refactor and more development).<br></div><div><br></div><div>I am also coding a utility class to provide information such as below in a variety of ways.<br></div><div><br></div><div>fwiw, here are my current todo notes for this font information.<br></div><div><br></div><div><blockquote style="border: 1.0px solid rgb(204,204,204);padding: 7.0px;background-color: rgb(245,245,245);"><div>unifont<br></div><div><br></div><div>provide link to the unicode spec.<br></div><div>provide browser fonts list.<br></div><div>provide squeak fonts list.<br></div><div>provide phare fonts list ^self squeak fonts list:<br></div><div>what are Variant Selectors ?<br></div><div><br></div><div>show gaps in the ranges.<br></div><div><br></div><div>provide a link(s) to required fonts that will make a range display.<br></div><div>displays on: browser list, squeak, emacs, xterm...<br></div><div>status bar...broken, partial, full.<br></div><div>use cases for fonts<br></div><div>pairs with xyz   example superscripts and subscripts<br></div></blockquote><br></div><div>The goal is to show what works and to find/test fonts that will support stuff.<br></div><div>I am modelling the Seaside app on <a href="https://jrgraphix.net/research/unicode_blocks.php" target="_blank">https://jrgraphix.net/research/unicode_blocks.php</a>  <br></div><div>But...for each unicode range, I intend to display smalltalk specific helpers on what/where to get fonts for both the browser side and the image side.<br></div><div><br></div><div>--------------snip -------------------<br></div><div><br></div><div>(16r000020 asCharacter to: 16r00007F asCharacter) -> 'Basic Latin'<br></div><div>(16r0000A0 asCharacter to: 16r0000FF asCharacter) -> 'Latin-1 Supplement'<br></div><div>(16r000100 asCharacter to: 16r00017F asCharacter) -> 'Latin Extended-A'<br></div><div>(16r000180 asCharacter to: 16r00024F asCharacter) -> 'Latin Extended-B'<br></div><div>(16r000250 asCharacter to: 16r0002AF asCharacter) -> 'IPA Extensions'<br></div><div>(16r0002B0 asCharacter to: 16r0002FF asCharacter) -> 'Spacing Modifier Letters'<br></div><div>(16r000300 asCharacter to: 16r00036F asCharacter) -> 'Combining Diacritical Marks'<br></div><div>(16r000370 asCharacter to: 16r0003FF asCharacter) -> 'Greek and Coptic'<br></div><div>(16r000400 asCharacter to: 16r0004FF asCharacter) -> 'Cyrillic'<br></div><div>(16r000500 asCharacter to: 16r00052F asCharacter) -> 'Cyrillic Supplementary'<br></div><div>(16r000530 asCharacter to: 16r00058F asCharacter) -> 'Armenian'<br></div><div>(16r000590 asCharacter to: 16r0005FF asCharacter) -> 'Hebrew'<br></div><div>(16r000600 asCharacter to: 16r0006FF asCharacter) -> 'Arabic'<br></div><div>(16r000700 asCharacter to: 16r00074F asCharacter) -> 'Syriac'<br></div><div>(16r000780 asCharacter to: 16r0007BF asCharacter) -> 'Thaana'<br></div><div>(16r000900 asCharacter to: 16r00097F asCharacter) -> 'Devanagari'<br></div><div>(16r000980 asCharacter to: 16r0009FF asCharacter) -> 'Bengali'<br></div><div>(16r000A00 asCharacter to: 16r000A7F asCharacter) -> 'Gurmukhi'<br></div><div>(16r000A80 asCharacter to: 16r000AFF asCharacter) -> 'Gujarati'<br></div><div>(16r000B00 asCharacter to: 16r000B7F asCharacter) -> 'Oriya'<br></div><div>(16r000B80 asCharacter to: 16r000BFF asCharacter) -> 'Tamil'<br></div><div>(16r000C00 asCharacter to: 16r000C7F asCharacter) -> 'Telugu'<br></div><div>(16r000C80 asCharacter to: 16r000CFF asCharacter) -> 'Kannada'<br></div><div>(16r000D00 asCharacter to: 16r000D7F asCharacter) -> 'Malayalam'<br></div><div>(16r000D80 asCharacter to: 16r000DFF asCharacter) -> 'Sinhala'<br></div><div>(16r000E00 asCharacter to: 16r000E7F asCharacter) -> 'Thai'<br></div><div>(16r000E80 asCharacter to: 16r000EFF asCharacter) -> 'Lao'<br></div><div>(16r000F00 asCharacter to: 16r000FFF asCharacter) -> 'Tibetan'<br></div><div>(16r001000 asCharacter to: 16r00109F asCharacter) -> 'Myanmar'<br></div><div>(16r0010A0 asCharacter to: 16r0010FF asCharacter) -> 'Georgian'<br></div><div>(16r001100 asCharacter to: 16r0011FF asCharacter) -> 'Hangul Jamo'<br></div><div>(16r001200 asCharacter to: 16r00137F asCharacter) -> 'Ethiopic'<br></div><div>(16r0013A0 asCharacter to: 16r0013FF asCharacter) -> 'Cherokee'<br></div><div>(16r001400 asCharacter to: 16r00167F asCharacter) -> 'Unified Canadian Aboriginal Syllabics'<br></div><div>(16r001680 asCharacter to: 16r00169F asCharacter) -> 'Ogham'<br></div><div>(16r0016A0 asCharacter to: 16r0016FF asCharacter) -> 'Runic'<br></div><div>(16r001700 asCharacter to: 16r00171F asCharacter) -> 'Tagalog'<br></div><div>(16r001720 asCharacter to: 16r00173F asCharacter) -> 'Hanunoo'<br></div><div>(16r001740 asCharacter to: 16r00175F asCharacter) -> 'Buhid'<br></div><div>(16r001760 asCharacter to: 16r00177F asCharacter) -> 'Tagbanwa'<br></div><div>(16r001780 asCharacter to: 16r0017FF asCharacter) -> 'Khmer'<br></div><div>(16r001800 asCharacter to: 16r0018AF asCharacter) -> 'Mongolian'<br></div><div>(16r001900 asCharacter to: 16r00194F asCharacter) -> 'Limbu'<br></div><div>(16r001950 asCharacter to: 16r00197F asCharacter) -> 'Tai Le'<br></div><div>(16r0019E0 asCharacter to: 16r0019FF asCharacter) -> 'Khmer Symbols'<br></div><div>(16r001D00 asCharacter to: 16r001D7F asCharacter) -> 'Phonetic Extensions'<br></div><div>(16r001E00 asCharacter to: 16r001EFF asCharacter) -> 'Latin Extended Additional'<br></div><div>(16r001F00 asCharacter to: 16r001FFF asCharacter) -> 'Greek Extended'<br></div><div>(16r002000 asCharacter to: 16r00206F asCharacter) -> 'General Punctuation'<br></div><div>(16r002070 asCharacter to: 16r00209F asCharacter) -> 'Superscripts and Subscripts'<br></div><div>(16r0020A0 asCharacter to: 16r0020CF asCharacter) -> 'Currency Symbols'<br></div><div>(16r0020D0 asCharacter to: 16r0020FF asCharacter) -> 'Combining Diacritical Marks for Symbols'<br></div><div>(16r002100 asCharacter to: 16r00214F asCharacter) -> 'Letterlike Symbols'<br></div><div>(16r002150 asCharacter to: 16r00218F asCharacter) -> 'Number Forms'<br></div><div>(16r002190 asCharacter to: 16r0021FF asCharacter) -> 'Arrows'<br></div><div>(16r002200 asCharacter to: 16r0022FF asCharacter) -> 'Mathematical Operators'<br></div><div>(16r002300 asCharacter to: 16r0023FF asCharacter) -> 'Miscellaneous Technical'<br></div><div>(16r002400 asCharacter to: 16r00243F asCharacter) -> 'Control Pictures'<br></div><div>(16r002440 asCharacter to: 16r00245F asCharacter) -> 'Optical Character Recognition'<br></div><div>(16r002460 asCharacter to: 16r0024FF asCharacter) -> 'Enclosed Alphanumerics'<br></div><div>(16r002500 asCharacter to: 16r00257F asCharacter) -> 'Box Drawing'<br></div><div>(16r002580 asCharacter to: 16r00259F asCharacter) -> 'Block Elements'<br></div><div>(16r0025A0 asCharacter to: 16r0025FF asCharacter) -> 'Geometric Shapes'<br></div><div>(16r002600 asCharacter to: 16r0026FF asCharacter) -> 'Miscellaneous Symbols'<br></div><div>(16r002700 asCharacter to: 16r0027BF asCharacter) -> 'Dingbats'<br></div><div>(16r0027C0 asCharacter to: 16r0027EF asCharacter) -> 'Miscellaneous Mathematical Symbols-A'<br></div><div>(16r0027F0 asCharacter to: 16r0027FF asCharacter) -> 'Supplemental Arrows-A'<br></div><div>(16r002800 asCharacter to: 16r0028FF asCharacter) -> 'Braille Patterns'<br></div><div>(16r002900 asCharacter to: 16r00297F asCharacter) -> 'Supplemental Arrows-B'<br></div><div>(16r002980 asCharacter to: 16r0029FF asCharacter) -> 'Miscellaneous Mathematical Symbols-B'<br></div><div>(16r002A00 asCharacter to: 16r002AFF asCharacter) -> 'Supplemental Mathematical Operators'<br></div><div>(16r002B00 asCharacter to: 16r002BFF asCharacter) -> 'Miscellaneous Symbols and Arrows'<br></div><div>(16r002E80 asCharacter to: 16r002EFF asCharacter) -> 'CJK Radicals Supplement'<br></div><div>(16r002F00 asCharacter to: 16r002FDF asCharacter) -> 'Kangxi Radicals'<br></div><div>(16r002FF0 asCharacter to: 16r002FFF asCharacter) -> 'Ideographic Description Characters'<br></div><div>(16r003000 asCharacter to: 16r00303F asCharacter) -> 'CJK Symbols and Punctuation'<br></div><div>(16r003040 asCharacter to: 16r00309F asCharacter) -> 'Hiragana'<br></div><div>(16r0030A0 asCharacter to: 16r0030FF asCharacter) -> 'Katakana'<br></div><div>(16r003100 asCharacter to: 16r00312F asCharacter) -> 'Bopomofo'<br></div><div>(16r003130 asCharacter to: 16r00318F asCharacter) -> 'Hangul Compatibility Jamo'<br></div><div>(16r003190 asCharacter to: 16r00319F asCharacter) -> 'Kanbun'<br></div><div>(16r0031A0 asCharacter to: 16r0031BF asCharacter) -> 'Bopomofo Extended'<br></div><div>(16r0031F0 asCharacter to: 16r0031FF asCharacter) -> 'Katakana Phonetic Extensions'<br></div><div>(16r003200 asCharacter to: 16r0032FF asCharacter) -> 'Enclosed CJK Letters and Months'<br></div><div>(16r003300 asCharacter to: 16r0033FF asCharacter) -> 'CJK Compatibility'<br></div><div>(16r003400 asCharacter to: 16r004DBF asCharacter) -> 'CJK Unified Ideographs Extension A'<br></div><div>(16r004DC0 asCharacter to: 16r004DFF asCharacter) -> 'Yijing Hexagram Symbols'<br></div><div>(16r004E00 asCharacter to: 16r009FFF asCharacter) -> 'CJK Unified Ideographs'<br></div><div>(16r00A000 asCharacter to: 16r00A48F asCharacter) -> 'Yi Syllables'<br></div><div>(16r00A490 asCharacter to: 16r00A4CF asCharacter) -> 'Yi Radicals'<br></div><div>(16r00AC00 asCharacter to: 16r00D7AF asCharacter) -> 'Hangul Syllables'<br></div><div>(16r00D800 asCharacter to: 16r00DB7F asCharacter) -> 'High Surrogates'<br></div><div>(16r00DB80 asCharacter to: 16r00DBFF asCharacter) -> 'High Private Use Surrogates'<br></div><div>(16r00DC00 asCharacter to: 16r00DFFF asCharacter) -> 'Low Surrogates'<br></div><div>(16r00E000 asCharacter to: 16r00F8FF asCharacter) -> 'Private Use Area'<br></div><div>(16r00F900 asCharacter to: 16r00FAFF asCharacter) -> 'CJK Compatibility Ideographs'<br></div><div>(16r00FB00 asCharacter to: 16r00FB4F asCharacter) -> 'Alphabetic Presentation Forms'<br></div><div>(16r00FB50 asCharacter to: 16r00FDFF asCharacter) -> 'Arabic Presentation Forms-A'<br></div><div>(16r00FE00 asCharacter to: 16r00FE0F asCharacter) -> 'Variation Selectors'<br></div><div>(16r00FE20 asCharacter to: 16r00FE2F asCharacter) -> 'Combining Half Marks'<br></div><div>(16r00FE30 asCharacter to: 16r00FE4F asCharacter) -> 'CJK Compatibility Forms'<br></div><div>(16r00FE50 asCharacter to: 16r00FE6F asCharacter) -> 'Small Form Variants'<br></div><div>(16r00FE70 asCharacter to: 16r00FEFF asCharacter) -> 'Arabic Presentation Forms-B'<br></div><div>(16r00FF00 asCharacter to: 16r00FFEF asCharacter) -> 'Halfwidth and Fullwidth Forms'<br></div><div>(16r00FFF0 asCharacter to: 16r00FFFF asCharacter) -> 'Specials'<br></div><div>(16r010000 asCharacter to: 16r01007F asCharacter) -> 'Linear B Syllabary'<br></div><div>(16r010080 asCharacter to: 16r0100FF asCharacter) -> 'Linear B Ideograms'<br></div><div>(16r010100 asCharacter to: 16r01013F asCharacter) -> 'Aegean Numbers'<br></div><div>(16r010300 asCharacter to: 16r01032F asCharacter) -> 'Old Italic'<br></div><div>(16r010330 asCharacter to: 16r01034F asCharacter) -> 'Gothic'<br></div><div>(16r010380 asCharacter to: 16r01039F asCharacter) -> 'Ugaritic'<br></div><div>(16r010400 asCharacter to: 16r01044F asCharacter) -> 'Deseret'<br></div><div>(16r010450 asCharacter to: 16r01047F asCharacter) -> 'Shavian'<br></div><div>(16r010480 asCharacter to: 16r0104AF asCharacter) -> 'Osmanya'<br></div><div>(16r010800 asCharacter to: 16r01083F asCharacter) -> 'Cypriot Syllabary'<br></div><div>(16r01D000 asCharacter to: 16r01D0FF asCharacter) -> 'Byzantine Musical Symbols'<br></div><div>(16r01D100 asCharacter to: 16r01D1FF asCharacter) -> 'Musical Symbols'<br></div><div>(16r01D300 asCharacter to: 16r01D35F asCharacter) -> 'Tai Xuan Jing Symbols'<br></div><div>(16r01D400 asCharacter to: 16r01D7FF asCharacter) -> 'Mathematical Alphanumeric Symbols'<br></div><div>(16r020000 asCharacter to: 16r02A6DF asCharacter) -> 'CJK Unified Ideographs Extension B'<br></div><div>(16r02F800 asCharacter to: 16r02FA1F asCharacter) -> 'CJK Compatibility Ideographs Supplement'<br></div><div>(16r0E0000 asCharacter to: 16r0E007F asCharacter) -> 'Tags'<br></div><div><br></div></div><br></div><br></blockquote></div><br><br>--<br> <div class="x_369903778gmail_signature" dir="ltr"><div dir="ltr"><div>Eric<br></div></div></div></div></blockquote></div></div><br></div></div></blockquote></div><div><br></div></div><br></body></html>