2011-05-12 9 views
7

tratando desesperadamente de personalizar Xcode 4 combinaciones de teclas.Xcode 4 idekeybindings múltiples comandos para un golpe de teclado

estoy editando el archivo .idekeybindings de usuario (que Xcode veces borra cuando se modifica mientras abierta y, posteriormente, intentar actualizar a través de la interfaz de asociaciones de teclas - encantador)

Mi entendimiento es que proporciona una de las órdenes s (selectores) en lugar de solo una cadena debería ejecutar todos esos comandos.

<key>Text Key Bindings</key> 
<dict> 
    <key>Key Bindings</key> 
    <dict> 
     <key>@L</key> 
     <string>selectLine:</string> 
     <key>@d</key> 
     <array> 
      <string>selectLine:</string> 
      <string>deleteBackward:</string> 
     </array> 
    </dict> 
    <key>Version</key> 
    <integer>3</integer> 
</dict> 

En este caso particular, mi selectLine: para el comando-shift-l funciona correctamente.

Mi comando-d pitidos y me falla. Si elimino cualquiera de los comandos en la matriz, pero lo dejo dentro de la matriz, ese comando funciona (no importa cuál). Pero tan pronto como los combiné, fracasaron miserablemente.

¿Alguien sabe lo que estoy haciendo mal aquí? La falta de conocimiento sobre cómo hacer esto es frustrante.

+1

También; http://stackoverflow.com/questions/5626788/custom-key-bindings-xcode-4 – Steve

Respuesta

0

El hecho de que se puede añadir una matriz con dos funciones a la estructura XML, no significa que Xcode está buscando que cuando se analiza el archivo.

Si el código que lee el archivo comprueba si el valor era de una matriz o una cadena, entonces hizo un poco de bucle, esto sería comportarse de la manera que creemos que debe. Mi suposición es que Xcode está leyendo el valor asociado con la clave, viendo que no es una cadena, y serenandote con ese hermoso pitido.

+1

Usted solía ser capaz de hacer esto con XCode 3. No estoy tirando de ella de la nada. :) Cuando tengo una matriz de 1 comando, lo lee y lo ejecuta. Cuando agrego el segundo comando a la matriz es cuando se ahoga. –

+0

Mientras que Xcode 4 admite archivos Xcode 3, se reescribió para Xcode 4. Archivaría un error si tiene un archivo de proyecto que solo funciona con uno de los dos. – brysgo

+1

¿Proyecto de archivo? Eso no está realmente relacionado con la pregunta aquí. –