¿Cómo cambiar la fuente de entrada a un idioma diferente con acceso directo (solo una combinación de teclas)?

1

Quiero usar cuatro idiomas en mi sistema OS X (inglés, español, chino y japonés), y sé que puedo cambiar el idioma con + Space . Sin embargo, tengo un odio patológico por cambiar con él, porque me obliga a elegir entre tantas opciones. También sé que puedo cambiarlo desde la barra de menú a la derecha de la barra, pero es mucho más desagradable que la solución + Space .

Así que prefiero cambiarlo con un atajo más fácil, como el siguiente:

  • la izquierda cambia a inglés
  • right cambia a español
  • la izquierda + la izquierda + C cambia a chino
  • derecha + derecha + C cambia a japonés.

Intenté usar Karabiner (el descendiente de KeyRemap4MacBook ), pero no funciona en el primer intento en chino, en el que cuando cambio a chino, permanece en inglés (el icono de fuente de entrada en el la barra de menú cambia, pero el teclado no funciona). Pero por algunas razones, si cambio de inglés a chino a inglés a chino (dos intentos), el teclado chino finalmente funciona.

Por eso no me gusta la idea de usar Karabiner . Entonces, ¿cuál es la mejor manera de cambiar la fuente de entrada?

    
pregunta Blaszard 19.09.2014 - 11:27

2 respuestas

3

Me encontré con el mismo problema con chino y japonés. (El ícono en la barra de menú cambió pero la fuente de entrada no se cambió realmente hasta que cambié a otra fuente de entrada y regresé). Es un error conocido según una publicación en la lista de correo de Karabiner :

  

Es uno de los errores más molestos de OS X.

     

El cambio de las fuentes de entrada CJK directamente desde el programa no se maneja adecuadamente.

     

Por lo tanto, necesita los siguientes procedimientos.

     

Paso 1:
  Active "Seleccionar la siguiente fuente en el menú de entrada" (comando-opción-espacio) en Preferencias del sistema > Teclado > Atajos.

     

Step2:
  Cambie la fuente de entrada enviando comando-opción-espacio.

<autogen>
  __KeyToKey__
  KeyCode::K, ModifierFlag::OPTION_L,
  KeyCode::VK_CHANGE_INPUTMODE_US,
  KeyCode::VK_WAIT_100MS,
  KeyCode::SPACE, ModifierFlag::COMMAND_R | ModifierFlag::OPTION_L,
  <!-- adjust wait for your machine -->
  KeyCode::VK_WAIT_10MS,
  KeyCode::VK_WAIT_10MS,
  KeyCode::VK_WAIT_10MS,
  KeyCode::SPACE, ModifierFlag::COMMAND_R | ModifierFlag::OPTION_L,
  <!-- adjust wait for your machine -->
  KeyCode::VK_WAIT_10MS,
  KeyCode::VK_WAIT_10MS,
  KeyCode::VK_WAIT_10MS,
  KeyCode::SPACE, ModifierFlag::COMMAND_R | ModifierFlag::OPTION_L,

  Option::NOREPEAT,
</autogen>

changeinput se ve afectado por el mismo error.

Otra solución es simplemente cambiar a otra fuente de entrada y volver:

<root>
  <vkchangeinputsourcedef>
    <name>KeyCode::VK_CHANGE_INPUTSOURCE_HIRAGANA</name>
    <inputsourceid_equal>com.apple.inputmethod.Kotoeri.Japanese</inputsourceid_equal>
  </vkchangeinputsourcedef>
  <vkchangeinputsourcedef>
    <name>KeyCode::VK_CHANGE_INPUTSOURCE_SPANISH</name>
    <inputsourceid_equal>com.apple.keylayout.Spanish</inputsourceid_equal>
  </vkchangeinputsourcedef>
  <vkchangeinputsourcedef>
    <name>KeyCode::VK_CHANGE_INPUTSOURCE_US</name>
    <inputsourceid_equal>com.apple.keylayout.US</inputsourceid_equal>
  </vkchangeinputsourcedef>
  <vkchangeinputsourcedef>
    <name>KeyCode::VK_CHANGE_INPUTSOURCE_CHINESE</name>
    <inputsourceid_equal>com.apple.inputmethod.TCIM.Pinyin</inputsourceid_equal>
  </vkchangeinputsourcedef>
  <item>
    <name>inputsources</name>
    <identifier>inputsources</identifier>
    <autogen>__KeyOverlaidModifier__ KeyCode::COMMAND_L, ModifierFlag::COMMAND_L | ModifierFlag::NONE, KeyCode::VK_CHANGE_INPUTSOURCE_US, KeyCode::COMMAND_L</autogen>
    <autogen>__KeyOverlaidModifier__ KeyCode::COMMAND_R, ModifierFlag::COMMAND_R | ModifierFlag::NONE, KeyCode::VK_CHANGE_INPUTSOURCE_SPANISH, KeyCode::COMMAND_R</autogen>
    <autogen>__KeyToKey__ KeyCode::C, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L | ModifierFlag::NONE, KeyCode::VK_CHANGE_INPUTSOURCE_CHINESE, KeyCode::VK_CHANGE_INPUTSOURCE_US, KeyCode::VK_CHANGE_INPUTSOURCE_CHINESE</autogen>
    <autogen>__KeyToKey__ KeyCode::C, ModifierFlag::OPTION_R | ModifierFlag::COMMAND_R | ModifierFlag::NONE, KeyCode::VK_CHANGE_INPUTSOURCE_HIRAGANA, KeyCode::VK_CHANGE_INPUTSOURCE_US, KeyCode::VK_CHANGE_INPUTSOURCE_HIRAGANA</autogen>
  </item>
</root>
    
respondido por el user495470 06.10.2014 - 14:53
0

es una clave "muerta", una clave modificadora. No hace nada por sí solo, aunque como cuenta la cantidad de veces que se presiona, posiblemente ese sea el motivo por el que funciona en el segundo intento.

Más al punto ... ¿por qué querría usar para cambiar el idioma de entrada, eliminando así su uso para cualquier otra función?

¿Por qué no usar F-Keys, quizás, en su lugar?

Una mejor solución podría ser una de estas ...

enlace

    
respondido por el Tetsujin 19.09.2014 - 14:14

Lea otras preguntas en las etiquetas