Pregunta:
Un amigo y yo estábamos bromeando sobre el aleph. Al intentar escribir א 0 (cambiar esos 2 caracteres), ¡se cambiaron ellos mismos! Cualquier secuencia de símbolos no detiene este efecto. ¿¿¡Por qué es esto!??
Intente escribirlos con 0 y א invertidos (c & p para א):
א 0
א – 0
א \\\ 0
א -. / 0
Las palabras sin embargo las separan
א foobar 0
Estoy en arch linux y aún no lo he probado en ningún otro sistema operativo
EDITAR: El número no tiene que ser cero. Funciona con números, pero no con letras.
Respuesta:
'א', 'LETRA HEBREA ALEF' (U + 05D0) tiene la clase BIDI (bidireccional) "Derecha a izquierda [R]", porque el hebreo se escribe tradicionalmente de derecha a izquierda. Los dígitos, por otro lado, no tienen asignada una direccionalidad específica, por lo que todo el fragmento de aleph y cero se interpreta de derecha a izquierda. En este caso, es posible que el siguiente carácter no se encuentre necesariamente a la derecha del carácter anterior, como dictan las bastante complejas reglas bidireccionales de Unicode.
Tiene varias opciones para solucionar este problema.
-
Puede utilizar 'ℵ', 'ALEF SYMBOL' (U + 2135) . Es un símbolo y tiene la propiedad de izquierda a derecha: ℵ0.
-
En lugar del dígito
0
habitual, puede utilizar un carácter similar a cero con direccionalidad de izquierda a derecha, como '〇', 'NÚMERO IDEOGRÁFICO CERO' (U + 3007) . -
La forma más limpia es usar el carácter 'MARCA IZQUIERDA A DERECHA' (U + 200E) ( Wikipedia ) después del aleph: "א 0". Este es un carácter invisible de ancho cero que se define para tener direccionalidad de izquierda a derecha. Por lo tanto, tiene el mismo efecto en el algoritmo de diseño de texto bidireccional que insertar, digamos, una letra latina de izquierda a derecha después de א, excepto que no aparecerá ninguna letra visible allí.