Actualizando a Zend Studio 12.x

Generalmente el paso de una actualización a otra en Zend Studio (ZS) es bastante trivial pero al actualizar de Zend Studio 11 a ZS 12 o ZS 12.5 me he encontrado con algunas dificultades, cambios de configuración que afectan las codificaciones de los archivos JavaScript y el uso del editor, sobre todo las teclas tab.

Introducing-Zend-Studio-12

Error de codificación de archivos JavaScript a UTF-8 en Zend Studio 12

En Zend Studio 11 para cambiar la codificación de un proyecto bastaba con hacer click derecho en el proyecto Properties > Resource y especificar allí nuestra configuración, pero el paso a la versión 12 que implica la actualización a Eclipse 4 ha cambiado el orden de prioridades de las codificaciones.

Permítanme dar más detalles de cómo funciona. La codificación de un archivo de texto está determinada por las reglas siguientes:

  1. Si la codificación se encuentra justo en el archivo, entonces este es la codificación que se aplica, de lo contrario
  2. La codificación de archivos de texto se hereda del tipo de contenido si se ha establecido, de lo contrario
  3. La codificación de archivos de texto se hereda de la carpeta principal si se ha establecido en ella, de lo contrario
  4. Si ninguna codificación se establece en cualquiera de las carpetas principales, incluyendo la raíz del proyecto, a continuación, la codificación se hereda de la configuración del espacio de trabajo.

Así, se puede establecer la codificación en el proyecto - a través de Propiedades> Recursos en el menú contextual. Pero esto no afectará a los archivos JavaScript porque el tipo de contenido tiene una codificación configurada, que anula la configuración del proyecto de acuerdo a la regla anterior.

El problema es que cuando se actualizó Zend Studio 11 a la versión 12 por alguna razón los desarrolladores del plugin JSDT decidieron cambiar la codificación predeterminada para los archivos JavaScript de ninguno a UTF-8. Por lo tanto, se debe de cambiar de nuevo a "ninguno" si desea establecer la codificación a nivel de proyecto.

Para cambiar la codificación por defecto de los archivos JavaScript tenemos que irnos a Window > Preferences > General > Content Types, encontrar allí JavaScript (no confundir con Java) y modificarlo.

Si intentamos hacerlo (limpiar el campo "codificación por defecto" en la página de preferencias para la JavaScript), veremos que el cambio no se aplica. Esto es un error en la Plataforma Eclipse que ya ha quedado reportado.

Pero existe una solución, tenemos que ir al archivo:

<workspace>/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.runtime.prefs

Y agregar la siguiente línea, o en caso de que exista eliminar la codificación:

content-types/org.eclipse.wst.jsdt.core.jsSource/charset=

Al aplicar los cambios podremos asignar la codificación a nivel de proyecto tal y como hacíamos en Zend Studio 11.

Nota adicional: si deseamos cambiar la codificación de un solo archivo lo podremos hacer haciendo click derecho en el archivo > Properties > Resource.

Error utilizando la tecla tab en Zend Studio 12

Otro de los cambios que vienen con Eclipse 3 y Zend Studio 12 es el formato de nuestro editor de texto, si notas un comportamiento extraño de la tecla tab cuando la preceden espacios entonces necesitarás cambiar el formato, para ello tenemos que ir a Window > Preferences -> PHP -> Code Style –> Formatter y cambiar el valor a PHP Conventions de esta forma siempre se insertaran tabuladores en vez de espacios en blanco.

Tengo que agradecer al soporte técnico de Zend por su ayuda en la resolución de estos errores, sin sus soluciones no hubiese sido posible.

Comentarios