KEYTOKEY_AFTER_KEYUP に関して

41 views
Skip to first unread message

今冨悠一

unread,
Jun 25, 2016, 4:47:26 PM6/25/16
to Karabiner-ja
高山様

KEYTOKEY_AFTER_KEYUP に関して質問があります。



下記のパターンの動作を全て満たしたい
=========================================================
パターン1
------------------------------------
SEMICOLON(down)
Aキー(down) ここで処理1発火
Aキー(up)
SEMICOLON(up)

処理1
KeyCode::F5,
------------------------------------

パターン2
------------------------------------
SEMICOLON(down)
SEMICOLON(up) ここで処理2発火

処理2
KeyCode::TAB, ModifierFlag::OPTION_L
------------------------------------

パターン3
------------------------------------
COMMAND(down)
SEMICOLON(down)
SEMICOLON(up) ここで処理3発火
COMMAND(up)

処理3
KeyCode::E, ModifierFlag::COMMAND_R, ModifierFlag::SHIFT_R,
------------------------------------

パターン4
------------------------------------
COMMAND(down)
SEMICOLON(down)
Aキー(down) ここで処理4発火
Aキー(up)
SEMICOLON(up)
COMMAND(up)

処理4
KeyCode::F5,ModifierFlag::COMMAND_R,
モディファイの透過がしたい
MODIFIERFLAGS_ANYがしたい
------------------------------------
=========================================================

現在の設定
=========================================================
<block>
    <modifierstuck_only>
        ModifierFlag::OPTION_L
    </modifierstuck_only>
    <autogen>
        __KeyToKey__
                        KeyCode::S,
                        KeyCode::CURSOR_LEFT,
                        KeyCode::VK_STICKY_OPTION_L,
    </autogen>
    <autogen>
        __KeyToKey__
                        KeyCode::F,
                        KeyCode::CURSOR_RIGHT,
                        KeyCode::VK_STICKY_OPTION_L,
    </autogen>
</block>

<block>
    <modifier_only>
        ModifierFlag::S
    </modifier_only>
    <autogen>
        __KeyToKey__ KeyCode::A, KeyCode::F5
    </autogen>
</block>

<autogen>
    __KeyOverlaidModifier__
                KeyCode::SEMICOLON
                __{ KeyCode::VK_MODIFIER_S, }__
                __{ KeyCode::TAB, ModifierFlag::OPTION_L  }__
                KeyCode::VK_STICKY_OPTION_L,

                Option::KEYTOKEY_AFTER_KEYUP, ModifierFlag::COMMAND_R,
                KeyCode::VK_STICKY_OPTION_L_FORCE_OFF,
                KeyCode::E, ModifierFlag::COMMAND_R, ModifierFlag::SHIFT_R,
</autogen>
=========================================================

課題
=========================================================
パターン4の場合
SEMICOLONを先にupすると、
Option::KEYTOKEY_AFTER_KEYUP, ModifierFlag::COMMAND_R,
を発火させたくない

パターン4で、Aキー(down)をした場合
Option::KEYTOKEY_AFTER_KEYUP, ModifierFlag::COMMAND_R,
を発火させたくない
=========================================================

追記
=========================================================
このようにばらして設定するのが良いのでしょうか、、、
KeyCode::VK_MODIFIER_S2のようにするのは何か違うきがしています。
難しくてお手上げです、すみませんがアドバイスをお願いします。
<autogen>
    __KeyOverlaidModifier__
                KeyCode::SEMICOLON, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_COMMAND,
                __{ KeyCode::VK_MODIFIER_S2, }__
                __{ KeyCode::E, ModifierFlag::COMMAND_R, ModifierFlag::SHIFT_R,  }__
</autogen>

<autogen>
    __KeyOverlaidModifier__
                KeyCode::SEMICOLON
                __{ KeyCode::VK_MODIFIER_S, }__
                __{ KeyCode::TAB, ModifierFlag::OPTION_L  }__
                KeyCode::VK_STICKY_OPTION_L,
</autogen>
=========================================================

Takayama Fumihiko

unread,
Jun 26, 2016, 9:06:00 AM6/26/16
to 今冨悠一, osx-kara...@googlegroups.com
高山です。こんにちは。

かなり複雑な動作になってきましたね。
要件を見る限りでは、追記の通りに__KeyOverlaidModifier__を
別々に定義する必要があります。

最初のautogenは以下のようにすればVK_MODIFIER_S2は不要です。

<autogen>
__KeyOverlaidModifier__
KeyCode::SEMICOLON, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_COMMAND,
__{ KeyCode::VK_MODIFIER_S,
MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_COMMAND }__
__{ KeyCode::E, ModifierFlag::COMMAND_R | ModifierFlag::SHIFT_R, }__
</autogen>

--
Takayama Fumihiko <tek...@pqrs.org>

今冨悠一

unread,
Jun 26, 2016, 10:03:18 AM6/26/16
to Karabiner-ja, imatom...@gmail.com
高山様

返信ありがとうございます。

期待通りの動作になりました。
悩んでいたので解決できて良かったです。

いつもありがとうございます。




2016年6月26日日曜日 22時06分00秒 UTC+9 Fumihiko Takayama:

irita...@gmail.com

unread,
Jun 26, 2016, 8:15:04 PM6/26/16
to Karabiner-ja
ああばbcでfgひjklmのpqrsつvwxyz「」あおpqrっsつvwxyっっっzjkっlmんjklmのpqrstsっつvwxyzt




2016年6月26日日曜日 5時47分26秒 UTC+9 今冨悠一:
Reply all
Reply to author
Forward
0 new messages