Mac Mission Incomplete

と、そういうわけで、Mac の Mission Control 機能を使うことで、Mac と Windows と、ついでに Linux を、サクサクっと切り替えられるようになりました。こんな感じ↓

Mission Control を呼び出したデスクトップスクリーン

上の画像のスクリーン(これはMacのデスクトップ画面です)の上部にある帯の部分(以下、リボンと呼びます)が Mission Control の制御画面です。拡大するとこんなふう↓

Mission Control のリボン(デスクトップサムネール一覧)

各デスクトップのアイコン(ライブなサムネール)のキャプションにあるように、左が実Macのデスクトップ、中央がVNC経由でのWindowsのリモートデスクトップ、右がVMwareの上に乗せたLinux仮想マシンのデスクトップです。

フルスクリーン状態にしたVNCやVMの画面を通常ウィンドウ状態に戻すのにも、このリボンの中で、サムネールの左上隅をクリックすればOKです(下記のようにドラッグ・アウトしてもOK)。もう「仮想デスクトップ全画面モードから抜けるホットキーを忘れた…」というような窮地はなくなります。ゲストマシン側に何かをインストールする必要もありません。

フルスクリーン状態のON/OFF

仮想デスクトップは普通フルスクリーンで使いますから、そのために、仮想デスクトップのウィンドウ状態⇔仮想デスクトップのフルスクリーン状態、という切り替えをします。これをMisson Controlでやるのは単純です。

[A] ウィンドウをフルスクリーン化するには
 ①Mission Controlのリボンを開く
 ②ウィンドウをリボンにドラッグ・イン

[B] フルスクリーンからウィンドウに戻すには
 ①Mission Controlのリボンを開く
 ②スクリーンのサムネールをリボンからドラッグ・アウト

あきれてしまうほどカンタンですね。やはりMacOS X最高!です。

上記 [A] についてのちょっとした注意事項は、ドラッグ・インしてしばらく、追加が可能な状態になる(+印が出てくる)までに、時間がかかる(0.5~1秒程度、たぶん時間設定は可能)ということです。誤操作防止のためのディレイなんでしょうけど、イラチの誤操作を誘発しそうですね(笑)

Mission Control を開くにはデフォルトで Shift+上矢印ですが、ホットコーナーにマウスカーソルを移動するなどの方法もあります。

なお、上記はVNC(アプリ)とVM(アプリ)のウィンドウを例に書きましたが、操作手順は通常のアプリのウィンドウでも同様です。ですのでこれは一般的にアプリの「ウィンドウを最大化」して使い、「最大化した複数のウィンドウ間を渡り歩く」方法の、とてもスマートな置き換えなのだと思います。これは、十年前のMacにはありませんでした(←事実誤認[3])。大きな進歩です。

フルスクリーン化するとDockが非表示状態になりますが(それが自然ですが)、マウスポインタをスクリーン最下部に置けば、ひょっこりDockが出てきます。ただし、通常のアプリではスクリーン最上部にマウスポインタを置くと、隠れていたMacの天井帯(なんて呼ぶんでしょう?ドロップダウンするやつ)がぬっと現れますが、VNCアプリやVMアプリではそうなりません。

てことは、通常のアプリは最果てのマウスポインタ位置情報(イベント?)をスルーする、VNCやVMはそれも捕まえる、ということでしょうか。VMゲストOSがプアだと天井帯は出るので、ゲストOSが掴んでいるということかと思います。VNCは「コントロールキーのフォワードをしない」なんていうドラスティックなオプションでなく、「スクリーンの天井状態を知らせない」とすれば弊害も少なく汎用生は高いんじゃないかと思うんですが。

あのMac天井帯は、あれがないとアプリを外界と交渉させられないですから、普通の(フルスクリーン制御を必要としない)アプリでは必須ですね。ですがあの、Macの画面が10数インチだった時代の、今の一つのウィンドウより小さかった時代のコンセプトを未だに引きずっているという大間違いから脱却できないのは、Macの最大の弱みですね。マジ不愉快というか、肉体的に苦痛。先代の遺訓でもあるのかしら?

Macには、実にスマートでない部分が、あの天井帯、Dock、Finderにあります(一方、システム環境設定での集中管理は悪くないし、個別アプリからもインフェースを踏襲してるのは良いと思いますが)。最近のデフォルトの壁紙とか、MacMiniのデザインとか、「macOS」とか言う表記も嫌いです。そんなネーミングにはOSXより前のゲロ吐きOS(OS?)に似た匂いを感じます。退化です。センスの悪い(というか私が好きになったMacOSXとセンスの違う)リーダーが中枢に居るのかもしれません。そういう劣化は、旧称「Office 365」にも「Azure」にも「Google Sites」にも見られました。

Dockがアプリによらず常にアクセス可能、というならば、Mission Control は独自のリボンを持つのではなく、Dockに入れるという手もあったのではないかと思います。たとえばDockの中に仮想デスクトップコーナーがあり、その中のデスクトップアイコンをクリックすると切り替えられる、というような。通常のウィンドウアイコンのエリアからデスクトップコーナにドラッグするとフルスクリーン・デスクトップに切り替わるとか。まあ、Mission Control はもっと便利なことができるみたいだから、Dockに束縛されるべきじゃなかったとは思いますが。

デスクトップの切り替え方

デスクトップの直接切り替え(Mission Control画面に遷移しないで直接遷移する)を「コントロール+矢印キー」でやるのはあきらめました。リモートのデスクトップ上でコントロールキーを使わなければならない場面が多すぎるからです。ですが、ControlではなくShiftでやれば良いことがわかりました。どちらかと言えば、そっちのほうが好みです。

加えて、片手で頬杖をついてマウスだけで切り替えるという、ありがちな場面を想定し、以下の安直かつ副作用の無い手順を、わが社での標準作法としようかと思います

[C] デスクトップをマウスで切り替えるには
 ①ホットコーナーにマウスポインタを移動する
 ⇒Mission Controlのリボンが開く(ように設定しておく)
 ②リボンの中の所望のデスクトップをクリックする
 ⇒そのデスクトップが開く

Mission Control で、デスクトップ直接切り替えのためのキーを定義する方法に気づくのに少し時間がかかりました。デフォルトである「コントロール+矢印」というホットキーは、(私の場合) WindowsやLinuxで使う事が無いので、これだけをホスト(大家)である Macの Mission Control がピンハネしてくれるように設定できると良いのですが…

ただ、今回の作業で、Windowsでの日本語/英語入力の切り替えに、(私の大嫌いな)専用キーを使わないで済ます方法を薄々理解したので、その点は収穫でした。でも、Windowsで日本語入力を必要とすることは、今後無いか、激減するでしょうけど。

なお、ここに書いたことについて、「Linuxなら簡単にできる」とか「Windowsでもほにゃららすればできる」というような話には、あまり興味がありません。なにか手や労力を加えて良いなら、それはWIndowsとかが生まれるはるか前、30年前のX Windowの各種「ウィンドウマネジャ」の時代に既に出来ていたことです。私は工場出荷時のスッピン状態で出来ない事は評価できません。そもそも結論として、私にとっては「Macが最高」でなければならないからです(笑)

2020-0425 sato@izmoh


参考
[1] 画面の切り替え :https://support.apple.com/ja-jp/guide/mac-help/mh14112/mac
[
2] 画面のキャプチャ:https://support.apple.com/en-us/HT201361


まずWikipediaを見よ

Wikiを見たら「バーチャルデスクトップ」について、X Window, Windows, MacOS の歴史がちゃんと書いてありました↓

[3] Virtual desktop:https://en.wikipedia.org/wiki/Virtual_desktop
[4] 仮想デスクトップ: https://ja.wikipedia.org/wiki/%E4%BB%AE%E6%83%B3%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97#Windows

英語版(Mac OS Xの節)には以下のようにあります。

Beginning with Mac OS X 10.5 Leopard in late 2007, Mac OS X has shipped with native virtual desktop support, called Spaces, which allows up to 16 virtual desktops. It allows the user to associate applications with a particular "Space". As of Mac OS X 10.7 Lion, this functionality has been moved into Mission Control.

ああ、確かにそうでした。Leopard のそれそれ、自分も使ってましたよ。「Mission Control 」は Lion 以降とありますが、Lion の発売は 2011年7月だったそうです。

それはちょうど自分がMacから離れた時期です。あれ、でもこの画面を目の前で見た記憶があるし、Lionという名前も覚えてるんだけど… たぶん、その後最後に購入した MacBook Airがこれだったのかも…

日本語版(macOSの節)には「デスクトップでの作業効率を挙げるためのOS標準のソフトウェアとしては、Mac OS X v10.3から採用されたExposéがあった」とあります。

確かに、エクスポーゼも使ってました。ただ、当時はVMware(とFusion)のVMのデスクトップや、RealVNCの画面をそのまま、Mac上でフルスクリーンで使ってた記憶は無いですね。出来なかったのか、自分では必要性を感じなかったのか…

なんにしてもイマドキ「Mission Control がー!」って言ってる自分は、世の中に8年ばかり遅れているということでした。うーん、その割には、カスタマイズ機能がいまひとつこなれていないというか、Mac流に絞り込んでいるのか、他の機種に対する思いやりが無いのか… まあ、コントロール+矢印問題の件は、Mac よりも RealVNC のほうにより非があるとは思いますが。


調達請求(VNC)

[物品調達請求-仕様書]
件名: MacとWindowsのカンタン両刀使いに用いるソフトウェア一式
請求日: 2020-04-25 
請求者: 開発部 佐藤

1.概要

業務効率改善・生産性向上のために、従事者が快適に作業を行えるコンピュータ利用環境を整備する。快適性は個々の従事者の「好み」と「慣れ親しみ」に大きく依存する。精神衛生および人間工学に鑑み、従事者の希望を最大限尊重すべきである。本調達物品の使用者は強くMacを希望している。ただし顧客対応の面で Windows の使用が避けられない状況もある。そのため、利用者のフロントエンド側はMac として快適性を確保する一方、バックエンドにWindowsを稼働させ臨機迅速な使用を可能とする環境を構築する。必要となるハードウェア機材は既存のものを利用し、最小限のソフトウェアを追加することで所期の環境を実現する事とする。使用者の要望と事前調査に基づき仕様を以下の通りとする。

2.要望
  • 使っているMac と Windows (以下Win)をサクサク切り替えながら両方使いたい
3.前提
  • 既にMacとWinのマシンを持っている
  • 両者は高速なネットワークで通信できる
  • Mac側をフロントエンドとする(快適性の実現)
  • Win側の使用感には完璧を求めない
  • 妥当な必要費用は支出できるものとする(有償ソフト検討)
4.背景
  • Macが好き(Winは極力使いたくない)
  • Winでしか動かないソフトを使う必要もある
  • Winにしか接続できないハードを使う可能性がある
  • 開発するソフトがWinでも動くことを確認する必要がある
  • 実機として保有しているWinを遊ばせて置きたく無い
5.要件
  • ホットキーでサクッとMac と Win を切り替えられること
  • ソフトウェアだけで実現できること(KVMスイッチは使わない)
  • 十分なセキュリティが確保されていること
  • 費用は1万円以内としたい
6.解法
  • WinでVNCサーバを、MacでVNCクライアントを動かす
  • Macの仮想デスクトップとしてWin(VNCサーバ)のデスクトップを表示する
  • Macのホットキーで Mac と Win の仮想デスクトップを切り替える [補足資料]
7.品名
  • VNCサーバ: RealVNC社製「VNC Connect」
  • VNCクライアント: RealVNC社製「VNC Viewer」
    *選定理由: 以前長く無償で使っていて快適だったから。感謝も込めて
8.費用
  • VNCサーバ: $4.59 / 月(1サーバあたり)[1]
    LAN上で直結して使用するため、これを許容する「Enterprise Edition」とする
  • VNCクライアント: $0 [5]
9.納期
  • 決済後1時間以内
10.納品
  • 使用者はRealVNC社サイトから上記7のソフトウェアをダウンロードする[2]
  • 使用者は同製品の無償試用期間(30日間 [3])の間に利用上の問題が無いことを確認する
  • 管理者はRealVNC社サイトでサブスクリプション契約を結びライセンスキーを得る[4]
  • 使用者はライセンスキーをプログラムに設定し、本格使用を開始する
11.特記事項(追記)
  • 短期的な解決の望めない不具合が発見された場合、また、より優れた他製品が見出された場合の移行を考慮し、月払いでのサブスクリプションとする。

以上


[補足資料](使用者作成)

本件請求に先立ち、RealVNC社サイトより当該ソフトウェアをダウンロードして試用し、実現性を検討しました結果、以下のように技術面の問題無し、と判断しました。

  • 導入:まず、インストールやユーザ登録は特に問題なく行えました。以前に使用していたこともあり、サーバとクライアント間の接続もカンタンでした。
  • 機能:次に、Macのマルチデスクトップ機能「Mission Control [6]」を使って、別の仮想デスクトップエリアにWinのデスクトップを表示することができました。ただ、そこまではスムーズに運んだのですが、ここで以下の1.に詳述する問題に遭遇しました。しかし、使い易さを損ねないで回避する方法も見つかったため、これに関しても問題ありません。
  • 性能:Mac / Win 両機が1Gbpsで直結している事もあり、使用していて違和感はありません。ウィンドウのドラッグ時にわずかにカクカク感がありますが(これは10年前も同じ環境で同じ様子でしたが)、プログラムや文書の作成用の仕事環境としては十分です。小画面であれば動画再生も滑らかで、Skypeテレビ会議程度には使える品質です。ネットワーク負荷としては、タスクマネージャによる簡易測定ではおおむね100Mbps以下で、ギガビットLANにとって問題ありません。同様にCPU負荷についても、4GHz動作において最大時20%程度であり、問題ありません。

なお、当該ソフトウェアの導入により以下の2. に挙げるようなメリット・発展性が、直接・間接的に生まれる事も考えられ、本調達は極めて有意義であり、コスト効果が高いと考えます。

*** 詳細 ***

1. 問題点と回避策

1)デスクトップの切り替え

[問題]
Mission Controlでは複数の仮想デスクトップを切り替えるホットキー(ショートカット)として「コントロール(^)+矢印キー」を使う。例えば「^→」で右にあるデスクトップに移動する、とか。ところがそうしてWinの(VNC経由のリモートの)デスクトップに切り替えると、コントロールキーもVNCを通じてWinに転送されてしまうため、Mission Control向けの「Control+矢印キー」が効かなくなり、Macの(ローカルの)デスクトップに戻れなくなってしまう。

[回避策]
ショートカット(ホットキー)を変更すれば良い。Mission Controlの呼び出しキーはデフォルトで「^↑」だが、これは「システム環境設定」により、コントロールキーを使わないように定義できる。たとえば「 Shift+矢印」にする。実のところ、コントロールよりShiftのほうが押し易く望ましい。設定は、実にMacらしいWISIWYGというか例示で行う[7]。
 また、Macでは画面の四隅(ホットコーナー)にポインターを置いた場合のアクションとして、Mission Controlを呼び出すようにもできる[8]。

2.導入のメリット

本製品の導入には同時に、今後においても、以下のメリットがあると考えられる。

  • バックエンド(リモート)のマシンを自由に増やせる(ただしサーバ費用は増える)
  • Linux にも使える(ただしLinuxが仮想マシンの場合には必要性は薄い)
  • テレビ会議にも有効利用できる可能性がある
  • モバイル端末でも使用でき、出先等からも利用できる
  • ウェブサーバ代わりに使用できる可能性がある(パラパラ漫画放送、ファイル配信、等)
  • Windows側も仮想デスクトップとして、個別ユーザ専用の画面を提供できる可能性
  • リモートに参加型の実機デモができる

[1] 価格:https://www.realvnc.com/en/connect/pricing/
[2] ダウンロード:https://www.realvnc.com/en/connect/download/vnc/
[3] 試用期間:https://www.realvnc.com/en/connect/trial/
[4] ライセンスキー:https://help.realvnc.com/hc/en-us/articles/360002249677-Licensing-VNC-Connect-
[5] VNC Viewer: https://www.realvnc.com/en/connect/download/viewer (is always free)
[
6] Macの仮想デスクトップ切り替え: https://support.apple.com/ja-jp/guide/mac-help/mh14112/mac
[7] Mission Control ショートカットキーの切り替え:システム環境設定 > 左ペインでMission Controlを選択 > 右ペインで変更したいショートカットの行を選択 > 行の右半分に表示されている現在のショートカットキー部分をクリックすると入力窓が開く > 新しいショートカットキーを実際に押す。
[8] ホットコーナーへの機能割り当て:各アプリの設定の中にある。この場合、システム環境設定 > Mission Control の中にホットコーナー設定の入り口がある。ここに一部のショートカットキーの設定があるため、[7] に気づかず往生した。



開発部 佐藤さま

いつもお世話になっております、経理の佐藤です。
先に提出されました調達申請につきまして、3点不明なところがありますので、補足をお願いします。
(1)費用の妥当性
仕様書の4項に「妥当な費用」とありますが、8項に示されている毎月$4.59が妥当であると判断される理由をお聞かせください。
(2)VNC選定理由
仕様書の7項にて特定の社の製品を指定されていますが、同様な機能(VNC)について他社製品と比較された結果をお聞かせください(書かれている理由が客観性に欠けます)
(3)KVMの排除
KVMスイッチと思しき機材をお持ちとお見受けしますが、それを利用しない理由をお聞かせください。

よろしくお願い申し上げます。
経理部 佐藤


経理部 佐藤さま

いつもお世話になります、佐藤です。
いただいたご質問にお答えします。
(1)費用の妥当性
費用はおおよそ月500円ですが、これは中ジョッキ一杯弱分に過ぎません。また、1日あたり20円弱ですが、これはうまい棒約2本分です。日常生活において大人から子供まで気軽に消費している金額であり、当社の基幹・開発業務のためにさく額として全く妥当あると判断しました。なお、例のSPAMドメイン押し売り会社レンタルサーバのクソソフト(ウェブ編集ツール)の月間使用料900円につきましては、先日解約手続きのお手数をおかけし、申し訳ありませんでした。
(2)選定理由
仕様書の第1項にも書かれていますが、この選定は第一に精神衛生上の理由に基づきます。精神衛生は創造性・生産性を支配しますが、それは好き嫌いに左右されます。好き嫌いにはかなずしも客観的理由は伴いません。Unixを産んだAT&Tのベル研究所へのリスペクト、MIMEのベルコア、RealVNCの源流もまたAT&Tの研究所、論理的ではありませんが、好きな理由はおそらくそのあたりにあります。第二に、使用者は過去にこのソフトウェアの旧版を長期にわたって利用しており、使い方に習熟しています。そして機能も性能も必要に十分としています。もし他社において何らかの面でより優れた製品があっても、おそらくそれは当社にとっては不要であり、それに習熟するために時間的コストを割くのは無駄です。以上をもって選定の理由とさせてください。
(3)KVMの排除
手元にあるスイッチはHDMI用ですが、実は手元のWin機(Lenovo)にはHDMIがなく、Display Portです。ですので、物理的に不可です。モニタ側はHDMIとDisplay Portを持っていますが、切り替えに数秒かかり、使用に絶えません。また、マシンとモニタを近くに置けない場合もありますが、その場合有線のKVMでは対応できません。無線のKVMはお高いので、当社の方針に合わないと思います。今回調達するソフトウェアは、安価なソフトウェアによる無線KVMであるとも言えます。

よろしくお願いいたします。
佐藤


経理部 佐藤さま

お疲れ様です、社長室の佐藤です。
本調達案件につきまして、社長の決済が降りましたので、進めてください。
よろしくお願いいたします。

社長室 佐藤


Mission Control で Control key を使わない(かといってファンクションキーも嫌)方法につまづいていましたが、システム環境設定の中のキーボード設定のほうに、Mission Control のショートカットを変更する機能がありました。デフォルトの Control+矢印を、Shift+矢印に変更して、今は幸せです。

各位

開発部、佐藤です。
先に提出しました RealVNC Viewer 調達申請の件ですが、一旦保留とさせてください。対象とする当社Lenovo機はWindows 10 Pro搭載であり、Windows の Remote Desktop サーバ機能を持つため、これにMacから接続して評価しました。そうしましたところ、使用感的にはRealVNCと同等以上、ネットワーク負荷的には数分の1であることがわかりました。Mac版のRemote Desktopクライアント(Microsoft Remote Desktop 10)は無償で提供されている点も有利です。もうしばらく使用してみて問題が無いようなら、こちらを使うこととし、RealVNCの調達は取り下げたいと思います。

よろしくお願いいたします。
佐藤
2020-0427


付記
試用・比較の結果、Remote Desktop が当面の使用目的に対してに機能・性能的に十分であることが確認されたため、本件(RealVNC調達)は取り下げられた。