2009-08-27 9 views
7

estoy usando el siguiente estilo de la matriz de inicialización en el código:muesca apropiada en la inicialización del campo, PDT/Zend Studio

$a = array(
    'one' => 123, 
    'two' => 456 
); 

Pero PDT/Zend Studio no funciona correctamente en este caso; después de presionar la tecla [Return] coloca el cursor debajo de $ a (en mi ejemplo) e ignora la sangría. Si las teclas de matriz son números (al menos no comienzan con comillas) todo está funcionando bien.

Ésta es la forma en que funciona actualmente (| - es una posición en la edtitor coloca cursor después de presionar [Volver])

$a = array(
    'one' => 123,[RETURN] 
| 
); 

Este resultado se espera:

$a = array(
    'one' => 123,[RETURN] 
    | 
); 

Entonces, ¿es posible editor de fuerza seguir mis reglas de sangría?

+7

+1: Tengo exactamente el mismo problema - I i ndend de la misma manera que lo hace, y nunca ha encontrado una solución :-( –

+0

Solo una idea: ¿qué sucede si rodea esto con corchetes? {$ a = array (...);} – Zed

+0

Lo mismo, sin sangría adecuada. –

Respuesta

1

En Zend Studio se puede aplicar el uso de PhpCodeFormatter Ctrl +Shift +F.

El formateador se puede configurar en la ventana-> preferencias-> PHP-> Code Style-> Formatter (Zend Studio 7.0) para reformatear las matrices como se describe arriba.

PDT, (hasta donde yo sé) no tiene esta función.

0

No estoy seguro acerca de Eclipse, pero tuve el mismo problema en TextMate. Cambié a las pestañas suaves (también conocidas como 4 espacios) en lugar de pestañas y ahora actúa como "esperado". ¿ZendStudio tiene esa opción?

+0

Tiene, no funciona. –

+0

Extrañamente, acabo de abrir Flex Builder (también eclipse) y probé esto y funciona como se esperaba. ¿Algo específico para Zend Studio? Tal vez pedir su apoyo. – typeoneerror

+0

Parece un error de PHP (es decir, PDT y Zend Studio se basa en PDT). –

0

@MGriesbach: En realidad PDT (Eclipse) tiene esta función (en Fuente-> Formato)

@Sergei: Eclipse no tiene este problema, pero esto suena como algo está mal con su configuración. ¿Estás seguro de que revisaste todas las opciones? También puede enviar un correo electrónico al equipo de Zend, esto suena como un error bastante trivial en su lado, ya que alienta a los desarrolladores a escribir código no sangrado correctamente.

- edit--

Mi mal, Eclipse PDT hace tienen este problema, pero yo sólo se acostumbraron a ella :) La desaparece problema si presiona el tabulador, por lo que sangrar la primera línea. Las otras líneas seguirán correctamente.

0

No, eso es un error de Eclipse.

Lo he enfrentado utilizando TODOS los editores de texto de Eclipse (SQL, XML, YML, ShellEd y o on).

Sin embargo, solo ocurre en mi instalación de Eclipse para Linux (Kubuntu Kármico) en x86_64. Lo he probado en i386 Karmic en mi trabajo y funciona bien.

1

que sugieren que le permite crear una cuenta en la lista de pistas Bugzilla, y votar por la siguiente característica:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=320130

Si hay suficiente gente, es probable que integran dichas funcionalidades en más versión del PDT.

+0

característica agradable, dejó mi voto, pero no creo que se incluirá porque es una de las características principales de Zend Studio. –

+0

Yo también voto. – dkinzer

3

Recientemente tuve exactamente el mismo problema. Lo resuelto en el estudio de Zend (Eclipse IDE basado) yendo a

Preferences -> PHP -> Code Style -> Formatter

y elija Editar en la pantalla junto al nombre fortmatter preajustar. En la ventana abierta, vaya a la pestaña Enlazado de línea y en la lista, seleccione

Expressions -> Array Initializers.

Juega con la configuración a tus gustos.

Regards

Lukas

0

Trate

Window-> Preferencias
PHP> Código Style-> Formateador
Indentation-> dafault sangría para inicializadores de matriz = 1

Cuestiones relacionadas