Haskellで将棋 - off-topic: 将棋ぶらうざQのYosemiteでの動作とHaskell将棋の設定方法(未熟編)
コメントを頂いたので早速Haskell将棋の設定方法の現状の問題点と回避方法をメモしておきます。 ついでにYosemiteにアップグレードしたので将棋ぶらうざQの動作に必要なことをさらっとメモしておきます。
Yosemiteで将棋ぶらうざQを立ち上げる
Yosemiteにアップグレードしてみました。
すると起動時期こんなポップアップが出るはず:
Java SE 6をインストールせよとのことなので、Javaをインストールしてみます。ちなみに
$ which java /usr/bin/java $ java --version No Java runtime present, requesting install.
ということなのでJavaはインストールされていない(Yosemiteにアップグレード時に消された)模様。
homebrew-cask?
ですが、Oracleのサイト(Java SE Runtime Environment 8 - Downloads)に行って、dmgダウンロードして…ってのは面倒なのでhomebrewで入れたい、のでhomebrew-caskをインストールします。
homebrew-caskはhomebrewの拡張版で、homebrewの上になんか便利な感じなものが構築されているらしい(Homebrew Cask)。公式ページにしたがってインストールしてみます。
$ brew install caskroom/cask/brew-cask
で、このqiitaを参考にJavaをインストールしてみます。
Mac に brew で Oracle Java のバージョンを指定してインストールする方法 - Qiita
まずはパッケージがあるかどうかをbrew cask search
コマンドで探して、その後インストールです。
$ brew cask search java ==> We need to make Caskroom for the first time at /opt/homebrew-cask/Caskroom ==> We'll set permissions properly so we won't need sudo in the future WARNING: Improper use of the sudo command could lead to data loss or the deletion of important system files. Please double-check your typing when using sudo. Type "man sudo" for more information. To proceed, enter your password, or type Ctrl-C to abort. Password: ==> Exact match java ==> Partial matches eclipse-java javafx-scene-builder
で、javaがあるので、これをインストールします:
$ brew cask install java ==> Caveats This Cask makes minor modifications to the JRE to prevent issues with packaged applications, as discussed here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=411361 If your Java application still asks for JRE installation, you might need to reboot or logout/login. Installing this Cask means you have AGREED to the Oracle Binary Code License Agreement for Java SE at http://www.oracle.com/technetwork/java/javase/terms/license/index.html ==> Downloading http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jdk-8u25-macosx-x64.dmg ######################################################################## 100.0% ==> Running installer for java; your password may be necessary. ==> Package installers may write to any location; options such as --appdir are ignored. ==> installer: Package name is JDK 8 Update 25 ==> installer: Upgrading at base path / ==> installer: The upgrade was successful. 🍺 java installed to '/opt/homebrew-cask/Caskroom/java/1.8.0_25' (2 files, 210M)
という感じで前掲のOracleのページからdmgファイルをダウンロードしてインストールしているのが見えます。この一手間が面倒なのでhomebrew-caskをインストールしたわけですね。
$ java -version java version "1.8.0_25" Java(TM) SE Runtime Environment (build 1.8.0_25-b17) Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
これで将棋ぶらうざQを立ち上げてみます。
立ち上がりました!
Haskell将棋を将棋ぶらうざQに設定する
実はそのままでは将棋ぶらうざQにHaskell将棋は設定できません。というのは、将棋ぶらうざQが送ってくるメッセージに対応していないので、フリーズしてしまうようです。なので、無理矢理設定ファイルを変更する必要があります。
将棋ぶらうざQのアプリケーションアイコンを右クリックして、Show Package Contents...
(パッケージの内容を表示)から、Contents
->Resources
->Java
->properties.xml
を編集します。
必要な項目は
- EngineProtocol3=USI
- EngineParam3=(なし)
- EngineTitle3=好きなタイトル, e.g. Hamilcar 0.0
- EnginePath3=実行バイナリのパスを絶対パスで, e.g., /Users/userName/Documents/IdeaProject/hamilcar/dist/build/hamilcar/hamilcar
- EngineOptionSave3=true
- EngineEnvParam3=(なし)
- EngineDispOrder=1:2:3:(3:を追加)
- EngineKeyNo=1:2:3:(3:を追加)
といった感じです。設定した後にエンジン設定画面に設定したタイトルが追加されていることを確認して下さい。
設定がちゃんと出来てるとこんな感じで動きます。