1 votos

Desmembrar combinaciones de teclas en KeyRemap4Macbook

Esta es una continuación de ¿Cómo puedo asignar la tecla de Windows a la opción en la versión 8 de Microsoft Remote Desktop? . Las respuestas a esta pregunta son un gran ahorro de tiempo para los usuarios de OSX RDC; sin embargo, hay algunas combinaciones de teclas que no quiero reasignar. Por ejemplo, Comando+Q y Comando+W idealmente seguirían funcionando igual que antes de la reasignación.

He intentado añadir esta definición:

<autogen>
    __KeyToKey__ 
    KeyCode::Q, ModifierFlag::COMMAND_L, 
    KeyCode::Q, ModifierFlag::COMMAND_L
</autogen>

Pero sin ningún efecto.

Actualización: aquí está la versión completa private.xml :

<root>
    <appdef>
        <appname>Microsoft Remote Desktop</appname>
        <equal>com.microsoft.rdc.mac</equal> 
    </appdef>
    <item>
        <name>Swap command and option in Remote Desktop</name>
        <identifier>private.remotedesktopswapcommandandcontrol</identifier>
        <only>Microsoft Remote Desktop</only>
        <autogen>
            __KeyToKey__ 
            KeyCode::Q, ModifierFlag::COMMAND_L, 
            KeyCode::Q, ModifierFlag::COMMAND_L
        </autogen>
        <autogen>__KeyToKey__ KeyCode::TAB, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_OPTION, KeyCode::TAB, ModifierFlag::COMMAND_L</autogen>
        <autogen>__KeyToKey__ KeyCode::OPTION_L, KeyCode::COMMAND_L</autogen>
        <autogen>__KeyToKey__ KeyCode::COMMAND_L, KeyCode::OPTION_L</autogen>
        <autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::COMMAND_R</autogen>
        <autogen>__KeyToKey__ KeyCode::COMMAND_R, KeyCode::OPTION_R</autogen>
    </item>
</root>

1voto

Fernando Miguélez Puntos 7532

La documentación sugiere que no deberían entrar en conflicto:

<autogen>
   __KeyToKey__
   KeyCode::Q, ModifierFlag::COMMAND_L | ModifierFlag::NONE,
   KeyCode::Q, ModifierFlag::COMMAND_L | ModifierFlag::NONE,
</autogen>
<autogen>__KeyToKey__ KeyCode::COMMAND_L, KeyCode::OPTION_L</autogen>

Sin embargo, el segundo <autogen> anulará el COMMAND_L de la primera. La solución es contraintuitiva:

<root>
    <appdef>
        <appname>Microsoft Remote Desktop</appname>
        <equal>com.microsoft.rdc.mac</equal> 
    </appdef>
    <item>
        <name>Swap command and option in Remote Desktop</name>
        <identifier>private.remotedesktopswapcommandandcontrol</identifier>
        <only>Microsoft Remote Desktop</only>            
        <autogen>__KeyToKey__ KeyCode::TAB, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_OPTION, KeyCode::TAB, ModifierFlag::COMMAND_L</autogen>
        <autogen>__KeyToKey__ KeyCode::OPTION_L, KeyCode::COMMAND_L</autogen>
        <autogen>__KeyToKey__ KeyCode::COMMAND_L, KeyCode::OPTION_L</autogen>
        <autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::COMMAND_R</autogen>
        <autogen>__KeyToKey__ KeyCode::COMMAND_R, KeyCode::OPTION_R</autogen>
        <autogen>
            __KeyToKey__
            KeyCode::Q, VK_OPTION | ModifierFlag::NONE,
            KeyCode::Q, VK_COMMAND | ModifierFlag::NONE,
        </autogen>
    </item>
</root>

En este caso Cmd+Q se reasigna a Opt+Q pero entonces Opt+Q se reasigna a `Cmd+Q'.

0voto

siva Puntos 23

Asegúrate de añadir ese autógeno antes que los demás:

Orden de <autogénico>

Caso básico
KeyRemap4MacBook aplica sólo la primera coincidencia <autogen> .

Fuente: https://pqrs.org/macosx/keyremap4macbook/xml.html.en


Intenta

<autogen>
  __KeyToKey__
  KeyCode::Q, VK_COMMAND | ModifierFlag::NONE,
  KeyCode::Q, ModifierFlag::COMMAND_L
</autogen>

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X