MacOS版 Microsoft Remote Desktop の JIS → USキーボード問題を Karabiner-Elements で解決
【2024/10/19 追記】
Windows11 のファイルダイアログで Shift + F1 を入力すると、エクスプローラのヘルプが起動してしまうようになったため Shift + F2 で登録するとよいです
【2020/5/16 追記】
Microsoft Remote Desktop Ver.10.3.10 で、下記のキーボード問題は解消されたようです
コレ、前からダメだったっけ?と思いながら検索すると、ストアにある Parallels RDP Client で接続するのが定番らしく、早速インストールして、しばらく使ってみたが ctrl + tab が効かない等、個人的に許せない箇所がポツポツと...
で、純正の Microsoft Remote Desktop (記述時点で ver. 10.3.9)で何とかしようとした話
まず、Keyborad Mode を Scancode から Unicode へ切り替えると、なんと記号がマトモに入るように!!

喜びもつかの間、日本語入力に切り替えた途端、文字がずれて全く使い物になりません(w
結局、 Karabiner-Elements と Karabiner-EventViwer でコツコツとキーを探して jsonを作成
下記の json は、よくある「かな漢字切り替え」のキーを Shift + F1 で切り替えるようにWindows側で設定しておいて、Macの「かな」キーを Shift + F1 へ変換するようにしています (↓Google 日本語入力の場合、各状態に Shift + F1 などを追加)


ので、別のキーへアサインしている方は、変更してください(一番最初の定義です)
また、一番最後の定義で shift +「ろ」(international1)でバックスラッシュを定義していますので、不要な方は消したりしてください。それ以外は、キーボードの記載通りのハズです
jis2us.json
- {
- "title": "JIS配列 → US配列変換(RDP)",
- "rules": [
- {
- "description": "かなキーIMEトグル(RDP)",
- "manipulators": [
- {
- "type": "basic",
- "description": "かなキーを Shift + F1 へ変換(RDP)",
- "from": {
- "key_code": "japanese_kana"
- },
- "to": [
- {
- "key_code": "f1",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- }
- ]
- },
- {
- "description": "JIS配列 → US配列変換(RDP)",
- "manipulators": [
- {
- "type": "basic",
- "from": {
- "key_code": "2",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "quote",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "6",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "7",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "7",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "quote",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "8",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "9",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "9",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "0",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "0",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "vk_none",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "hyphen",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "equal_sign",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "equal_sign",
- "modifiers": { "mandatory": [ ] }
- },
- "to": [
- {
- "key_code": "6",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "equal_sign",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "grave_accent_and_tilde",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "open_bracket",
- "modifiers": { "mandatory": [ ] }
- },
- "to": [
- {
- "key_code": "2",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "close_bracket",
- "modifiers": { "mandatory": [ ] }
- },
- "to": [
- {
- "key_code": "open_bracket",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "backslash",
- "modifiers": { "mandatory": [ ] }
- },
- "to": [
- {
- "key_code": "close_bracket",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "quote",
- "modifiers": { "mandatory": [ ] }
- },
- "to": [
- {
- "key_code": "semicolon",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "semicolon",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "equal_sign",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "quote",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "8",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "open_bracket",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "grave_accent_and_tilde",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "close_bracket",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "open_bracket",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "backslash",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "close_bracket",
- "modifiers": [ "shift" ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- },
- {
- "type": "basic",
- "from": {
- "key_code": "international1",
- "modifiers": { "mandatory": [ "shift" ] }
- },
- "to": [
- {
- "key_code": "backslash",
- "modifiers": [ ]
- }
- ],
- "conditions": [
- {
- "type": "frontmost_application_if",
- "bundle_identifiers": [
- "^com\\.microsoft\\.rdc\\."
- ]
- }
- ]
- }
- ]
- }
- ]
- }
※かなトグルの説明と画像が兼用なのをご了承ください
既に Karabiner-Elements を設定して利用している場合、Profilesから新しいプロファイルを作成してお試しください
- Karabiner-Elements のデータフォルダを開いて
- assets/complex_modifications に 上記の jis2us.json (UTF-8 であればファイル名は何でもよい)を作成またはコピペ
- Add rule を開いて
- JIS配列 → US配列変換(RDP) を Enable All で取り込む
jsonが正しくない場合ココに表示されません - 取り込まれて利用可能になるハズ
※jsonファイルを変更した時は、ここで Removeの後、再度取り込む必要があります
コメント