Actualmente estoy trabajando en la localización de un sitio web, que fue el primero en inglés solamente. Una empresa externa realizó las traducciones y nos proporcionó un archivo Excel con las traducciones. Lo cual exitosamente convertí a una matriz PHP que puedo usar en mis vistas. Estoy usando Eclipse para Windows para editar mis archivos PHP.Manejar cadena árabe en PHP con Eclipse
Todo está bien, excepto que tengo que añadir las variables en mis cadenas, por ejemplo:
'%1 is now following %2'
En árabe Estaba provisto de cadenas como éste:
'_______الآن يتتبع _______'
Me parece que la sustitución _ _ con% 1 y% 2 es increíblemente difícil porque la parte árabe es una cadena de derecha a izquierda, y %1
, %2
se considerarán de izquierda a derecha o de derecha a izquierda, y yo no soy Por supuesto . Apenas tengo los resultados que espero con el orden de mi parámetro, porque% 1 algunas veces irá a la izquierda de la cadena, a veces a la derecha, dependiendo de dónde empiece a escribir. Copiar y pegar las cadenas de reemplazo también puede tener los mismos efectos extraños.
La mayoría de las veces que terminan con una cadena como esta:
%2الآن يتتبع %1
El 1% debe estar en el sitio de la mano derecha, el 2% en el lugar de la mano izquierda. El %1
obviamente se considera cadena de derecha a izquierda porque el% aparece a la derecha. El %2
se considera de izquierda a derecha.
Estoy seguro de que alguien como este problema antes. ¿Hay alguna manera de que se pueda hacer fácilmente en Eclipse? ¿O usar un editor más inteligente para problemas arábigos? ¿O tal vez es un problema de Windows? ¿Hay alguna solución?
ACTUALIZACIÓN
También probé dividir mi cadena en varias cadenas, pero esto también cambia el orden de los parámetros:
'%1' . 'الآن تتبع' . '%2'
ACTUALIZACIÓN 2
Parece que el cambio de la cadena de reemplazo mejora las cosas. Probablemente esté relacionado con cómo se manejan los números en cadenas árabes. Esta cadena fue editada en Eclipse sin ningún problema. El orden del parámetro es correcto, la cadena se maneja correctamente por PHP:
'{var2} الآن يتتبع {var1}'
Si no se encuentra ninguna otra solución, esto podría ser una buena alternativa.
estoy de programación con el hebreo, que es también RTL, y en mi manejo de todos los datos de la experiencia dentro de una base de datos es una mucho más fácil. Sin embargo. Es cierto que la mayoría de los IDE no tienen soporte nativo para estos idiomas. ¿Por qué no tratar de manejar los datos dentro de una base de datos? –
Siendo un hablante de árabe recibo muchas tareas de localización. Aunque no he enfrentado este problema en particular, he tenido muchos problemas de izquierda a derecha/derecha a izquierda durante la edición. He tenido éxito trabajando con Notepad ++. ¿Hay alguna regla para este reemplazo? Tal vez puede ser guionado. – Adi
@NadavS. Estoy tratando de evitar la base de datos porque quiero evitar este paso innecesario. Si necesito nuevas traducciones cuando implementamos nuevas funcionalidades, puedo enviar mi archivo Excel a la compañía de localización. No tendré que exportar mi base de datos a un archivo Excel, enviarlo a la empresa y luego volver a importar el archivo. En realidad, intenté editar la misma cadena en Navicat y me encontré con los mismos problemas. – Tchoupi