Karabiner-Elements
Complex Modifications から以下を設定する。
今回は右optionで矢印モードを設定する。
これをすることで矢印モード中は、ワンキーで矢印キーを使える。
通常モードは、Escかもう一度右optionを押すと、戻る。
youtubeで早送りしたいけど、fnに触りたくないときに便利。
{
"description": "Right Option toggles HHKB Arrow Mode; ; ' ] / become arrows; Esc exits",
"manipulators": [
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 0
}
],
"from": {
"key_code": "right_option",
"modifiers": { "optional": ["any"] }
},
"to": [
{
"key_code": "right_option",
"lazy": true
}
],
"to_if_alone": [
{
"set_notification_message": {
"id": "hhkb_arrow_mode",
"text": "Arrow Mode"
}
},
{
"set_variable": {
"name": "hhkb_arrow_mode",
"value": 1
}
}
],
"type": "basic"
},
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 1
}
],
"from": {
"key_code": "right_option",
"modifiers": { "optional": ["any"] }
},
"to": [
{
"key_code": "right_option",
"lazy": true
}
],
"to_if_alone": [
{
"set_notification_message": {
"id": "hhkb_arrow_mode",
"text": ""
}
},
{
"set_variable": {
"name": "hhkb_arrow_mode",
"value": 0
}
}
],
"type": "basic"
},
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 1
}
],
"from": {
"key_code": "semicolon",
"modifiers": { "optional": ["any"] }
},
"to": [{ "key_code": "left_arrow" }],
"type": "basic"
},
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 1
}
],
"from": {
"key_code": "quote",
"modifiers": { "optional": ["any"] }
},
"to": [{ "key_code": "right_arrow" }],
"type": "basic"
},
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 1
}
],
"from": {
"key_code": "open_bracket",
"modifiers": { "optional": ["any"] }
},
"to": [{ "key_code": "up_arrow" }],
"type": "basic"
},
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 1
}
],
"from": {
"key_code": "slash",
"modifiers": { "optional": ["any"] }
},
"to": [{ "key_code": "down_arrow" }],
"type": "basic"
},
{
"conditions": [
{
"name": "hhkb_arrow_mode",
"type": "variable_if",
"value": 1
}
],
"from": {
"key_code": "escape",
"modifiers": { "optional": ["any"] }
},
"to": [
{ "key_code": "escape" },
{
"set_notification_message": {
"id": "hhkb_arrow_mode",
"text": ""
}
},
{
"set_variable": {
"name": "hhkb_arrow_mode",
"value": 0
}
}
],
"type": "basic"
}
]
}