仕事効率化

【Mac作業効率化】 Karabiner-ElementsでFILCO Majestouch MINILAを再現 (MINILA Emulatorの紹介)

toshi

Karabiner-Elementsを使って、MacでFILCOのMajestouch MINILAを再現する設定「MINILA Emulator」を公開したので、その内容と導入方法を本記事で紹介する。

MINILAが好きな方は、そのMINILA愛を更に深めるために、本設定を活用して欲しい。
MINILAを知らない方には、是非、MINILA配列の素晴らしさを体感して頂けると幸いだ。

設定内容

設定内容は以下の図を見ていただくと分かりやすいと思う。

基本的には、MINILAのキー配置を踏襲している。

「英数」と「かな」をFnキー化

  • MINILAと同じく、親指ファンクションのレイアウト
  • ただし、JIS配列キーボードでしか使用できない (私がJIS配列のMacbookを購入した理由は、親指ファンクションのレイアウトが取れるからだ)
  • もしUS配列キーボードで本設定を使用するのであれば、スペースキーを代打に割り当てる事は可能。ただし、使い勝手はJIS配列が勝る。

左手 : Fn + E / S / D / F

  • カーソルキー
  • FPSの移動に使う【WASD】キーと1列ずれていると覚えると、覚えやすいかもしれない

右手 : 各種便利キー

  • Home :
    • Macの「control + A」(行または段落の先頭に移動) を割り当てた
    • MacのHomeキーはページトップに移動する役割で、WindowsのHomeとは意味が異なる。だが、頻繁に使用する便利キーはWindowsの方のHomeキーなので、それと意味がほぼ同じの「control + A」を使用した
  • End :
    • Macの「control + E」(行または段落の末尾に移動) を割り当てた
    • Homeと同様、WindowsのEndキーの意味を持たせるためである
  • Bs
    • Backspace、つまりMacではDeleteキーである
  • Del
    • Delete Forward、つまりカーソルの右側の文字を削除である
  • PgUp / PgDn
    • Page Up / Page Down の意味
  • Ins :
    • Insertキー
    • 正直あまり使わないが、たまに使うので入れてある

省いたキー

以下の3種は使用頻度が少なく、かつ誤爆した時に面倒なので、本設定からは抜いてある。

  • Ps/SR (Print Screen)
  • ScLk (Screen Lock)
  • Po/Br (Pause / Break)

また、各種ファンクションキー (F1、F2、・・・) も省いてあるが、こちらに関しては好みで追加しても良いと思う。

Karabiner-Elements自体のインストール方法

以前、本ブログに、Karabiner-Elements自体のインストール方法と、初期設定を記載したので、↓コチラを参考にして欲しい。

Karabiner-Elementsのインストールと初期設定方法まとめ

MINILA Emulatorの設定方法

公式サイトからインポートするだけで、使用可能になる。
私が作成したMINILAセットは、既にKarabiner-Elementsの公式サイトにアップロードされているので、以下の手順でインポート可能だ。

■Karabiner-Elements公式サイトにアクセス
Karabiner-Elements Complex Modificationsのプリセット集リンク

■「MINILA Emulator」の「Import」ボタンを押す

■Karabiner-Elementsアプリ上で、設定を有効化する

おまけ : Complex Modificationsのコード

設定コードは以下となる。
特になんの捻りもないコードなので、改造は簡単だ。
これを元に自分だけのMy Best MINILAを生み出すのも面白い。

{
    "description": "「英数」と「かな」キーで、Majestouch MINILA再現",
    "manipulators": [
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + S ▶︎ LEFT ARROW ",
            "from": {
                "key_code": "s",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "left_arrow" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + D ▶︎ DOWN ARROW ",
            "from": {
                "key_code": "d",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "down_arrow" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + E ▶︎ UP ARROW ",
            "from": {
                "key_code": "e",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "up_arrow" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + F ▶︎ RIGHT ARROW ",
            "from": {
                "key_code": "f",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "right_arrow" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + J ▶︎ Insert ",
            "from": {
                "key_code": "j",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "insert" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + K ▶︎ Home ",
            "from": {
                "key_code": "k",
                "modifiers": { "optional": ["any"] }
            },
            "to": [
                {
                    "key_code": "a",
                    "modifiers": ["control"]
                }
            ],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + L ▶︎ PageUp ",
            "from": {
                "key_code": "l",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "page_up" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + ; ▶︎ Delete (Backspace) ",
            "from": {
                "key_code": "semicolon",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "delete_or_backspace" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + M ▶︎ Delete Forward ",
            "from": {
                "key_code": "m",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "delete_forward" }],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + , ▶︎ End ",
            "from": {
                "key_code": "comma",
                "modifiers": { "optional": ["any"] }
            },
            "to": [
                {
                    "key_code": "e",
                    "modifiers": ["control"]
                }
            ],
            "type": "basic"
        },
        {
            "conditions": [
                {
                    "name": "MINILA_FN",
                    "type": "variable_if",
                    "value": 1
                }
            ],
            "description": " MINILA_FN + . ▶︎ PageDown ",
            "from": {
                "key_code": "period",
                "modifiers": { "optional": ["any"] }
            },
            "to": [{ "key_code": "page_down" }],
            "type": "basic"
        },
        {
            "description": " EISUU ▶︎ MINILA_FN ",
            "from": {
                "key_code": "japanese_eisuu",
                "modifiers": { "optional": ["any"] }
            },
            "to": [
                {
                    "set_variable": {
                        "name": "MINILA_FN",
                        "value": 1
                    }
                }
            ],
            "to_after_key_up": [
                {
                    "set_variable": {
                        "name": "MINILA_FN",
                        "value": 0
                    }
                }
            ],
            "to_if_alone": [{ "key_code": "japanese_eisuu" }],
            "type": "basic"
        },
        {
            "description": " KANA ▶︎ MINILA_FN ",
            "from": {
                "key_code": "japanese_kana",
                "modifiers": { "optional": ["any"] }
            },
            "to": [
                {
                    "set_variable": {
                        "name": "MINILA_FN",
                        "value": 1
                    }
                }
            ],
            "to_after_key_up": [
                {
                    "set_variable": {
                        "name": "MINILA_FN",
                        "value": 0
                    }
                }
            ],
            "to_if_alone": [{ "key_code": "japanese_kana" }],
            "type": "basic"
        }
    ]
}

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ABOUT ME
toshi
toshi
会社員, 組込みSW開発PM
社畜気味な会社員で、1児の父です。
組込みSW開発のプロマネをしています。
開発効率化のためのスクリプトも書いてます。
記事URLをコピーしました