Yahoo の校正APIを使って文章校正を一度かけるようにしたいというのはずっと考えていたが、いい感じのUIを実装するのが大変に面倒で、ずっと放置していた。

このたびなんとなく ACE 上でなら簡単に実装できそうな気がしたので、実装してみた。こんな感じでいいように思うが、いくつか問題点がある

  • ACE は等幅 (monospace) フォントにしか対応していない
    • 文字の幅が必ず一定になるように1文字ごとにコンテナが作られている
  • IM によっては挙動がおかしい。
    • AquaSKK + Chrome だとそんなにおかしくはないけど、やはり変換中の文字列がちょっとずれて表示されたりはする

とはいえ、だいぶ前に ACE を試していたときは、日本語まわりがもっと挙動がおかしかった記憶があるけれど、ブラウザーが改善されたのか ACE が改善されたのか、普通に使えるぐらいにはなっていそう。

校正をかけて直したところで、筋が通って読みやすい文章がかけるかどうかは分からず、また全然別なのがつらい。

  1. トップ
  2. tech
  3. 校正ツール

sbt を入れるのが一番の近道のようだ。

brew install sbt

で入れるのが最も簡単そう。

あるいは、Setup の Unix の欄のように、sbt-launder.jar を ~/bin に置き、~/bin/sbt コマンドを以下のように作って chmod +x しとくのが簡単のようだ。

#!/bin/sh
java -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M -jar `dirname $0`/sbt-launch.jar "$@"

sbt さえ入れれば、必要なものは sbt が全てダウンロードしてくれる。初回起動時に必要なパッケージを落としてくるし、run コマンドを実行すれば (Scala ファイルがあるなら) Scala のライブラリも必要に応じて落としてくれる。全く頭を使わない。

例によって Hello, World! なら

object Hello {
    def main(args: Array[String])  {
		println("Hello!!!")
	}
}

を ~/tmp/hello/hello.scala として置き以下のように sbt を起動して run を実行するだけで実行できる。

$ cd ~/tmp/hello
$ sbt
> run
[info] Running Hello 
Hello!!!

複数ファイルがあったらどうなるか? と疑問になるがやってみるとわかる。

同じようにして ballow.scala を以下のように作る。

object Ballow {
	def main(args: Array[String])  {
		println("Hello!!!")
	}
}

sbt run を実行すると以下のようになる。

Multiple main classes detected, select one to run:

 [1] Ballow
 [2] Hello

Enter number:

かしこい。

チュートリアルがよく書かれていて、「勝手に scala をダウンロードするけど、バージョンの指定はどうするんだよ?」と疑問に思っても、すぐバージョン指定ができることは書いてある

  1. トップ
  2. tech
  3. Scala をはじめるには