V8.50β1No.08364
秀丸担当 さん 14/09/17 15:08
 

V8.50β1を公開しました。
今回から秀丸スペルチェックアドインとAspellによる、スペルチェックに対応し
ています。

以下のページの「先行開発バージョンはこちら」からダウンロードできます。
http://hide.maruo.co.jp/software/hidemaru.html

32bit版:
http://hide.maruo.co.jp/software/bin/hm850b1_signed.exe

64bit版:
http://hide.maruo.co.jp/software/bin/hm850b1_x64_signed.exe


秀丸スペルチェックアドインは以下の場所からダウンロードできます。
http://hide.maruo.co.jp/software/hmspell.html

[ ]
RE:08364 V8.50β1No.08366
h-tom さん 14/09/21 23:32
 

h-tom です。

スペルチェックアドイン関連です。

1)スペルチェックアドインをインストールしていない状態でも、ファイルタイプ別
 の設定にある、スペルチェック -> 自動スペルチェック のチェックボックスが
 有効になってます。(他のボタン類は無効状態)
 有効なので、チェックを入れると「ロードできません」のメッセージが出ます。
 
 自動スペルチェックのチェックボックスも、他のボタンと同じようにインストール
 されていない場合は、無効化した方がいいのでは。
 
2)スペルチェックする箇所の指定
 C言語のソースで、スペルチェックを行うと、現状コメント箇所は無視されている
 ようです。
 これを、逆にコメント部分のみ、スペルチェックを行うようにする事は可能でしょ
 うか?(私の場合、スペルチェックが必要なのは、コメント部分だと思う。)
 
 とはいえ、ファイルタイプ別に、条件とか範囲とか言い出すと、切りが無いかな?
 ・可能なら、ある程度の範囲指定(本文?、コメント等)。
 ・無理なら、例外箇所なしで、全体にスペルチェックを行う設定。
 という感じでしょうか?

[ ]
RE:08366 V8.50β1No.08367
IKKI さん 14/09/22 00:34
 
スペルチェックについて便乗コメントです。

>2)スペルチェックする箇所の指定
> とはいえ、ファイルタイプ別に、条件とか範囲とか言い出すと、切りが無いかな?
カラー表示の種類ごとに、スペルチェックする/しないを設定できるようにするのが
いいと思います。
# と、もっと前に言っておけばよかった…。


あと、今これを言うのは非常に後出しっぽい感じがして恐縮なのですが…
スペルチェックエンジンとして Aspell を採用した理由は何でしょう?

スペルチェックエンジンとしては、最近は Hunspell の方がメジャーになっているよ
うです。
Mac OS X, InDesign, Mozilla, Google Chrome などの有名ソフトウェアで採用され
ています。
http://en.wikipedia.org/wiki/Hunspell
Hunspell の利点としては、多くのソフトで採用されているだけに新しい辞書を入手
しやすいことや、洗練された形態素解析エンジンにより多言語 (たとえば結合語を多
用するドイツ語など) をうまく扱えることがあります。
Hunspell の欠点としては、(Aspell 作者による) ベンチマークで Aspell より 5〜2
0 倍ほど遅いことや、英語のクオリティで Aspell に劣る (と Aspell 作者が言って
いる) ことがあるようです。
http://aspell.net/test/cur/

-- 以下余談 --

Aspell 作者は「Aspell は死んでいない」と言っています…3年前に。
http://lists.gnu.org/archive/html/aspell-devel/2011-09/msg00000.html
リンク先は長い英文ですが、要約すると「
Hunspell が唯一のスペルチェッカになるのは良くない。すべてのアプリは Enchant
(フロントエンドとなるメタ・スペルチェッカ) を介してバックエンドのスペルチェ
ッカを呼び出すべきだ。そして Enchant は Aspell の高度な機能を活用できるよう
にインターフェイスを追加するべきだ。これらの仕事は私ひとりではできないし、皆
の関心がないようなら私も Aspell 開発のモチベーションが上がらないだろう。みん
な、オラに力を貸してくれ!
」ってなことを言っていて、やる気があるのかないのか微妙なところ…。
そして、その後の情勢を見るかぎり Hunspell の優勢は揺るいでいない気がします。

とはいえ、私は自然言語処理の専門家ではないので、識者の意見を聞きたいところで
す。

[ ]
RE:08366 V8.50β1No.08368
秀丸担当 さん 14/09/22 09:17
 

>1)スペルチェックアドインをインストールしていない状態でも、ファイルタイプ別
> の設定にある、スペルチェック -> 自動スペルチェック のチェックボックスが
> 有効になってます。(他のボタン類は無効状態)
> 有効なので、チェックを入れると「ロードできません」のメッセージが出ます。
> 
> 自動スペルチェックのチェックボックスも、他のボタンと同じようにインストール
> されていない場合は、無効化した方がいいのでは。

チェックボックスがグレー状態になっていると、どうしてそれが押せないのかわ
かりづらいということで、押せるようにしました。

[その他]→[動作環境]→[ファイル]の「拡張機能」内の秀丸ファイラーClassic
とHidemarnet Explorerのチェックボックスも、以前はグレー状態でした。
今回、ここも押せるように変更して、なぜできないのかの理由を表示するように
しました。


>2)スペルチェックする箇所の指定
> C言語のソースで、スペルチェックを行うと、現状コメント箇所は無視されている
> ようです。
> これを、逆にコメント部分のみ、スペルチェックを行うようにする事は可能でしょ
> うか?(私の場合、スペルチェックが必要なのは、コメント部分だと思う。)
> 
> とはいえ、ファイルタイプ別に、条件とか範囲とか言い出すと、切りが無いかな?
> ・可能なら、ある程度の範囲指定(本文?、コメント等)。
> ・無理なら、例外箇所なしで、全体にスペルチェックを行う設定。
> という感じでしょうか?

そういう設定もあるべきか考えましたが、設定がすごく増えそうということもあ
り、とりあえず固定にして何か意見があればと思っていました。
ご意見があるということで、やはり設定の追加を考えてみます。

[ ]
RE:08367 V8.50β1No.08370
秀まるお さん 14/09/22 09:28
 
 Hunspellを使わずにAspellを使った理由ですが…。

 実は、秀丸スペルチェックアドインを作る前にIranoanさんに相談していて、
IranoanさんからもHunspellを紹介されていた所でした。ですが、使わなかった
理由として…

 1.Hunspellはソースコードとして提供されてるだけで、Windows用の、単体
  で呼び出して使えるようなプログラムとしては無いような気がする。
  (僕が探した限りは見つからなかった)

 2.ソースコードってことになると、自分でコンパイルしないといけないし、
  動作保証的にも自分のプログラムの一部的な扱いになっていろいろ面倒
  そう。

 3.GNUのライセンス関係がどうなるのか心配がある。Thunderbirdとかは
  それ自身がGNUライセンスだけど、自分のソフトはGNUライセンスじゃない
  ので、例えば自分のソースコードを公開しなくてもいいのかとか、ややこ
  しいこと言ってくる人がいたらいやかなぁと…。英語で何かメールとか来
  ても返事できないし…。
  Aspellの場合はexeファイルを呼び出して使ってるだけなので、その辺の
  ライセンス問題は出ないと思う。

 4.Apsellは独立したプロセスで動作するので(秀丸からはexe呼び出し&
  パイプ経由でデータのやりとりしかしない)ので、何か問題があったと
  しても、切り分けがしやすい。テストもやりやすい。

 ってな所です。

> Aspell 作者は「Aspell は死んでいない」と言っています…3年前に。

 Aspellは、良くも悪くも改版されてないので、仕様が勝手に変わらない&たぶ
んバグも枯れてるという安心感はあります。

[ ]
RE:08370 V8.50β1No.08372
IKKI さん 14/09/22 13:08
 
秀まるおさん、こんにちは。

> ってな所です。
> Aspellは、良くも悪くも改版されてないので、仕様が勝手に変わらない&たぶ
>んバグも枯れてるという安心感はあります。
なるほど…完全に納得しました。
ご返信どうもありがとうございました。

[ ]
RE:08370 V8.50β1No.08373
IKKI さん 14/09/22 13:17
 
余談というか参考情報ですが…

> 1.Hunspellはソースコードとして提供されてるだけで、Windows用の、単体
>  で呼び出して使えるようなプログラムとしては無いような気がする。
>  (僕が探した限りは見つからなかった)
"Hunspell Windows binary" でググると、勝手バイナリ (?) がいくつか見つかるよ
うです。
http://sourceforge.net/projects/ezwinports/files/
https://github.com/zdenop/hunspell-mingw

[ ]
RE:08373 V8.50β1No.08374
秀まるお さん 14/09/22 14:11
 
 情報ありがとうございます。

 で、試してみました。

    http://sourceforge.net/projects/ezwinports/files/

 から

    hunspell-1.3.2-3-w32-bin.zip

 をダウンロードして試してみたら、これはほとんどaspellの代わりに呼び出し
て使えてしまうようです。

 今、秀丸スペルチェックアドインは、

 aspell.exe --home-dir="..." --lang=en pipe
 aspell.exe --home-dir="..." --lang=en list

 のようなコマンドラインでaspellを起動してるんですが、「pipe」の所を「-
a」に、listの所を「-l」に変更すれば、hunspell.exeに変えても動くようです。

 ただ、--home-dir相当とか--lang相当のオプションの指定方法がいまいち分か
らないので、それでいいのかどうか…。

   -d dictionary

 ってオプションと、あと

   -i enc

 でエンコード方式(文字コード種別)を指定できるので、それらに対応すれば、
英語以外の外国語にも対応できるのかなぁとは思いますけども。

 とりあえず、「pipe」と「list」って指定してるところは、-aと-lに直します。
あと、「aspell.exeの場所指定」でexeファイルの名前も含めてプログラムを指
定できるように直します。そうすればhunspell.exeも呼び出せるようになると思
います。

 次のβ版で対応させていただきます。

[ ]
RE:08374 V8.50β1No.08375
秀まるお さん 14/09/22 14:27
 
> あと、「aspell.exeの場所指定」でexeファイルの名前も含めてプログラムを指
> 定できるように直します。

 これは既に出来るようになってました。

[ ]
RE:08368 V8.50β1No.08378
h-tom さん 14/09/22 23:50
 

h-tom です。

>チェックボックスがグレー状態になっていると、どうしてそれが押せないのかわ
>かりづらいということで、押せるようにしました。
意図的という事ですよね。
ただ、メッセージが
  「秀丸スペルチェックアドインがロード出来ませんでした。」
だけでは、「拡張機能である事」がわかりにくいと感じました。
メッセージか設定画面で「別途インストールが必要」等、追加しないと機能しな
いって事がわかるようにした方が、親切かな?

>そういう設定もあるべきか考えましたが、設定がすごく増えそうということもあ
>り、とりあえず固定にして何か意見があればと思っていました。
>ご意見があるということで、やはり設定の追加を考えてみます。
よろしくお願いします。

[ ]
RE:08370 V8.50β1No.08379
h-tom さん 14/09/22 23:50
 

h-tom です。

> 1.Hunspellはソースコードとして提供されてるだけで、Windows用の、単体
>  で呼び出して使えるようなプログラムとしては無いような気がする。
>  (僕が探した限りは見つからなかった)
これは、スペルチェックエンジンである、「libhunspell」を組み込んで使う
場合が多いからでかな?
  http://en.wikipedia.org/wiki/Hunspell
hunspell.exe も libhunspell.dll をロードするような作りです。

> 3.GNUのライセンス関係がどうなるのか心配がある。Thunderbirdとかは
>  それ自身がGNUライセンスだけど、自分のソフトはGNUライセンスじゃない
>  ので、例えば自分のソースコードを公開しなくてもいいのかとか、ややこ
>  しいこと言ってくる人がいたらいやかなぁと…。英語で何かメールとか来
>  ても返事できないし…。
>  Aspellの場合はexeファイルを呼び出して使ってるだけなので、その辺の
>  ライセンス問題は出ないと思う。
hunspell自体は、MPL 1.1/GPL 2.0/LGPL 2.1 のトリプルライセンスで、使う人が
どのライセンスを適用するか選択可能です。
"MPL 1.1/LGPL 2.1"を選べば、ライブラリをロードする側のソースコードの公開は
不要でしょう。
Adobeの製品にも組み込まれているようなので、その辺りは心配無いでしょう。

ちなみに、hunspellは、Ver.1.3.3 が最新です。バイナリはなさそうですが。

[ ]
RE:08378 V8.50β1No.08382
秀丸担当 さん 14/09/24 08:48
 

>ただ、メッセージが
>  「秀丸スペルチェックアドインがロード出来ませんでした。」
>だけでは、「拡張機能である事」がわかりにくいと感じました。
>メッセージか設定画面で「別途インストールが必要」等、追加しないと機能しな
>いって事がわかるようにした方が、親切かな?

確かにメッセージ内容があまり親切ではありませんでした。
わかりやすいように修正させていただきます。

[ ]