estado de la internacionalización en sakai 2.6 raúl e. mengod lópez

Post on 04-Jan-2016

26 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Estado de la Internacionalización en Sakai 2.6 Raúl E. Mengod López Universidad Politécnica de Valencia. Santiago de Compostela, 20 Febrero de 2009. Índice. Introducción a la UPV Un poco de Historia de Sakai WG: i18n Traducción de Sakai ¿Cómo construir herramientas i18n? Best Practices - PowerPoint PPT Presentation

TRANSCRIPT

Estado de la Internacionalización en Sakai 2.6Raúl E. Mengod López

Universidad Politécnica de Valencia

Santiago de Compostela, 20 Febrero de 2009

Índice

Introducción a la UPVUn poco de Historia de SakaiWG: i18nTraducción de Sakai¿Cómo construir herramientas i18n?Best PracticesEstado actual de la i18n en SakaiProblemas de i18nMejoras conseguidas en las últimas versionesSpanish Sakai

Introducción a la UPV

Introducción a la UPV

Introducción a la UPV

Universidad Politécnica Valencia (UPV) Universidad pública creada en 1971 Estudios principalmente técnicos

Misión y visión La UPV es una universidad innovadora al

servicio de la sociedad y de su progreso. Excelente en la formación de profesionales y en la investigación.

4

Introducción a la UPV

• Centros Docentes

15

• Departamentos 44

• Titulaciones 1er Ciclo 31

• Titulaciones de 2º Ciclo 12

• Titulaciones 1er y 2º Ciclo 13

• Alumnos de 1er y 2º Ciclo

36.525

• Programas de Doctorado 66

• Alumnos de 3er Ciclo

1933

• P. Docente e Investigador

2.497

• P. Administración y Servicios

1.471

• Institutos de Investigación

40

• Contratación I+D+I 35 M. €

• Presupuesto anual 218 M. €

• Programas Máster

40

• Cursos de Especialización

66

• Empresas colaboradoras PCE

2.718

La Universidad Politécnica de Valencia en cifras:

5

Introducción a la UPV

Sakai en la UPV

Piloto durante 2006 Sistema con funcionalidad completa Sólo usuarios seleccionados

Sistema en Producción en 2006/2007 4 servidores Base de Datos Oracle Integrado con nuestro propio SSO Integrado con Matrícula 4.000 sites 40.000 alumnos

Basado en la versión 2.1.2 Traducida a Castellano Una personalización muy alta Con parches de i18n

7

8

Sakai en la UPV

Migración a 2.4.x en 2007/2008 Re-personalización de los cambios de la 2.1.2 Más parches de i18m Avanzadilla de funcionalidades de la 2.6

Migración a 2.6 en Julio 2009 Problemática de los parches Problemática de la adaptación

9

Sakai en la UPV

Un poco de Historia de Sakai

11

Un poco de Historia de Sakai

Sakai 2.0 Universidad de Lleida empezó el trabajo Creación de los ficheros de properties Traducción a Catalán

Sakai 2.1 Corriendo sólo en monolingue pero con el idioma por defecto Versión española no disponible

Sakai 2.1.1 Versión multilingüe introducida por la Nagoya University Clase especifica para tratar los bundle. Resourcebundle.java Almacenamiento del idioma en las preferencias personales

Sakai 2.1.2 Primera versión en Castellano Faltaban muchas problemas

12

Un poco de Historia de Sakai

Sakai 2.3 Se añadieron más Idiomas

Sakai 2.4 Solucionadas 29 incidencias Tool revisar traducciones

Sakai 2.5 Solucionadas 22 incidencias Tool migración de traducciones

Sakai 2.6 Solucionadas 11 incidencias

WG: i18n

14

WG: i18n

Espacio de i18n en sakai

Working Group de Sakai http://bugs.sakaiproject.org/confluence/display/I18N/Home Controlado por Beth Kirshner

¿Que encontramos en el Confluence?

Configuración i18n de sakai Guia traducción de sakai Guia para el desarrollo Herramientas traducción Herramieta control de las traducciones

15

WG: i18n

http://bugs.sakaiproject.org/confluence/display/I18N/Home

Configuración de la i18n

17

Configuración de Sakai

Windows: set JAVA_OPTS=%JAVA_OPTS% -Duser.language=es -Duser.region=ES

Linux or Unix JAVA_OPTS="$JAVA_OPTS -Duser.language=es -Duser.region=ES

Traducción de Sakai

19

Traducción de Sakai

El primer paso para avanzar en la Internacionalización

Cada idioma tiene un responsable

Catalán : Lleida Castellano: Valencia Gallego: Euskera: Navarra

Permisos de commit sobre los Ficheros en svn

Es necesaria una revisión y actualización constante

20

Traducción de Sakai

Herramientas ayuda traducción Editores de Ficheros de Recursos

ResourceProperties Editorhttp://sourceforge.net/projects/i18nedit

XLIFF Translation Editorhttps://open-language-tools.dev.java.net/

Utilidad de Transferencia de Traducciones Por la Universiad de Smolny (San Petersburgo)

Estado de las Traducciones Utilidad en Universidad de Amsterdam

http://qa1-nl.sakaiproject.org/international Se actualiza diariamente contra el trunk OJO con los ficheros excluidos http://qa1-nl.sakaiproject.org/international/trunk/de.html#excludedfiles

21

Traducción de Sakai

22

Traducción de Sakai

23

Traducción de Sakai

24

Traducción de Sakai

Proceso de Revisión de un Idioma

Traducción en local y actualización en el trunk

Cada Responsible sube sus ficheros

Última revisión después de congelar el código de una versión

No se permiten cambios una vez generadas las Betas

Se suele generar ya la rama de mantenimiento No siempre se mergean cambios posteriores

¿Cómo construir Herramientas i18n?

26

Estándares i18n Sakai

http://bugs.sakaiproject.org/confluence/display/I18N/How+to+write+Internationalized+Tools+in+Sakai

Por Beth Kirschner

Se basa todo en el uso de la clase ResourceLoader Es una clase envolvente de la clase Loadbundle Obtiene el idioma de la preferencia del usuario Mira también el idioma del Browser Si no busca el idioma por defecto del Servidor

27

Estándares i18n Sakai

http://bugs.sakaiproject.org/confluence/display/I18N/How+to+write+Internationalized+Tools+in+Sakai

Herramientas construidas con JSF Crear un backing bean para mensajes messages en el fichero faces-config

file o en la página JSP Actualizar el Bean con el fichero de properties adecuado Usarlo de la misma forma que se usa la clase LoadBundle

Herramientas construidas con Velocity Crear una instancia de la clase ResourceLoader Poner esta instancia en el contexto Referenciarla como cualquier otra variable

28

Estándares i18n Sakai

http://bugs.sakaiproject.org/confluence/display/I18N/How+to+write+Internationalized+Tools+in+Sakai

Herramientas construidas con RSF Definir el mensaje en la plantilla

<span rsf:id="msg=page.user.message.key">This is an internationalized message.</span>

Usar la clase UIMessage <span rsf:id="my-rsf-id">This will be an internationalized message.</span> UIMessage.make(tofill, "my-rsf-id", "page.user.message.key");

Dejar el fichero de propiedades en el lugar por defecto tool/src/webapp/WEB-INF/messages

Más Información en: http://www2.caret.cam.ac.uk/rsfwiki/Wiki.jsp?page=I18N

I18n Best Practices

Nunca Olvides el Estándar Definir todas las herramientas de la misma forma

Los ficheros de Propiedades son nuestros amigos La implementación es independiente del lenguaje Seperar los ficheros de propiedades que dependen del

idioma de los de configuración.

Separar los nombres de los códigos Ej: Caso codificacion de estados

30

I18n Best Practices

No debe existir texto literal en los ficheros .java o .jsp Es más duro de desarrollar pero es necesario El código es más difícil de entender

Sólo los datos introducidos por el usuario deberían guardare en la BD. Evitar el almacenamiento de información necesaria para la lógica de la

aplicación, estados, dispatchers. Sólo el usurio debe insertar datos en la Bd y no la aplicación

No usar String internacionalizados en la lógica de la aplicación

Realizar pruebas en más de un idioma

31

I18n Best Practices

32

I18n Best Practices

Literales sensibles a idioma almacenados en la BD Gradebook

GB_GRADABLE_OBJECT_T.EXTERNAL_APP_NAME

33

I18n Best Practices

Samigo: Datos de la Herramienta almacenados en la BD

SAM_TYPE_T.KEYWORD

34

I18n Best Practices

public List getPostingOptions() { List postingOptions = new ArrayList(); postingOptions.add(new SelectItem(PermissionBean.NONE,PermissionBean.NONE)); postingOptions.add(new SelectItem(PermissionBean.OWN,PermissionBean.OWN)); postingOptions.add(new SelectItem(PermissionBean.ALL,PermissionBean.ALL)); return postingOptions; }

msgcntr\messageforums-app\src\java\org\sakaiproject\tool\messageforums\DiscussionForumTool.java

• Separar valores y nombres en las Opciones

Estado Actual de la Internacionalización

36

Estado de la Internacionalización

Internationalization Status At the time of this writing, the following languages/locales are supported: English (US & UK), Japanese, Korean, Dutch, Simplified Chinese, Spanish, French (France & Canada), Catalan, Swedish, Arabic, Russian, Portuguese (Portugal & Brazil).

Additionally, there are several aspects of internationalizing Sakai:1) Ability to type international (unicode) characters into any Sakai toolStatus: Currently supported2) Ability for any tool interface to dynamically reflect a user's preferred international localeStatus: Supported pending translation3) Ability to create worksites whose page titles will statically reflect to a defined international localeStatus: Supported pending translation4) Ability to create worksites whose page titles will dynamically reflect a user's preferred international localeStatus: Not supported yet (pending development)5) Ability to create worksites whose page titles and tool interface will statically reflect a site's preferred international localeStatus: Not supported yet (pending development)6) Ability to support right-to-left languagesStatus: Supported pending customized skins or CSS (see Sakai-RTL-skin.jpg)

Problemas en el JIRA

Problemas en el JIRA

Problemas en el JIRA

Problemas en el JIRA

Problemas i18n

42

Problemas i18n

Nombres de Páginas y Herramientas Se insertan en la BD en el idioma de creación

SAKAI_SITE_PAGE.TITLE

SAKAI_SITE_TOOL.TITLE

43

Problemas i18n

Solución UPV desde ver 2.1.2 Cada herramienta tiene un nombre de registro (sakai.site.info) Creación de un nuevo fichero de propiedades con estas claves. Almacenar la clave en el campo nombre de la BD Obtención del texto localizado a partir de la clave Si no se encuentra texto, mostrar el contenido en la BD Inconvenientes

No se permite la personalización del nombre No se puede usar una misma herramienta varias veces (sakai.iframe)

Otra Solución (SAK-5296) Tool registration files need to support xml:lang Tool class would support retrieving the locale-specific text How to handle tools that may be used one than more time?

44

Problemas i18n

Globales a Sakai

45

Localization

El problema de las Fechas Diferentes formatos según Zona. Poca uniformidad en sakai. No se usa siempre el mismo código para solicitar fecha y para

mostrar fecha.

46

Localization

47

Problemas i18n

De Codificación

48

Problemas i18n

Problemas con solución

49

Problemas i18n

Textos incluidos en las imágenes

• Solución: Usar una imágen anónima

50

Herramienta Ayuda

Herramienta Especial Sólo en Inglés No usa Ficheros de

Propiedades

51

Problemas i18n

Reorganización

52

Problemas i18n

Mejoras

Mejoras conseguidas en las últimas versiones

54

Localization

Primer día de la semana

55

Problemas i18n

Uso de Strings i18n en la lógica de la aplicación

• El nombre de las carpetas se crea en inglés pero luego las búsquedas se hacían en el idioma de navegación

Conclusiones

57

Conclusiones

Se ha trabajado mucho en la i18n Nuevos Idiomas Nuevas funcionalidades Nuevos Parchers

Aún queda mucho por hacer (entre todos) Siguen habiendo muchos Bugs

No es un tema prioritario para la comunidad Sólo interesa a algunos europes Aún más interesadas las zonas bilingües

58

Conclusiones

Falta una política clara de control de la i18n Similar a la que se ha hecho con QA Certificación de Idiomas Control de las traducciones en el QA Requisito para pasar una contrib a provisional Creación de un comité de seguimiento

Spanish Sakai

60

Spanish Sakai

Espacio de la comunidad sakai en España http://

La i18n de sakai nos interesa a todos Comunidades Bilingües Alumnos de Intercambio

Pasos a Seguir Trabajar para solucionar problemas Tener más presencia en los foros internacionales Colaboración en las herramientas

Gracias

rmengod@upv.es

top related