Design: Normalización Unicode

Creado en 30 ene. 2017  ·  6Comentarios  ·  Fuente: WebAssembly/design

Bifurcando desde # 970: JS.md habla sobre la normalización Unicode .

Un ejemplo simple de ese documento: mi nombre "Jean-François Bastien" se puede normalizar de dos maneras con

Ç ↔ C + ◌̧

Este es un buen truco en Unicode. Mientras interactúa entre JS y wasm, sería bueno saber qué esperar de los productores y consumidores. Podemos optar por no normalizarnos, pero deberíamos decirlo .

Veo 4 formas en las que podemos discutir la normalización en JS.md:

  1. Prohibir / error / ignorar entradas no normalizadas.
  2. Normalice automáticamente las entradas de wasm y compare los valores JS normalizados.
  3. Normalice automáticamente las entradas de wasm y espere que el usuario llame a normalizar .
  4. No normalizar nada.

Si elegimos 2. o 3. debemos especificar qué forma de normalización esperamos (porque, por supuesto, hay múltiples formas de normalización).

importexports

Comentario más útil

Creo que la función convertToJSString Web.md # names ya especifica 4. Sin embargo, parece correcto agregar texto aclaratorio para decir que no se produce ninguna normalización.

Todos 6 comentarios

1, 2 y 3 parecen una buena fuente de errores esotéricos en los motores JS.

Yo voto 4.

Creo que la función convertToJSString Web.md # names ya especifica 4. Sin embargo, parece correcto agregar texto aclaratorio para decir que no se produce ninguna normalización.

De acuerdo con @lukewagner.

FWIW, CSS tampoco se normaliza en absoluto.

Sí, nada en la plataforma web utiliza la normalización Unicode, aparte de string.normalize () en JavaScript e IDNA en URL. Definitivamente 4 es lo que quieres aquí.

Dulce. Quiero asegurarme de que documentemos estas decisiones y parece que hemos llegado a un consenso. Clausura.

¿Fue útil esta página
0 / 5 - 0 calificaciones