SIKULIとは何でしょうか。オンラインゲームの補助プログラム(いわゆるチート)を使ったことがある人なら、有名なマクロツール「按鍵精靈」を知っているでしょう。キーボードやマウスの操作を自動化するツールです。Sikuli Script は、その按鍵精靈にとてもよく似ています(ただし、チートではありません)。Sikuli Script を使うと、とても簡単にプログラムを作ることができます。今の多くのプログラミング言語は完全にテキストベースのコードですが、Sikuli Script は違います。そのコードは画像なのです。Sikuli Script の作者は、こんなに創造的なアイデアを思いつくなんて本当に天才だと思います。とはいえ、これだけではピンとこない方も多いでしょう(画像でプログラムを書くって、どういうこと……?)。では、一緒に Sikuli Script のプログラムを作ってみましょう!

今のところ Sikuli Script は、主にスクリプトを書くために使われています。たとえば、ゲームやインスタントメッセンジャー(IM)への自動ログインといった自動化の用途です。Sikuli Script はまだ登場して日が浅いため、機能は十分に整っていません。ただ、if 文やループといった基本的な機能はすでにサポートされているので、それなりに完成したプログラムを書くことはできます。また、Sikuli Script をさらに研究したいなら、プログラミング言語の Python を学んでみるとよいでしょう。公式サイトによると、Sikuli Script は Python で開発されているからです。Python のループや条件分岐の使い方は、Sikuli Script とほとんど同じです。

Sikuli Script の情報:

SIKULI のインストール:

P.S. この記事はすべて Windows XP を例に説明します。

  1. まず、公式の SIKULI サイトからインストーラーをダウンロードします。そのうえで、パソコンに JRE がインストールされていることを確認し、SIKULI のインストーラーを開きます。

  1. 【Next】をクリックします

  1. SIKULI のインストール先を設定し、【Next】をクリックします

設定したフォルダーにインストールしてよいかの確認が表示されるので、【確定】をクリックします。

  1. 【Next】をクリックします

  1. インストールが始まります。上下二本のバーがどちらも完了したら、【Next】をクリックします

  1. そのまま【Next】をクリックします

  1. 完了です

SIKULI で簡単な小さなプログラムを書く

ここでは、SIKULI を使ってインスタントメッセンジャーに自動ログインする小さなプログラムを書きます。手順どおりに進めてください。
  1. SIKULI のメインプログラムを開き、【File】→【New】の順にクリックして新しいプロジェクトを作成します

  1. インスタントメッセンジャーのメインプログラムを開きますが、まだログインしないでください(最小化もしないでください)

  1. コード欄に click() と入力し、カーソルを()の中に置きます

  1. SIKULI プログラムの左上にあるカメラボタンをクリックします

  1. マウスをドラッグして枠を描き、インスタントメッセンジャーのアカウント入力欄を囲みます

  1. 自動的にコード編集欄に戻るので、改行してから type(“你的帳號t你的密碼”) と入力します

例:type(“linroext12345689”)

この手順では、プログラムがアカウントを入力し、自動的に改行してからパスワードを入力するようになります。

  1. 同じく改行して click() と入力し、カーソルを()の中に置いたままカメラボタンをクリックします

  1. 同じくマウスをドラッグして枠を描き、ログインボタンを囲みます

  1. これでほぼ完成です。コードが私のものと同じか確認してください。同じであれば、先にインスタントメッセンジャーのプログラムを開き、緑色の三角ボタンをクリックすると実行されます

  1. 書き終わったら、プログラムを保存できます。ただし、私が試したかぎりでは、現時点では exe ファイルとして保存できず、プロジェクトファイルとしてしか保存できません。使うときは SIKULI のメインプログラムを開いて実行します。将来は exe ファイルとして保存できるようになるとよいと思います。

SIKULI 使用時の注意点:

  1. SIKULI は大文字と小文字を厳密に区別します。たとえば、openapp と openApp は別物です。
まとめ:ここまでのチュートリアルを読んで、皆さんは Sikuli Script について少し理解できたと思います。もしあなたがプログラマーなら、今の気持ちはきっと複雑でしょう!こんなに簡単なプログラミング言語があったら、これからプログラマーはどうやって食べていけばいいのでしょう! でも、心配はいりません。良いプログラムを書くことは、使う言語とはあまり関係がありません(機械語を除けば……)。大事なのはロジックです。また、SIKULI は初心者でも本格的なプログラムが書けるようにするためのものではありません。その目的は、コードの可読性を高めることです。最後にひとつ。SIKULI の作者は台湾の人で、このプログラミング言語は台湾の誇りと言ってもいいでしょう〜