NMeCab
NMeCab copied to clipboard
Merge project/packages both MeCab.DotNet and LibNMeCab (Issue#32)
Issue #32 で打ち合わせている、@kekyo 氏の MeCab.DotNet と NMeCab とのマージについてのプルリクエストです。
- ソースコード観点で言えば、MeCab.DotNet と NMeCab の内部を同一にする修正となります。
- このために MeCab.DotNet プロジェクトから NMeCab プロジェクトのソースコードをファイル参照する形にしています。
- MeCab.DotNet 側では .NET FW 2.0以上を対象としていますが、NMeCab は.NET Std 2.0専用なので、NMeCab 側にもプリプロセッサディレクティブを追加するなどの修正を加えています。(これは、ちょっと興味が湧いたのでやってみた感じだったりします😋)
- それでも、NMeCab は .NET Std 2.0 専用での公開のままとしています。(つまり.NET FWは切り捨てた状態ですが、これはWindows環境以外でも開発できるようにしたいことや、新機能追加の際に過去互換性に足をひかれたくない、という思いからです)
- srcフォルダに、MeCab.DotNet プロジェクトと NMeCab プロジェクトが同居する形にしています。ただし.slnは分けました。
- ドキュメント関係にはまだ手を加えていません。(「使い方」についてはGitHubのWiki機能に移して、トップの.mdはオーバービューだけにしていこうかと考えています)
@komutan お久しぶりです。その後いかがでしょうか? .NET 6.0がリリースされたこともあって自分のプロジェクトを棚卸しするまで失念していましたが、もし手伝えることがあればフォローします。
@kekyo すみません!返信が遅く。
MeCab.DotNetのドキュメントを移さないといけませんね。構成などのアイデアありましたら頂きたいです。🙏
@komutan #38 に小さい差分を作ったので、マージをお願いします
@komutan ドキュメントですが、 MeCab.DotNet
側にはドキュメントと呼べるようなものがない 😄 ので、今の NMeCab
の最初のサンプルコード の直後に、同じ構成(NMeCab
前提)のF#サンプルコードを追加して、後は現状通り(いちいちF#のコードは追加しない)で構いません。多分、F#erはC#のコードを見れば理解できます :)
MeCab.Tagger
の辺りが違うと思うので、libNMeCab
のリリースをした後で追記する、で構わないと思います。
また、MeCab.DotNet
の説明には:
- エンジンのコードがNMeCab同等になった
- バージョンアップされたパッケージが提供されているが、将来はarchiveされる
- インターフェイスは元と同等なので、
MeCab.DotNet
のリポジトリを参照の事
のように書こうと思います。補足があればそれも盛り込むので、もしあれば指摘ください。
以上は NMeCab
側のREADMEの話で、MeCab.DotNet
の方は同時期に NMeCab
への移行を促すようにREADMEに追記します。