Ich möchte vier Sprachen in meinem OS X-System verwenden (Englisch, Spanisch, Chinesisch und Japanisch), und ich weiß, dass ich die Sprache mit ⌘
+ ändern kann Space
. Ich habe jedoch einen pathologischen Hass darauf, damit zu wechseln, weil ich aus so, so vielen Möglichkeiten wählen muss! Ich weiß auch, dass ich es über die Menüleiste rechts von der Leiste ändern kann, aber es ist viel ekelhafter als die ⌘
+ Space
-Lösung.
Also möchte ich es lieber mit einer einfacheren Verknüpfung ändern, wie die folgende:
⌘
wechselt zu Englisch⌘
wechselt zu Spanisch⌘
+ left ⌥
+ C
wechselt zu Chinesisch⌘
+ rechts ⌥
+ C
wechselt zu Japanisch.Karabiner
Ich habe versucht, (der Nachkomme von ) zu verwenden KeyRemap4MacBook
, aber es funktioniert nicht beim ersten Versuch auf Chinesisch, auf dem, wenn ich auf Chinesisch umschalte, es Englisch bleibt (das Eingabequellensymbol in der Menüleiste ändert sich, aber die Tastatur funktioniert nicht ). Aber aus irgendwelchen Gründen, wenn ich von Englisch auf Chinesisch auf Englisch auf Chinesisch umschalte (zwei Versuche), dann funktioniert die chinesische Tastatur endlich.
Daher gefällt mir die Idee der Verwendung nicht Karabiner
. Was ist also der bessere Weg, um die Eingangsquelle zu ändern?
Ich bin auf das gleiche Problem mit Chinesisch und Japanisch gestoßen. (Das Symbol in der Menüleiste hat sich geändert, aber die Eingangsquelle wurde nicht wirklich geändert, bis ich zu einer anderen Eingangsquelle und zurück gewechselt habe.) Laut einem Beitrag in Karabiners Mailingliste handelt es sich um einen bekannten Fehler :
Es ist einer der nervigsten Fehler von OS X.
Das Ändern von CJK-Eingabequellen direkt aus dem Programm wird nicht ordnungsgemäß gehandhabt.
Sie benötigen also die folgenden Verfahren.
Schritt 1:
Aktivieren Sie „Nächste Quelle im Eingabemenü auswählen“ (Befehl-Option-Leertaste) in den Systemeinstellungen > Tastatur > Verknüpfungen.Schritt 2:
Ändern Sie die Eingabequelle, indem Sie Befehl-Option-Leertaste senden.<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 ist von demselben Fehler betroffen.
Eine andere Problemumgehung besteht darin, einfach zu einer anderen Eingangsquelle und zurück zu wechseln:
<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>
⌘ ist eine "tote" Taste, eine Zusatztaste. Es macht nichts von alleine, aber da es zählt, wie oft es gedrückt wird, wäre das möglicherweise der Grund, warum es beim zweiten Versuch funktioniert.
Genauer gesagt ... warum sollten Sie verwenden, ⌘ um die Eingabesprache zu wechseln und damit die Verwendung für andere Funktionen zu eliminieren?
Warum nicht stattdessen F-Keys verwenden?
Eine bessere Lösung könnte eine von diesen sein ...
https://superuser.com/questions/224161/switch-to-specific-input-source
⌘
(Vielleicht haben Sie (Befehlstaste) mit der Apfeltaste
verwechselt ...?)⌘
es am einfachsten zu tippen ist und das Wechseln zwischen verschiedenen Sprachen so häufig vorkommt.Überprüfen Sie dies
schalten Sie mit einfachem Druck left_shift -> us, right_shift->ua
"rules": [
{
"description": "Right Shift to UA",
"manipulators": [
{
"from": {
"key_code": "right_shift",
"modifiers": {
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "right_shift",
"lazy": true
}
],
"to_if_alone": [
{
"select_input_source": {
"language": "uk"
}
}
],
"type": "basic"
}
]
},
{
"description": "Right Shift to US",
"manipulators": [
{
"from": {
"key_code": "left_shift",
"modifiers": {
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "left_shift",
"lazy": true
}
],
"to_if_alone": [
{
"select_input_source": {
"language": "en"
}
}
],
"type": "basic"
}
]
}
]
}
Blasard
⌘
+W
zum Schließen des Fensters), was definitiv nicht das ist, was ich will ... Was die erste Lösung betrifft, werde ich es später versuchen.Blasard
Blasard
__KeyOverlaidModifier__
oben genannten, aber ich habe die japanische und die spanische Eingabequelle gewechselt, weil die japanische Eingabequelle richtig funktionieren kann, wenn Sie sie in den Einstellungen von Karabiner im Abschnitt "Japanische Eingabequelle" festlegen. Danke für die Antwort.