CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 17 Oct 2017 12:47

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 15 mensajes ] 
Autor Mensaje
NotaPublicado: 03 Ene 2016 11:37 
Desconectado
Aventurero
Aventurero

Registrado: 03 Ene 2016 11:33
Mensajes: 7
Ola, es posible usar ngPAWS en otros idiomas diferentes a castellano e inglés?

Saludos.


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 14:53 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
Xabier escribió:
Ola, es posible usar ngPAWS en otros idiomas diferentes a castellano e inglés?

Saludos.


Hola!

Es posible, aunque no inmediato. Quiero decir que hay que hacer cierto trabajo antes de empezar. Para ello mejor me explico que es lo que hace ngPAWS con los dos idiomas actuales:

- Por un lado está el fichero start.database, que contiene lo que llamaríamos una aventura en blanco. Es decir, cuando en ngPAWS creamos una nueva aventura se crea con el contenido de dicho fichero. El mismo contiene muchas cosas, pero entre ellas está el vocabulario (sobre todo los verbos, en castellano o en inglés según el caso) y las respuestas automaticas (las que hacen que cuando un jugador coja un objeto ponga en pantalla "Coges xxxx" o "You take xxxxx". Para empezar habría que hacer una nueva versión de este fichero para el idioma que sea. Esto es algo que no puedo hacer yo claro, porque no conozco ningún otro idioma con profundidad suficiente para hacerlo, pero puedo ayudar resolviendo dudas a cualquiera que quiera hacerlo.

- Por otro lado el soporte intrínseco del parser al idioma, que afecta en dos cosas:

1) Pronombres o terminaciones: es posible en ngPAWS que el jugador escriba "COGER LLAVE" y luego "EXAMINARLA", o en ingles "TAKE KEY" y luego "EXAMINE IT". Al seleccionar idioma en ngPAWS el sistema lee en el vocabulario los pronombres y si está seleccionado el ingles los toma por pronombres (IT, THEM, etc.) pero si está seleccionado el español los entiende como terminaciones pronominales (-LA, -LOS, -LAS, etc.). Si el idioma que estás pensando funciona como alguno de los otros dos, se puede simplemente seleccionar el idioma correspondiente y poner los pronombres o terminaciones correspondientes. Si no funciona de ninguna de las dos maneras, entonces habría que modificar ngPAWS para darle soporte expreso al nuevo idioma, cosa que puedo hacer si se me explica como funciona este asunto en el nuevo idioma.

2) {OREF}: en los textos de la start.dabase muchas veces aparece {OREF}, es una secuencia que antes de escribirla el parser la sustituye por el objeto actualmente referenciado (por ejemplo el mensaje "Coges {OREF}." queda sustituido por "Coges la llave." si el jugador ha escrito COGER LLAVE. El problema es que ngPAWS hace un cambio de artículo indefinido por artículo definido antes de hacerlo, es decir, si el objeto está definido con el texto "una llave" ngPAWS al detectar ese "una" lo cambia por "la", porque queda más natural "Coges la llave" que "Coges una llave". Esto también tendría que parchearlo yo para dar soporte a un idioma concreto, pero tampoco es mucho problema si se me explica como funciona.

Esto es por tanto lo que veo como necesario:

1) Nueva start,database con todos los textos, verbos, etc. en el idioma nuevo.
2) Parche para los pronombres o terminaciones pronominales si es necesario.
3) Parche para {OREF}

Aparte de eso, es posible que dependiendo del idioma haya que hacer algo más complicado, pero vamos, que yo me animo si tú te animas.

¿Hablamos de un idioma en concreto o es en general?

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 15:09 
Desconectado
Aventurero
Aventurero

Registrado: 03 Ene 2016 11:33
Mensajes: 7
La idea es portarlo a gallego; me animo a hacerlo si me echas una mano para inciar el proceso.
También me animo a ayudar a documentarlo para todos los idiomas en general.

Saúdos.


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 15:32 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
Xabier escribió:
La idea es portarlo a gallego; me animo a hacerlo si me echas una mano para inciar el proceso.
También me animo a ayudar a documentarlo para todos los idiomas en general.

Saúdos.


Perfecto. Me pillas fuera y escribo desde el móvil, más tarde te mando más detalle ya por privado. Entre tanto si me vas diciendo cómo se escribe en gallego lo siguiente voy pensando que parches son necesarios:

Coge caja y ábrela
Abre armarios y examínalos

La llave
Una llave
El libro
Un libro
Los baúles
Unos bailes
Las cortinas
Unas cortinas

Creo que con eso me puedo hacer una idea. ¡Vamos a por ello!

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 15:41 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1855
Recordad que AGE tiene soporte para gallego. Me imagino que podréis reutilizar algún algoritmo.


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 16:17 
Desconectado
Aventurero
Aventurero

Registrado: 03 Ene 2016 11:33
Mensajes: 7
Voy echar un vistazo as AGE a ver como construye la localización del software y paseo.
Muchas gracias.

Para la traducción, para que te vayas haciendo una idea:

-Coge caja y ábrela
Colle a caixa e ábrea

-Abre armarios y examínalos
-Abre os armarios e examínaos


-La llave
A chave

-Una llave
Unha chave

-El libro
O libro

-Un libro
Un libro

-Los baúles
-Os baúis

-Unos bailes
Uns baules

-Las cortinas
As cortunas

-Unas cortinas
Unhas cortinas

Para el tema de pronombres (sobre todos las reglas de colocación) y terminaciones si hay diferencias y bastantes con el castellano.

Se me ocurre, para start.database, la posibilidad de crear un fichero intermedio que permita utilizarlo en aplicaciones de traducción automática para echar mano de memorias de traducción; que opinas?

Saúdos


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 18:19 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5272
Ubicación: Coruña
Xabier escribió:
Voy echar un vistazo as AGE a ver como construye la localización del software y paseo.
Muchas gracias.

Hay información sobre cómo se localiza AGE en general aquí:

http://www.caad.es/aetheria/doc/doku.ph ... u_lenguaje

Clase Galician.java:

https://github.com/komoku/aetheria/blob ... ician.java

Ficheros de localización para las aventuras:

https://github.com/komoku/aetheria/tree ... rc/lang/gl

Y para la interfaz de ventanas:

https://github.com/komoku/aetheria/blob ... essages.gl

Si tenéis alguna duda, preguntadme.

Genial que vaya a haber otro sistema de creación de aventuras con soporte para gallego. :)

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 19:26 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
Hola,

Gracias Al-khwarizmi, tu guía me ha servido para saber a qué me enfrento. Incluso pones un ejemplo con el gallego, que no había pensado(el ejemplo de "co" = "con o") aunque creo que este ejemplo concreto se soluciona simplemente haciendo "co" sinónimo de "con", e ignorando como siempre el artículo "o".

En principio por esto y por las traducciones ya facilitadas por Xabier, creo que lo más fácil es pasar al gallego desde la librería de castellano, que además está más "currada" que la inglesa.

Si no me equivoco este es el trabajo que hay por delante:

Traducción (esto para Xabier)

- Traducir todos los textos del start.database castellano a gallego, para ello hay que buscar el apartado STX (mensajes del sistema), que si hay dudas de para que sirve cada uno de ellos la explicación está aquí

- Traducir el vocabulario, principalmente los verbos, pero también el resto, y especialmente los pronombres, que en castellano y gallego son en realidad terminaciones pronominales. En ngPAWS para castellano todos los verbos están creados dos veces, una vez en infinitivo y otra en imperativo, para permitir que el jugador use cualquiera de los dos tiempos (COGER LLAVE o COGE LLAVE), si en gallego eso tiene sentido habrá que hacerlo igualmente, si no pues con poner el que proceda basta. Hay que tener en cuenta algunos casos en los que es importante añadir un sinónimo al verbo, cuando el verbo admite la forma reflexiva. Por ejemplo TIRASE no es un verbo pero lo hemos puesto como sinónimo de TIRAR, porque en castellano se puede usar la forma TIRASELO. Para que una terminación pronominal funcione ngPAWS exige que al quitarla lo que quede sea un verbo del vocabulario, por o lo que TIRASELO se queda en TIRASE. Si en gallego ocurre algo parecido, habrá que añadir este tipo de formas. No olvidarse también de poner "co" como sinónimo de "con" en las preposiciones.

- Traducir la tabla de respuestas, donde hay muchísimas respuestas por defecto. Para ello lo más fácil es buscar "WRITE" y entre comillas verás los textos. Idealmente también habría que traducir los comentarios que hay en la misma, para más comodidad del autor gallego. Además, hay que cambiar todas las entradas (por ejemplo COGER TODO, EXAMINAR _, etc.) por el equivalente gallego, y hacer un búsqueda también de las acciones PREP que van seguidas de una preposición "DE", "EN", "A", etc. En principio las entradas se explican solas con el mensaje, pero si hay dudas me preguntas. Los {OREF} los dejas tal cual, lo único que te va a pasar es que al dejar la llave podrá "Dejas unha llave" en lugar de "Dejas a llave". Eso lo arreglo yo después

Con eso deberíamos tener una versión de ngPAWS que hable gallego con cierto acento castellano, que es la parte que tengo que hacer yo:

Programacion

- Tengo que hacer el cambio para los artículos definido e indefinido, que en lugar de una/la, un/el, unas/las y unos/los será unha/a, unho/o unhas/as y unhos/os. Esto permitirá que los mensajes se queden con sus {OREF} tal cual y funcione bien.

- Tengo que pensar como enganchar el código, de modo que el añadir un lenguaje sea tan simple como añadir el plugin del lenguaje correspondiente.

Una vez tengamos ambas cosas, tocará probar, y ver si nos salen otras particularidades no contempladas y pulir la librería hasta que esté perfecta.

Y luego viene la segunda fase, traducir el entorno de desarrollo (lo cual es fácil, es cuestión de traducir un fichero de texto), y la documentación, lo cual es una tarea bastante más laboriosa claro.

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 20:22 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
¿Hay alguna norma en gallego para evitar que se junten vocales?

He mirado en el traductor de google y si pongo "la llave" me lo traduce por "a clave", pero si pongo "la azada" me lo traduce por "á aixada" (con acento en el artículo "a"). ¿Se le va la olla a Google o hay alguna norma por empezar la siguiente palabra por a?

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 20:33 
Desconectado
Aventurero
Aventurero

Registrado: 03 Ene 2016 11:33
Mensajes: 7
Se le va la olla al traductor :D :D :D que fallan mas que una escopeta de feria.
Estes te pueden ir mejor:
https://www.apertium.org/index.eng.html ... ranslation
http://www.opentrad.com/es/?

De todas formas, me encargo yo de traducir los ficheros.


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 20:42 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
Xabier escribió:
Se le va la olla al traductor :D :D :D que fallan mas que una escopeta de feria.
Estes te pueden ir mejor:
https://www.apertium.org/index.eng.html ... ranslation
http://www.opentrad.com/es/?

De todas formas, me encargo yo de traducir los ficheros.


Vale, o sea, que es "a" y punto ;-)

Esta parte es que la tengo que hacer yo porque es automática dentro de la programación. Ahora cuento algun cambio que hay que hacerle a ngPAWS (sobre la beta 9 publicada) para adecuarlo al gallego.

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 20:48 
Desconectado
Aventurero
Aventurero

Registrado: 03 Ene 2016 11:33
Mensajes: 7
Ok, entonces yo creo un fichero database.start.galician y traduzco :D


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 20:52 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
Para permitir que cuando un objeto se describe como "una aixada" salga como "una aixada" cuando por ejemplo listas los objetos que llevas, pero como "a aixada" cuando lo coges o dejas, tenía que modificar la secuencia de escape {OREF}, presente en muchísimos mensajes.

{OREF} es sustituido por la descripción del objeto actualmente referenciado. Así en castellano por ejemplo si un objeto está descrito como "una azada", cuando escribimos el mensaje "Coges {OREF}" porque el jugador pone "COGER AZADA" el mensaje que se escribe realmente es "Coges una azada", o mejor dicho "coges la azada", porque ese {OREF} hace un poco de cocina antes cambiando el artículo indefinido a a definido.

La idea era hacer exactamente lo mismo para el gallego, pero que en lugar de "Tomas unha aixada" ponga "Tomas a aixada".

Para ello tenía que "reescribir" es OREF mediante un plugin, pero me he encontrado con un problema: ngPAWS dejaba crear nuevos tags {XXXX} pero no dejaba redefinir los existentes. Como crear nuevo tag no me gusta nada, porque tendría que crear {OREF_GL}, {OREF_DE}, {OREF_FR} y eso es un horror, he decidido en su lugar modificar ngPAWS para que deje a su vez modificar los tags que ya existen, como {OREF}. Por eso esto va en dos partes:

1) En este zip va el contenido de parte de la carpeta jsl de ngpaws para sobreescribirlo: https://www.dropbox.com/s/u642wqmoj1mxlye/jsl.zip?dl=0. Es decir, extraemos el contenido del zip dentro de la carpeta jsl que hay en la carpeta donde está instalado ngPAWS. Eso hace el cambio que permite que se redefina el OREF. Este cambio me viene bien ahora para el gallego, pero ya queda hecho para otros idiomas y puede que para otras funciones.

2) En este otro enlace hay un plugin de ngPAWS que redefine el OREF para el gallego https://www.dropbox.com/s/lf2ne2ubvny3c ... L.jsp?dl=0. Este fichero se puede poner bien en la carpeta "jsl" de ngPAWS, si todas nuestras aventuras van a ser en gallego, bien en una carpeta "jsl" que creemos dentro de la carpeta en la que esté nuestro juego, en cuyo caso solo afectará a ese juego.

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 03 Ene 2016 20:53 
Desconectado
Momio
Momio
Avatar de Usuario

Registrado: 09 Mar 2004 16:14
Mensajes: 4614
Xabier escribió:
Ok, entonces yo creo un fichero database.start.galician y traduzco :D


Eso es :-)

Si tienes dudas en algún punto porque no te queda claro de donde viene un mensaje pregunta ;-)

_________________
Sígueme en twitter: @uto_dev
http://www.ngpaws.com


Arriba
 Perfil  
 
NotaPublicado: 06 Mar 2017 01:16 
Desconectado
Enano Maluva
Enano Maluva
Avatar de Usuario

Registrado: 16 Nov 2016 12:05
Mensajes: 49
Resucito este hilo porque tengo traducida la base de datos inicial y los menúes al catalán. Todavía he de probar unas cosas.

Base de datos
Las cadenas del IDE

Lo «bonito» va a ser con la sintaxis porque en catalán:
- se apostrofan los artículos y la preposición «de» si la siguiente palabra comienza por vocal. Así, «coge la antorcha» sería «agafa l'antorxa». Ahora el «parser» lo toma como dos sentencias: «agafa l» y «antorxa» :)

Los pronombre enclíticos van con guion pero esto funciona... ¡Funciona!
«Cógelo todo» sería «Agafa-ho tot». He puesto «Agafa-ho» como sinónimo de «agafar» y va de maravilla.

Hay pero: «Examina las llaves y cógelas» sería «Examina les claus i agafa-les». No entiende -les como pronombre... He de seguir investigando.

En fin. Sigo con ello (también)


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 15 mensajes ] 

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM