<div dir="ltr">Something very important, one need to consider is Unicode normalization.<div>That is, how to strip out the Niqud, and to substitute, say KAF WITH DAGESH (U+FB3B) with just a KAF (U+05DB) etc.</div><div><br></div>
<div>I guess that you&#39;re doing that already to some degree in hspell, so (in case you&#39;re translating to ISO-8859-8) you just have to be careful not to miss any letters in the conversion from Unicode.</div><div><br>
<div class="gmail_quote">On Mon, Mar 12, 2012 at 3:05 PM, Nadav Har&#39;El <span dir="ltr">&lt;<a href="mailto:nyh@math.technion.ac.il">nyh@math.technion.ac.il</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi, I have a question that I was sort of sad that I couldn&#39;t readily<br>
find the answer to...<br>
<br>
Let&#39;s say I want to create a C API (a C library), with functions which<br>
take strings as arguments. What am I supposed to use if I want these strings<br>
to be in any language? Obviously the answer is &quot;Unicode&quot;, but that<br>
doesn&#39;t really answer the question... How is Unicode used in C?<br>
<br>
As far as I can see, there are two major approaches to this problem.<br>
<br>
One approach, used in the Win32 C APIs on MS-Windows, and also in Java and<br>
other languages, is to use &quot;wide characters&quot; - characters of 16 or 32 bit<br>
size, and strings are an array of such characters.<br>
<br>
The second approach, proposed by Plan 9, is to use UTF-8.<br>
<br>
I personally like better the UTF-8 approach, because it naturally fits<br>
with C&#39;s &quot;char *&quot; type and with Linux&#39;s system calls (which take char*,<br>
not any sort of wide characters), but I&#39;m completely unsure that this is<br>
what users actually want. If not, then I wonder, why?<br>
<br>
Some background on this question: People have been complaining for years<br>
that Hspell, and in particular the libhspell functions, use ISO-8859-8<br>
instead of &quot;unicode&quot;. But if one wants to add unicode to libhspell, what<br>
should it be? UTF-8? Wide chars (UTF-16 or UTF-32)?<br>
<br>
Thanks,<br>
Nadav.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Nadav Har&#39;El                        |                    Monday, Mar 12 <a href="tel:2012" value="+9722012">2012</a>,<br>
<a href="mailto:nyh@math.technion.ac.il">nyh@math.technion.ac.il</a>             |-----------------------------------------<br>
Phone <a href="tel:%2B972-523-790466" value="+972523790466">+972-523-790466</a>, ICQ 13349191 |We could wipe out world hunger if we knew<br>
<a href="http://nadav.harel.org.il" target="_blank">http://nadav.harel.org.il</a>           |how to make AOL&#39;s Free CD&#39;s edible!<br>
<br>
_______________________________________________<br>
Linux-il mailing list<br>
<a href="mailto:Linux-il@cs.huji.ac.il">Linux-il@cs.huji.ac.il</a><br>
<a href="http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il" target="_blank">http://mailman.cs.huji.ac.il/mailman/listinfo/linux-il</a><br>
</font></span></blockquote></div><br></div></div>