Seasons.NET

ちょっとした技術ブログです

MacとWindowsでシームレスにマウスとキーボードを切り替える

f:id:Seasons:20081103171541p:image
MacとWindowsをシームレスに切り替える方法として、
最初は、USB切り替えで対応してましたが、せっかくMacのワイヤレスキーボードを
手に入れたので、それをMacにつなげて使いたいと思いました。


今回は、Mac側のキーボードとマウスをサーバーにしてクライアント側で使ってみたいと思います。


ワイヤレスキーボードは、Bluetooth接続なので、
USB切り替えが利用出来ません・・・
なのでネットワーク経由(TCP/IP)を利用してキーボードとマウスを切り替える機構が必要なわけで・・・


あるのか?とTwitterでポストしていたら、
id:wraith13さんからSynergyってのがあるよ!!
と教えていただきました。

早速覗いてみたら、英語のサイト。
幸いな事に翻訳書ける前に翻訳してくださっているがありました。
こういう事って地味な作業なんですけどとってもうれしいですよね!!
Guide to Running Synergy(日本語訳:機械翻訳)


それではインストール方法:
●Mac側:キーボードとマウスが接続されている方(サーバー側)
1.MacOS版を落としてきます。
 展開すると、この中にサーバーとクライアントが入ってます。
 そして、以下3つのファイルが必要なので取り出して、適当な場所においておきましょう。
 f:id:Seasons:20081103185045j:image


2.この3つの内、必要なのは、synergysとsynergy.confでこの2つには以下の役目があります。
 ○synergy・・・サーバーソフト
 ○synergy.conf・・・サーバー設定ファイル


3.サーバー設定ファイルのsynergy.confを設定します。
 とりあえず今回は、MacとWindowsを接続しますから、以下のように設定します。


 Windows側は、T61。 
 Mac側は、MacbookProにします。
 この時、Macのマシン名をどこで設定するかというと、システム設定→共有で設定します。
 f:id:Seasons:20081103185046j:image


そして、気をつけてもらいたいのは、Mac側のマシン名は、設定ファイルに記載する時、
名前+.localをつけなくてはいけません。
これは知らなくてはまった・・・

# sample synergy configuration file
#
# comments begin with the # character and continue to the end of
# line.  comments may appear anywhere the syntax permits.

section: screens
	# three hosts named:  moe, larry, and curly
	keisukehata-t61:
	MBPro.local:
end

section: links
	# ここの設定は、画面端にきた時にどこマシンに切り替えるかを設定する
	# マシン名:
	# 画面端のキーワード(right,left等) = 切り替えたいマシン名
	# 
	#keisukehata-t61:
	#	right = MBPro.local
	#MBPro.local:
	#	left = keisukehata-t61
end

section: aliases
	# curly is also known as shemp
end

section: options
    keystroke(control+shift+F11) = switchToScreen(keisukehata-t61)
    keystroke(control+shift+F12) = switchToScreen(MBPro.local)
end

オプションを利用すると、さらにキーボードでマシンの切り替えを行う事も可能です。
私の設定では、Ctrl+Shift+F11,F12でそれぞれのマシンを切り替えています。
詳しくは、本家を見てください。
Synergy Configuration Guide


4.サーバー設定ができたら、サーバーを起動します。
起動コマンドは、ターミナルから、

synergys -f -c synergy.conf

で起動できます。デーモンで起動したい人は、オプションにデーモン用起動指定があるので
そちらを利用して下さい。


これでサーバーの設定はできました。
次にクライアントであるWindows側の設定をします。






●Windows側:キーボードとマウスを借りる方(クライアント側)
1.memo/Synergy - wiki@nothingからSynergyInstaller-1.3.1a-ja.exeをダウンロード、インストール
 ・これじゃないとWindows同士の場合\キーが送られないらしい。あとメニューが日本語化されているのでいいかも。
 ・オープンソースならではですね!!


2.画面の設定
 クライアント設定なので、上の設定をチェック入れます。
 f:id:Seasons:20081103191041j:image


3.接続テスト
 テストして、設定したコマンドやマウス画面端移動でマシンが切り替わるかどうか
 テストしてみて下さい。問題なければスタートを押して起動しましょう!!



【現状の問題点】
Windowsキーと何かを組み合わせたショートカットが使えない・・・orz
これはとても困りました・・・
OneNoteの画面取り込みがどうしても使いたい!!
時間なくてまだ完全に調べきれてません。


結局Windowsユーザーにとって、Windowsキーが使えないとOfficeで結構困ることが多かったので
私は今のところ2つのキーボードでがんばることにしましたが、このソフト自体、まだ発展途上であるのと
オープンソースなのでその気になれば自分で修正できます。



【参考になるサイト】
Synergyでキーボード、マウスを共有する