トップ 追記

wceSKKSERV


Last Update: 2009-03-25 10:43:31

情報がバラバラになっていたので、ここらへんで集約しておきます。(一度書いた情報なのですが、なぜか消えてしまったので再掲)

wceSKKSERV 0.2.0.0 の特徴

  • 複数の辞書ファイル対応
  • サーバコンプリーション対応
  • インデクスを使用した高速検索(通常の検索ではディスクアクセスは1回程度)
  • SKKサーバのプロクシ機能(通常検索、サーバコンプリーション検索)・応答タイムアウトあり。(wceSKKSERVはハブSKKサーバになります)
  • ごく簡単な統計情報の表示
  • 簡易な接続制限(ローカルホスト以外の接続可否)
  • WindowsCE対応 ← ver0.2.0.0 の対応はまだです

使い方

■メイン画面

  • 「編集」ボタン:辞書ファイル、サーバを編集するときに選択します。
  • 「ポート番号」:サーバがリスンするポート番号を指定します。1178が標準です。
  • 「他のマシンからの接続を許可」:チェックした場合、ローカルホスト以外からの接続を拒否します。
  • 「起動」「停止」:サーバの起動・停止を選択します。ポート番号を変更した場合は停止・起動が必要です。


■辞書リスト編集画面

  • 「ファイル追加」ボタン:辞書ファイルを追加します。ファイル選択の画面からSKKの辞書を選択してください。辞書ファイルは 『Index of /skk/skk/dic』などからダウンロードしてください。

  • 「サーバ追加」ボタン:他のSKKサーバを追加します(SKKサーバのプロクシ機能)
  • 「上へ」「下へ」ボタン:辞書の順序を入れ替える場合に使用します
  • 「削除ボタン」:辞書を削除する場合に使用します
  • 「インデクスファイル作成ディレクトリ」と「選択」ボタン:辞書ファイルのインデクスファイルを作成するディレクトリを使用します。何も指定しない場合、各々の辞書ファイルと同じディレクトリに作成します。
  • 「OK」ボタン:辞書リストの変更を確定します。OKを押下した時点でファイルのフォーマットチェック/SKKサーバへの接続を行ない、異常があった場合にはエラーとなります。
  • 「キャンセル」ボタン:辞書リストの変更をキャンセルします。

■サーバ追加画面

  • 「ホスト名(またはIPアドレス)」:接続先のSKKサーバのホスト名またはIPアドレスを指定します。

  • 「ポート番号」:接続先のSKKサーバのポート番号を指定します。

  • 「受信タイムアウト」:クエリを送信後、SKKサーバからの応答をどの程度待つかミリ秒で指定します。「0」を指定した場合は応答があるまで永遠に待ちます。タイムアウト後の応答はwceSKKERV内で捨てます。また、タイムアウト発生から応答があるまでの間に別の検索要求があった場合は、タイムアウトが発生しているサーバは除外して検索します。
  • 「サーバコンプリーションを有効にする」:チェックが入っていた場合、サーバコンプリーション検索の場合も中継します。

ダウンロード


wceSKKSERV 0.2.0.0 正式版

Last Update: 2009-01-29 21:42:16

wceSKKSERV の次期メジャーバージョンの正式版の 0.2.0.0 を公開します。

αからの変更点は以下のとおりです

  • サーバコンプリーションに対応(ファイル・サーバ双方)
  • タスクトレイアイコンにカーソルを合わせたときに表示されるメッセージを統計情報とする
  • 細かなバグ修正

ダウンロード:wceskkserv0200.zip
(WindowsXP でしか動かしていません! 恐らくWindows2000以上で動作します)

本日のツッコミ(全5件) [ツッコミを入れる]

Before...

daisuke [Vista Ultimate で何の問題もなく動いています。この書き込みも wceSKKSERV を使っています、非..]

 [Vista Home Premium 64-bitでも動いています。 インデックスファイルを作成するので、インスト..]

まちだ [> daisuke さん 動作報告ありがとうございます。うれしいです!やる気が出ます! > ひ さん おー..]


wceSKKSERV version 0.2.0.0 α1 を公開

Last Update: 2008-12-07 16:30:25

wceSKKSERV の次期メジャーバージョンの人柱版である 0.2.0.0 α1 を公開します。αである理由は、重大なバグはないと予想されるが、作者のテストが十分でないのと、サーバコンプリーションについてはまだ未実装、という2点です。普通には使用できると思うので、みなさまに使っていただき、バグを発見できたらと考えています。


ダウンロード:wceskkserv0200a1.zip
(WindowsXP でしか動かしていません! 恐らくWindows2000以上で動作します)

主な機能追加や変更点は下記とおりです。

  • 辞書ファイルのインデクスの持ち方を変更し、検索時間の短縮化(通常の検索であれば1回の検索でディスクアクセスは1回程度)*1
  • 上記に伴ない、メモリ使用量増加(旧バージョンの2.5倍くらいです)
  • 辞書サーバを辞書として追加する機能追加(タイムアウト値を設けることで、永遠に待ち続けることを防止します)*2
  • 辞書の候補の重複を削除してクライアントに送り返すようにした
  • 他のマシンからの接続を許すオプション追加

細ごまとした変更点は下記のとおり

  • ダイアログの画面の大きさを大きくした
  • エラーのあった辞書は赤、警告のある辞書は黄色の背景色で表示する
  • 実施中のエラーはバルーンメッセージで表示

すみません。ドキュメントはいずれ書きます。

*1 yaskkserv のエンコード化と似たようなことをしています

*2 タイムアウトになったサーバは、応答が帰ってくるまで検索の対象から外れます

本日のツッコミ(全3件) [ツッコミを入れる]

kaz [Downloaded zip file is empty. Any errors?]

mikkun [問題は発生しておりません。 サーバコンプリーションの実装はいつごろの予定でしょうか。]

まちだ [>mikkun さん 動作報告ありがとうございます。(返信が遅くなり申し訳ありません)。 またサーバコンプリージ..]


wceSKKSERV の DoS 問題

Last Update: 2008-03-16 11:43:32

wceSKKSERV には、外部より簡単に DoS される問題があります。

外部からコネクションを貼り、終了していないリクエスト("1test" みたく、最後にスペースが無い)を送信すると、繋がっている他のクライアントの応答にも答えられなくなります。こうなってしまう理由は、リクエストが来た場合、リクエストが終了するまでそのクライアントを処理対象としているためです。ファイアウォールで外部からの接続を拒否している場合はDoSされませんが、自分のマシンで動かしているSKKクライアントにバグがあった場合、自分のマシンだけでも発生します。

以下の対応をする予定です

  • localhost のみを接続対象とできるオプション追加
  • クライアントのリクエストが終了していない場合も他のクライアントを処理できるようにする


wceSKKSERV ver. 0193(Windows用のみのバイナリ)

Last Update: 2007-09-24 01:38:52

SKKのMLで投稿されたserver completion の仕様の欠陥について、MLでも反対意見が無いようですし、elisp のコードを見たら既に対応してあるようですので案3の修正しました。

3. スラッシュでなくスペース区切りにする。
プロトコルの数値はこれまで通り '4' で server completion とする。

wceSKKSERV ver. 0192(Windows各種バイナリ)

Last Update: 2005-05-21 03:38:37

ようやく wceSKKSERV ver.0192 を WindowsCE 版にコンパイルした。ソースも公開(ただし汚ないよ)。


wceSKKSERV ver 0.1.9.2 リリース

Last Update: 2005-01-22 02:29:23

ちょっと高速化? かな。見出しが server completion のキーに前方一致している最も若い見出しを探す際、無駄に比較をしていたのを修正。

ダウンロード

wceskkserv-0192.lzh

余談ですが

gcc3 を使用しています。mingwm10.dll に依存するのが嫌なので -mthreads を付けませんでした。というのも、mingw のソース mthr.c に『例外使用しないなら使わないよ。使うのは、例外スローの後処理だよん』みたいに書かれて、wceSKKSERV は(独自)例外は投げていいないのと、catch もしていないので、例外が発生した場合は落ちるからどうでもいいかと思ったのが理由です。


wceSKKSERV 0.1.9.1 のリリース

Last Update: 2005-01-19 22:37:00

ChangeLog

	* server_comp.c (search_server_comp): 辞書の順番ダイアログを
	開いているときに server completion の検索をすると落ちていたのを修正。

・ダウンロード

wceskkserv-0191.lzh

server completion 使用した検索パート2(トップページと同じ内容です)

Last Update: 2005-01-17 21:31:18

ちょっと更新。skk-server-completion.el

  • 関数名が間違っていたのを修正
  • skk-comp の時に server completion を使用するように
内容
  • skk-look の日本語版。読みの最後に `~' を付けて変換すると、その読みから始まる全ての候補を表示します。

    例:

    ▽まちだ~

    ==> "まちだ" "町田" "まちだえき" "町田駅" "まちだおだきゅう" "町田小田急" ...

  • skk-comp で、server completion を使用

    例:

    ▽まち-!- で Tab を押すと、▽まちだ → ▽まちだえき → ▽まちだおだきゅう …… となります。

設定方法

.skk に、以下を追加します。

(require 'skk-server-completion)
(add-to-list 'skk-search-prog-list
	     '(skk-server-completion-search) t)

server completion 使用した検索

Last Update: 2005-01-15 21:52:56
skk-server-completion.el (実はこれ作っているときに、上記の仕様(半分バグ)を発見して、修正になりました。)

skk-look の日本語版でしょうか。読みの最後に `~' を付けて変換すると、その読みから始まる全ての候補を表示します。

# ~ って何かに使われていましたっけ?

例:

▽まちだ~

==> "まちだ" "町田" "まちだえき" "町田駅" "まちだおだきゅう" "町田小田急" ...

設定方法

.skk に、以下を追加します。

(require 'skk-server-completion)
(add-to-list 'skk-search-prog-list
	     '(skk-server-completion-search) t)

町田 文彦 (Fumihiko MACHIDA)
f_u_m_i@megadriver.yi.org
(メールを送るときは _ を削除してください)

今日:12昨日:13ぜんぶ:44109