MacとWindows共存/共用のために「変わらない操作性/インターフェイス」を目指してみた!
目次
ずっとwindows派でしたが、仕事や開発の都合により、Mac使用機会が増えてきました!
こちらの記事の通り、自分はずっとwindows派でした。Macも持っていましたが、しばらくはあまり使っていませんでした。それは、別にwindows信者だからという訳ではありません。Thinkpadのキーボードが好きすぎるからです。そのThinkPadのキーボードが使えるのが、windowsだけ。なので、windowsを多用してきました。(詳細はコチラの記事で)
しかし、仕事や開発を行うときには、どうしてもMacのほうが楽なことが沢山あるんですよね。詳細は省きますが、MacのほうがUNIXベースで設計されており、特にweb系の開発では圧倒的に環境構築がMacのほうが楽なんです。
ということで、MacでもThinkPadを使えるように頑張ってみました。また「windowsでもMacでも変わらない操作性/インターフェイス」というものを目指してみました。MacとWindowsを両方併用して使いこなしたい、という方に参考になればと思い、記事化してみました!
MacとWindows共存/共用の問題点:操作性が異なる
MacとWindowsを両方併用して使うときには、問題点があります。それは、操作性が違いすぎるという問題です。Windowsはマウス操作をベースにしたインターフェイス設計になっていますが、Mac特にMac bookではジェスチャー操作を重視したインターフェイス設計になっています。また、キーボードの配置などもかなり違います。下図のように、OSによって、全く別々の操作性になっています。
でも、よく考えると、操作性は別に違わせる必要ないですよね。機能は、MacとWindowsで違うのはしょうがないです。Windowsでしか出来ないゲームがあったり、Macでしか動かないソフトがあったり、それは仕方ないです。OSの個性です。でも、操作は別にwindowsとmacで違う必要はないんです。ここが違うせいで、MacとWindowsを共存/共用すると、かなり頭が混乱します。キー配置が違ったり、片方ではジェスチャー操作があったりと。この操作性/インターフェイスの違いはOSの個性とも言えますが、自分は問題点だと考えます。
問題解決:MacとWindowsで同じ操作性を目指す!
問題解決の手法は至ってシンプルです。下図のように、windowsでもMacでも同じ用に操作できるようにすることを目指しましたんです。具体的には「ポインティング操作」「キーボードによる文字入力操作」「キーボードによるショートカット操作(アプリ切り替え操作含む)」を統一することにしたんです。
今回目指した環境:Thinkpadトラックポイントによる快適ポインティングと、変換/無変換キーを使用したショートカットキーによる効率的操作の実現!
今回上記のようなWindowsとMacで共通的な操作/入力環境の構築を目指しますが、個人的なサブ目標があります。それは、1)Thinkpadのトラックポイントを使えるようにする、2)変換/無変換キーをショートカットキーに割り当てる、です。
1つ目の要件は、こちらで詳細に思いを記事化しています。Thinkpadのトラックポイントが最高に効率が良いため、Macでもどうしてもこのトラックポイントは使いたいのです。これはつまり、Macのトラックパッドのジェスチャーを使わないということです。もったいないと思う方いらっしゃるかと思いますが、問題ないです。何故なら、Macのジェスチャー操作より、Thinkpadのトラックポイントのほうが高速に思ったことを即座に実現できるからです(相当の慣れは必要ですが)
2つ目の要件は、コチラで記事化しています。簡単にいうと、「無変換」「変換」というキーボード上の一等地を占めるキーに、ショートカットを割り当てたいという要件です。実は文字変換はスペースキー一つだけでもできちゃうため、「無変換」「変換」って不要なんです。なので、「無変換+F」で「ブラウザ起動」といったように、自分はwindows上で「無変換」「変換」とその他キーの組み合わせで、文字入力やタスク切換えを実現しています。これがあまりにも快適すぎるので、Macでも同じ環境にしたいのです。でも、そもそもの問題として、Macには「変換キー/無変換キー」なんて無いんですけどね(笑)
具体的なMac側での対策
上記のような、「MacとWindows共存/共用のための変わらない操作性/インターフェイス」を目指すために、具体的にはMac側に以下のような施策を施しました。この結果、ほぼwindowsとMacで変わらない操作性を実現できました!
Thinkpadトラックポイントの操作統一:ステアーマウスの導入
Thinkpadのトラックポイントについては、実はMacに接続すると普通に使えます。マウスのように操作ができます。ただし、大きな問題があります。マウスの動きが、めちゃくちゃ遅いんです!しかもMacの標準機能ではスピードを変えられない様子です。
ということで、色々調べて、「ステアーマウス」というソフトを導入することにしました。このソフトは下図のように、マウスの速度や加速度を変えられます。上下のスクロールのスピードも自由自在に変えられます。これにより、ほぼwindowsと同じ操作感を達成することができました!ポインティングに関しては、Macでも問題なしです。
キーボード操作の統一1:CommandキーとControlキーの入れ替え
キーボードについては、少し難解でした。ThinkPadがwindows用のキーボードのため、少しキーボードが使い辛い状況です。これについては、Macの環境設定をいじることで対処できました。具体的には、下図のように「Commandキー」と「Controlキー」を入れ替えなどしました。詳細は省きますが、Macだと「Commandキー+Cでコピー」といった感じで、標準のキー配置だとやりにくいんですよね。だから逆転させたんです。これにより、例えば「コピー」「貼り付け」「アンドゥ」などといった操作が、windowsでもmacでも同じキー操作(Ctrl+C等)で実現できるようになりました。
キーボード操作の統一2:Karabinerによるショートカットキー登録
これがややこしい部分です。自分は上記の通り、「無変換」「変換」キーとその他キーを組み合わせて、アプリ起動や文字入力など様々なショートカット操作を実現しています。これには、AutoHotKeyというソフトを使用して実現しています。結構簡単にキー定義できて、非常に楽です(詳細はコチラの記事で)。しかし、MacにはAutoHotKeyがないんです・・・
そこで代替となる「Karabiner」というソフトを使いました。詳細は省きますが・・・このソフトは「キーの入れ替えを実現する」ソフトです。基本的には。なので、「無変換キー+F」⇒「ブラウザ起動」といったような、複雑なショートカット定義は、かなり大変です。そもそも、Macには無変換キーなんて無いですからね。それも問題です。とりあえず、こちらのQiitaの記事を参考にさせて頂き、なんとか実現できました。詳細は割愛しますが、下図のようにjsonという形で形式で定義することにより、実現できます。ですが・・・AutoHotKeyでは1行で済んでいた定義が、10行ぐらいの定義になってしまうので、かなりキツイです。はい。
↓定義の例です。これで1つのショートカットが実現できます。長い・・・
まとめ:MacとWindowsで「変わらない操作性/インターフェイス」を実現することで、Macにしか出来ないこと、Windowsにしか出来ないこと、両方を最大限に活用できちゃいます!
上記のような頑張りのおかげで、なんとか「MacとWindowsで変わらない操作性/インターフェイス」を実現できました。Windowsでしか実現出来ないと思っていた、Thinkpadによる快適入力環境が、Macでも実現できました。無変換キー/変換キーというMacにはないキーでも、ショートカットが登録できました。これにより、ほぼWinodwsでもMacでも同じように効率的に操作できるようになりました!
これで、大きな扉が開けた気がします。同時にMacとWindowsを使っても、全く混乱しなくなりました。シームレスにMacとWindowsを切り替えて、良いとこ取りが出来るようになったんです!Windowsに無理にUNIX環境を作って、無理やりapache的なサーバーを起動しなくても良くなりました。Mac使えば楽ですし。逆にMacだけを使うことで、「オフィス製品が使えない!」ということもないです。Winodwsを使えばよいだけなので。まさに、WindowsとMacの良いとこどりが出来る環境になりました!
ちなみに、Macとwindowsは隣同士に置いて、下図のようにUSBキーボードの接続先を変えることで、瞬時にMac⇔Windowsの操作切り替えができるようにしています。
↓切り替えボタンを押したりすることで、操作先のPCを切り替えられるようにしてます!
とりあえず、自分はこんな感じで、下図のような共通的な操作環境を実現してみました。参考になればと思います!今回はThinkpadを使った環境作りのお話になりましたが、windowsのキーボードを使うなら同じような設定が必要になるかと思います。是非、快適な環境を構築してみて、windowsとMacの良いと取りをしてみましょう!
⇒「PC作業効率化」カテゴリ記事一覧
その他関連カテゴリ