2009-06-21 12 views
7

Creo que la pregunta es bastante simple, ¿necesito todo el resto de las cosas en Unicode después del plano básico? ¿Qué tipo de cosas está incluido y es realmente necesario? (y con qué fines?)¿Necesito un avión suplementario?

Gracias.

Respuesta

10

Si tiene la intención de vender algo en China, entonces el estándar GB 18030 es obligatorio y requiere caracteres más allá de BMP (plano multilingüe básico). El estándar se aplica, y para vender allí debe aprobar una certificación GB 18030.

También existen estándares nacionales en Japón y Hong Kong que requieren caracteres más allá de BMP. Incluso si estos estándares no se aplican como el chino, apoyarlos podría darle cierta ventaja.

Así que la respuesta simple sería: necesitas algo de eso.

=== 2016 ===

Eso fue hace 7 años. Ahora todo el mundo habla de emojis. Bueno, la mayoría de los emojis están más allá de BMP :-)

+0

Más allá del problema de certificación, el conjunto de caracteres Unihan IICore, que contiene todos los caracteres Han (chinos, japoneses, coreanos) del uso moderno actual, contiene 62 caracteres en el plano ideográfico complementario (SIP) –

2

Ver el complete list of character charts.

Los caracteres suplementarios actualmente contienen scripts antiguos. A menos que tenga una aplicación que debe manejar scripts antiguos como Kharoshthi, Old Persion y Cuneiform, entonces probablemente no.

Supongo que solo tendrá que lidiar con este problema si encuentra una implementación UTF-8 o UTF-16 que no está completa. Algunas implementaciones de UTF-8 no admiten caracteres de 4 bytes, que es el plano suplementario: los caracteres superiores a U + 10000. MySQL viene a la mente.

+0

Actualmente estoy usando MySQL y esa es la razón por la que estoy preguntando. Me preguntaba si usar tablas Binary o UTF-8. Gracias. – Tower

7

Depende de si controla sus datos o no. Si está utilizando datos Unicode de alguien que no sea usted, generalmente debe asumir que puede incluir caracteres suplementarios, lo que a su vez significa que necesita lidiar con caracteres UTF-8 de 4 bytes, UTF-16 subrogado, y así sucesivamente.

+1

¡Gran respuesta!Muy pocas personas simplemente no asimilan este principio básico sobre la procedencia de los datos. – hippietrail

2

Debe intentar, si es posible, admitir todos los Unicode incluyendo planos suplementarios. Ahora hay idiomas vivos en los planos suplementarios, como Miao. Se agregarán otros idiomas vivos en el futuro y algunos idiomas actualmente necesitan el área de uso privado adicional. Luego está también lo que dijo Mihai Nita en su answer.

MySQL, comenzando con 5.5, también supports planos suplementarios.

Es mejor tomarse un poco de tiempo ahora para soportar totalmente Unicode para que en el futuro no tenga problemas si realmente lo necesita. Y no sabe quién usará su software y qué scripts usará en el futuro. Ahora la mayoría de los motores de renderizado, juegos de herramientas GUI, navegadores, sistemas operativos, etc., lo admitirán sin problemas.

Aunque esta pregunta fue hecha hace varios años, me encontré con esto en una búsqueda, y las cosas han cambiado desde entonces. Actualmente estoy lidiando con problemas donde los programadores o bien asumieron que no habría necesidad de soporte de avión adicional, o que no se probaron.

Cuestiones relacionadas