最高のマウスジェスチャーアプリ見つけた!プログラミングでコマンド登録する CREVICE 4

更新日: 公開日:2020/07/13
プログラムできるマウスジェスチャーアプリ CREVICE

僕がマウスジェスチャーに求めるものは次の4つ。

  • ブラウザ固有ではなく Windows 10 全体で使える
  • アプリごとに固有の設定ができる
  • 設定のエクスポート&インポート機能あり
  • 理想は好きにカスタマイズできるアプリ

理想を追ってマウスジェスチャーツールを探し続けた結果、ついに全ての要件を満たす神がかったアプリを見つけてしまった。そのアプリがこちら。

Crevice 4 マウスジェスチャー
Crevice 4 マウスジェスチャー
フリーソフト

作成者は、るびゅ (@ruby_u) さん。

マウスジェスチャーとは?

マウスの右クリックを押しながら描いた軌道に応じてショートカットコマンドを発行する機能を持つ、それがマウスジェスチャーアプリの特徴です。

つまりこういうこと。

マウスの軌道に応じてショートカットキーが発行される

アプリに応じて細かく設定すれば、作業効率が格段に向上します。そしてわざわざたくさんのボタンがついた高性能なマウスすら不要になります。

CREVICE 4 のすごいところ

コマンド登録はプログラミングで記述

CREVICE は無駄を省いたコンパクト設計なアプリなので、余計な機能が一切ありません。そもそも設定画面が存在せず、用意されたテキストファイルに C# でプログラムを記述してコマンドを登録します。

もうこの時点でマニア向け一直線なアプリ確定ですが、プログラミングなんて書けないし読めない人でも使えるように、サンプルプログラムを用意しておくので、ぜひ最後までご覧ください。

プログラムといっても構造は難しくありません。コマンドを仕掛けたいアプリを変数に登録して、その変数に対して1つずつコマンドを登録する。それだけです。

Crevice 4 のプログラム構造

ブラウザ、エクスプローラー、テキストエディタ、画像編集ソフト、動画編集ソフト、Word、Excel 等、どんなアプリにでも対応できる万能なマウスジェスチャーです。

なお JavaScript や PHP のように、少しでも何かしらのプログラム言語に触れた機会があれば、記述方法を真似るくらいは簡単にできると思います。ちなみに僕はここで使われている言語 C# は全くの未経験者です。

なお英語のみですが、公式ドキュメントも用意されています。

バックアップが簡単

必要なのはソフトウェア本体と、プログラムが記載されたファイル default.csx 1つのみ。他のパソコンに同じマウスジェスチャーの設定をしたい場合、このファイルをコピーするだけで実現できます。

  • バックアップはファイル移動のみ
  • 他のパソコンへの以降が簡単

Export も Import もコマンド入力不要。ファイルを移動するだけ。本当にシンプルです。

設定ファイルの格納場所はこちら。

%USERPROFILE%\Crevice4

エクスプローラーにそのままコピー&ペーストでアクセスできます。なおタスクバー右下にある Crevice のアイコンから [Open UserScript] を選択する方法もあります。

タスクバーから Crevice 設定ファイルのあるフォルダを開く

フォルダ内にはファイルが2つ。必要なのは default.csx だけで、末尾に cache がついたファイルは無視して OK です。

わかりやすいマウス軌道

マウスジェスチャーアプリを導入すると、右クリックを押下したままマウスを動かしたときの軌道が現れるようになります。実際に使ってみたほうが分かりやすいので簡単な説明に留めますが、マウスの移動が検知されるとピンク色になり、移動方向が変わるとこれまでピンクだった線は青く、そして検知された新しい方向の線はピンクで表現されます。

Crevice のマウス軌道

移動した情報が正しく検知されたか、わかりやすいのが良いですね。

CREVICE 4 のコマンド実装

初期設定で使えるジェスチャー

初期状態では次のジェスチャーが登録されています。

ジェスチャー
【右クリックを押しながら】
発行コマンド処理内容
ホイール ↑ 回転Ctrl + Shift + Tab前のタブに移動
ホイール ↓ 回転Ctrl + Tab後ろのタブに移動
マウス ↑ 移動Homeページの先頭に移動
マウス ↓ 移動Endページの末尾に移動
マウス ← 移動Alt + 前の画面に戻る
マウス → 移動Alt + 次の画面に進む
マウス ↑↓ 移動F5画面再読み込み(更新)
マウス ↓→ 移動Ctrl + Wタブを閉じる

対応しているのは各種ブラウザ (Chrome, Firefox, Opera, IE, Edge) および、通常の Windows エクスプローラーで動きます。

ブラウジングを快適にするコマンドを追加

WordPress や Gmail を始めブラウザ上で処理する機会が多く、初期設定のジェスチャーでは足りません。そこで標準的なブラウザのジェスチャーコマンドを追加します。

ジェスチャー
【右クリックを押しながら】
発行コマンド処理内容
マウス →↑ 移動Ctrl + T新しいタブを開く
マウス ↓← 移動Ctrl + Shift + T最後に閉じたタブを開く
追加するプログラム
// 右上に移動で新しいタブ
Browser.
On(Keys.RButton).
On(Keys.MoveRight, Keys.MoveUp).
Do(ctx =>
{
    SendInput.Multiple().
    ExtendedKeyDown(Keys.ControlKey).
    ExtendedKeyDown(Keys.T).
    ExtendedKeyUp(Keys.T).
    ExtendedKeyUp(Keys.ControlKey).
    Send(); // Open new tab
});

// 下左に移動で消したタブを戻す
Browser.
On(Keys.RButton).
On(Keys.MoveDown, Keys.MoveLeft).
Do(ctx =>
{
    SendInput.Multiple().
    ExtendedKeyDown(Keys.ControlKey).
    ExtendedKeyDown(Keys.ShiftKey).
    ExtendedKeyDown(Keys.T).
    ExtendedKeyUp(Keys.T).
    ExtendedKeyUp(Keys.ShiftKey).
    ExtendedKeyUp(Keys.ControlKey).
    Send(); // Reopen previously closed tab
});

プログラムの追記は default.csx ファイルをテキストエディタで開いて、上記の内容をそのまま末尾に記述するだけで OK です。

プログラミング初心者の方は、設定ファイルのバックアップをとってから追記しましょう。間違って更新しても、元に戻せるようにしておくのが大切です!

Excel 用に実装したプログラム

頻繁に利用するものをジェスチャープログラムで動くようにしました。ブラウザと同じ操作性で実装しているのがポイントです。

ジェスチャー
【右クリックを押しながら】
発行コマンド処理内容
ホイール ↑ 回転Ctrl + PageUp前のシートに移動
ホイール ↓ 回転Ctrl + PageDown次のシートに移動
マウス ↑ 移動Ctrl + Homeシートの先頭に移動
マウス ↓ 移動Ctrl + Endシートの末尾に移動
Excel 用プログラム
// Gestures for Excel
var Excel = When(ctx =>
{
    return ctx.ForegroundWindow.ModuleName == "EXCEL.EXE";
});

// 前のシートに移動
Excel.
On(Keys.RButton).
On(Keys.WheelUp).
Do(ctx =>
{
    SendInput.Multiple().
    ExtendedKeyDown(Keys.ControlKey).
    ExtendedKeyDown(Keys.PageUp).
    ExtendedKeyUp(Keys.PageUp).
    ExtendedKeyUp(Keys.ControlKey).
    Send();
});

// 次のシートに移動
Excel.
On(Keys.RButton).
On(Keys.WheelDown).
Do(ctx =>
{
    SendInput.Multiple().
    ExtendedKeyDown(Keys.ControlKey).
    ExtendedKeyDown(Keys.PageDown).
    ExtendedKeyUp(Keys.PageDown).
    ExtendedKeyUp(Keys.ControlKey).
    Send();
});

// シートの先頭に移動
Excel.
On(Keys.RButton).
On(Keys.MoveUp).
Do(ctx =>
{
    SendInput.Multiple().
    ExtendedKeyDown(Keys.ControlKey).
    ExtendedKeyDown(Keys.Home).
    ExtendedKeyUp(Keys.Home).
    ExtendedKeyUp(Keys.ControlKey).
    Send();
});

// シートの末尾に移動
Excel.
On(Keys.RButton).
On(Keys.MoveDown).
Do(ctx =>
{
    SendInput.Multiple().
    ExtendedKeyDown(Keys.ControlKey).
    ExtendedKeyDown(Keys.End).
    ExtendedKeyUp(Keys.End).
    ExtendedKeyUp(Keys.ControlKey).
    Send();
});

拡張性は無限大

基本的な仕組みを理解できれば、あとは自身の用途に応じて拡張するだけです。上記の例ではブラウザ向けの機能拡張と Excel 向けのジェスチャーを実装してみました。この程度であれば C# の予備知識がなくても、プログラミング経験者であれば難なく実装できると思います。

使用頻度が高いアプリであればあるほど、マウスジェスチャーの実装で作業効率が向上するのは間違いありません。掘り下げればもっと複雑な処理を組み込めそうなので、これからどんどん拡張させていくのが少し楽しみになっています。

プログラミング未経験者にはハードルの高いソフトウェアなので、万人におすすめできません。それでも僕自身は、C# の勉強を0から始めようかと思うほど拡張性の高さに惹かれています。まずは公式ドキュメントを読み解くところからスタートですね。

機能がある程度拡張できたら、またサンプルプログラムとして紹介しようと思います。

以上、プログラミングできるマウスジェスチャーアプリ CREVICE 4 の紹介でした。

この記事をシェアする

最新情報は Twitter、Facebook、Freedly にてお届け!

NJ-CLUCKER RSS

このブログの運営者

NJ

元システムエンジニアから、個人事業主として独立。Web サイト運営、動画制作など活動の場を広げています。このブログでは、困ってたどり着いた人に、分かりやすく答えを提供できるように心掛けています。

更新情報は、Twitter や Facebook ページを参照ください。フォローお待ちしています。

おすすめページ