1
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

Organization

リモートワークでもどうしてもコピペがやめられない人のためのMacの設定

リモートワークによってMacBookから会社のWoindowsへリモートデスクトップ接続しなければならない事情もありノーカスタマイズでは生きていけなくなってしまいました。MacBookを使っていてもWindowsと同じように Ctrl+c Ctrl+v を迷いなく使うための設定方法をまとめます。

はじめに

基本的には @qyen さんの書かれている 『WindowsユーザーがMacOSでRemoteDesktop越しにWindowsを扱うときのキーマップ』 の内容そのままで実現できたのですが、私の環境に合っていない部分があったので備忘のために改めて書き残します。

業務環境

参考までに私が仕事しているPC環境についてまとめます。Macをメインで使いつつも、Winodwsを使わざるを得ないシーンがあることが問題を生み出しています。

  • メイン:MacBook Pro
    • 自宅のリモートワークで使用
    • 外付けで日本語109キーボード(私はRealforce派)使用
    • VPN経由でオフィスのWindowsへリモートデスクトップ接続するケースあり
  • サブ:WindowsのデスクトップPC
    • オフィスのデスクに残されたままのPC
    • スプレッドシート化されていないExcelなどの過去のドキュメントの参照と編集
    • 諸事情によりWindowsのローカルに構築しているちょっとした作業環境
  • 接続アプリ: Microsoft Remote Desktop Beta
    • 諸事情によりAppStoreに公開されているMicrosoft Remote DesktopではなくBeta版を使用

問題点

私のように物心ついたときには左手小指を軸に Ctrl+c Ctrl+v でコピペをしていた人間はMacの環境でも左手小指を軸にコピペがしたいのですが、Mac(の初期設定)とWindowsでコピペに互換性がないことが問題を複雑にしています。

  • Macの場合はコピペに command を使う
  • Macのキーボードは、Windowsでコピペするときの Ctrl の位置に command ではなく Caps Lock がある
  • Macからリモートデスクトップ接続してWindowsでコピペするときはMacの control がWindowsの Ctrl になる

事前準備

はじめに、おなじみの Karabiner-Elements をインストールしておきます。Karabiner-ElementsはMacのキーボードをカスタマイズするソフトウェアです。

参考:快適キーボード操作のためのキーカスタマイズ ~Mac編~

Macのキーボード設定

まずはMacローカルで作業するときにWindowsと同じ感覚でコピペできるようにします。

ちなみに、Macローカルだけなら システム環境設定>キーボード装飾キー からもキーボードの動作を変更できますが、これだけではリモートデスクトップ時の問題が解決できないので、混乱回避のためシステム環境設定はいじらず、なるべくKarabiner-Elementsにまとめて設定する戦略をとりました。

MacBook本体のキーボード設定

MacBook本体でWindowsの感覚でコピペできるように左下のキーを変更します。

  • 左下の Caps Lockcommand に変更

image.png

日本語109外付けキーボードの設定

外付けキーボード(繰り返しますが私はRealforce派)でもWindowsの感覚でコピペできるようにします。Macのコピペは Ctrl ではなく command を使うので、109キーボードをMacにつないだ状態でWindowsと同じようにコピペするには Ctrl キーを command に置き換える必要があります。あとはお好みですが私の場合は109キーボードの Caps Lock無変換変換 などはMacに合わせて動作するようにしています(要は左下のキーでコピペできればあとはMacのままでいい)。

  • 左下の Ctrlcommand に変更
  • Caps Lock はMacに合わせて control に変更
  • 無変換英数 に変更
  • 変換かな に変更

image.png

Remote Desktopの設定

これで完璧なコピペマスターと思ったところでしたが、残念ながらリモートデスクトップ接続した途端にまたMacとWindowsの互換問題の闇に襲われます。

リモートデスクトップ接続時だけキーを入れ替える設定

前述のMacのキーボード設定によってMacBook本体と外付けキーボード(私の場合は(ry)の左下のキーはすべて command が割り当てられています。これをリモートデスクトップ接続時だけ Ctrl に置き換えれば問題は解決します。これはKarabiner-Elementsの「Complex modifications」で設定できます。

image.png

左下の「Add rule」ボタンを押して、「Import more rules from the Internet(open a web browser)」を押すとブラウザが立ち上がります。

image.png

このサイトではComplex modificationsの代表的な設定パターンがあらかじめ公開されていて、自分が導入したいものを選んで自分の環境にImportすることができます。

karabiner-elements-complex_modifications

実はこのサイトに「Remote Desktop」というメニューが公開されていて、「リモートデスクトップ接続時だけ commandCtrl に置き換える」という、まさにやりたいことが実現できます。

image.png

ただ、私が使っているのは「Microsoft Remote Desktop Beta」なので残念ながらこの設定をImportしてもやりたいことが実現できません。そこで、この「Remote Desktop」を「Microsoft Remote Desktop Beta」向けにさらにカスタマイズします。Importの横のボタンでメニューを開き、「Edit JSON(Open external site)」を選択します。

image.png

Complex modificationsの設定はJSON形式で記述します。中身の仕様さえ理解できれば自分で好きなようにカスタマイズできます。今回は「Microsoft Remote Desktop」向けに設定している内容を「Microsoft Remote Desktop Beta」向けに書き直せば良いわけです。中身を見てみると「Bundle Identifiers」にそれらしき設定があります。com\.microsoft\.rdc\.mac となっている部分を com\.microsoft\.rdc\.osx\.beta に書き換えます。

image.png

同様の記述が4箇所ほどあるので全て同じように書き直して、「INSTALL!」ボタンを押してカスタマイズした内容を自分のKarabiner-Elementsに取り込んで最後に「Enable」にすると設定完了です。

image.png

「Complex modifications」の「Enabled rules」に反映されています。確認できたらリモートデスクトップ接続して Ctrl+c Ctrl+v をお楽しみください。

image.png

なお、キャプチャの画面では既存の設定と混在しないように Modification Title1st Rule Description も変更しています。参考までに書き換え版のJSONファイルをGistに置いておきます。

参考:Swap command and control (for MRD Beta)

ちなみに、「Microsoft Remote Desktop Beta」向けに書き換えた「Bundle Identifiers」はアプリを一意に特定する識別子です。アプリのパッケージの内容を表示して確認することができます。

参考: Bundle Identifierを確認する - はらふじ備忘録

おまけ:Windowsのレジストリ変更

Macからリモートデスクトップ接続するとなぜか英語キーボード判定されてしまう問題もあります。この問題はWindowsのレジストリを変更することで解消します。合わせて設定しておけばリモートワークでも穏やかなコピペライフが訪れることでしょう。

参考:MacからWindowsへのリモートデスクトップでJISキーボードを認識させる - Qiita

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
1
Help us understand the problem. What are the problem?