note63

事情

UbuntuでMagicTrackpadを使う

研究室に唯一置いてあるMacが2010年モデルのMac miniという惨状だったので仕方なくWindowsを消して、Linuxを入れようということになったのですがやっぱりMacのジェスチャーなしではストレスマッハだったので試行錯誤(というか資料を探して真似ただけ)してUbuntuにMagicTrackpadを対応させました。 日本語での資料があまりにも少なくて死にそうになったのでメモしておきます。

MagicTrackpadとBluetoothで通信する

まずはここからです。 Ubuntu標準のBluetoothマネージャーではうまく通信ができないらしいのでBlueman-Managerを入れて実行します。

$ sudo apt-get install blueman
$ blueman-manager

ちなみにいうとXubuntuでは標準で入っています。

Unityのジェスチャー設定を無効にする

Unityはデフォルトでいくつかのジェスチャーが割り当てられており、こちらでいくら設定してもUnityの設定が優先されるらしいのでソースからジェスチャー部分をコメントアウトしてビルドしてやる必要があります。

以下のページのSupported Gestureの欄にサポートされているジェスチャーが記載されています。もし、記載のジェスチャーで十分なのであればこれ以降の設定を行う必要はありません。

本題に戻って、以下のサイトを参考にUnityのジェスチャーを無効化します。

Unityのジェスチャーを無効化したあとで上記記事ではtoucheggを使っています。
toucheggはsynapticsのラッパーのようなものです。

僕はtoucheggの設定は以下のようにしました。

<touchégg>
    <settings>
        <property name="composed_gestures_time">0</property>
    </settings>
    <application name="All">
        <gesture type="DRAG" fingers="4" direction="LEFT">
            <action type="SEND_KEYS">Control+Alt+Right</action>
        </gesture>
        <gesture type="DRAG" fingers="4" direction="DOWN">
            <action type="SEND_KEYS">Super+s</action>
        </gesture>
        <gesture type="DRAG" fingers="4" direction="UP">
            <action type="SEND_KEYS">Super+w</action>
        </gesture>
        <gesture type="DRAG" fingers="4" direction="RIGHT">
            <action type="SEND_KEYS">Control+Alt+Left</action>
        </gesture>
    </application>
    <application name="Chromium-browser">
        <gesture type="DRAG" fingers="3" direction="RIGHT">
            <action type="SEND_KEYS">Alt+Left</action>
        </gesture>
        <gesture type="DRAG" fingers="3" direction="LEFT">
            <action type="SEND_KEYS">Alt+Right</action>
        </gesture>
    </application>
</touchégg>

普段3本指でドラッグ&ドロップしてるのでそれを実現したかったのだけどtoucheggの設定にあるTAP_AND_DRAGがうまく動かなくて断念。DRAGでいけたにはいけたけど感度高すぎて使えたもんじゃなかった。このへんはソースコードを直接編集すれば云々みたいなことが書かれていたけどさすがに時間がないので保留。