5
1

More than 3 years have passed since last update.

Windows10でRMeCabの辞書にNEologdを使うには(Linuxはいれない)

Posted at

圧倒的個人的なメモです。

以前、NEologdを搭載したRMeCabのコンテナを作成したのですが、実用段階においてdocker(× 社内システム)のアキレス腱が発覚したので、docker作戦がおじゃんになりました。泣きました。

なんだか、WindowsでNEologdを入れるには、ubuntuをいれて云々みないな入れ方がスタンダードでしたが、最近そんなことしなくても入れられるぜという記事があったのでそれを参考にWindows10にNEologdを入れることができました。個人的にはこっちのほうが簡単かなと思います。

WindowsでNEologd辞書を比較的簡単に入れる方法を見ればできるのでこちらも参照してください。僕は頭が悪かったので再現できるように細かくメモっておきます。


環境

Windows10 64bit 言語:日本語

MeCab 0.996-32bit

この辺は、入っているものとして進めます


必要なソフト

git for Windows 2.20.1 64-bit:NEologdを入れるのに必要

7-ZIP 18.06 64-bit:ダウンロードしたNEologdを回答するのに必要


手順

  1. 上記必要なソフトをダウンロード
  2. RMeCabと7-ZIPの環境PATHを設定
  3. NEologd辞書のダウンロードと解凍
  4. NEologd辞書のコンパイル
  5. MeCabの辞書参照先をNEologdに設定

1. 必要なソフトをダウンロード

git for Windows 2.20.1 64-bit

ダウンロードしたNEologdはxz形式で圧縮されているので、解凍するのに7-zipを使います。以下のサイトより7-zip 64bitをダウンロードしてインストールしてください。

https://sevenzip.osdn.jp/

スクリーンショット (75)_LI.jpg

「ダウンロード」をクリックして、.exeファイルを実行してyesyesしてください。すぐに入ります。

git for Windowsのインストール

以下のサイトから最新版をダウンロードしてください。

http://git-scm.com/

スクリーンショット (77)_LI.jpg

オレンジので囲まれている所をクリックするとダウンロードします。そしたら、.exeファイルを実行してください。いろいろと出てきますが全部いじらずにyesyesで進めてインストールしちゃってください。

スクリーンショット (84).png
スクリーンショット (85).png
スクリーンショット (86).png

最後も、何か出てきますがNextでインストール始めてください(スクショし忘れた)

このページも参照するといいかもですが、この記事の時とは仕様が変わっているので内容が異なることが合います

https://qiita.com/taiponrock/items/632c117220e57d555099

なには、ともあれ7zipとgit for Windowsのインストールは完了です。


RMeCabと7-ZIPの環境PATHを設定

環境変数(Path,PATH)を変更します。なにそれという人はググってください。僕もよくわかってません。

コントロールパネルを開く

cortanaさんに「こんとろ...」くらい入れると出てくるのでクリックして開いてください。!スクリーンショット (93).png

システムの下の「環境変数を編集」をクリック

コントロールパネルの中からシステム→環境変数の設定をクリックしてください。右上の検索窓に「環境変数」といれると近道
スクリーンショット (94).png

システムの下の「環境変数を編集」をクリック

スクリーンショット (97)_LI.jpg

こんな画面が開くので、「Path」を選択した状態で「編集」をクリック
スクリーンショット (98)_LI.jpg

こんな画面が出るので、「新規」をクリック。すると、環境変数名を追加することができるのでそこに「 C:\Program Files (x86)\MeCab\bin 」と「 C:\Program Files\7-Zip 」を入力してください。

スクリーンショット (100)_LI.jpg

こんな感じです。したらこの画面で「OK」→次の画面でも「OK」をして設定を保存してください。

これで環境変数の設定が完了しました(こんぷら)。


3. NEologd辞書のダウンロードと解凍

ここまでで、NEologdをダウンロード、解凍、インストールする準備が整いましたので、入れていきましょう。

NEologd辞書をダウンロード

コマンドプロンプトを開いて以下のコマンドを入力して、NEologd辞書をダウンロード(「WindowsでNEologd辞書を比較的簡単に入れる方法」では、管理者権限で入るようになっていますが、僕は普通に入って成功したので普通に入っていいと思います)

git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git

※ここでエラーが出たときは、git forWindowsが入っていないかコマンドが間違っている可能性があります。doneって最後に出てればおk

NEologd辞書ファイルの確認

ダウンロードが完了したら、ディレクトリを移動してファイルを確認してください。

cd mecab-ipadic-neologd\seed
dir

正常にコマンドが実行され、中に.xzファイルがいっぱい入っていたら成功です。

NEologd辞書フィルの解凍

.xzファイルは.zipのように圧縮されているので、先ほど入れた7zipソフトを使って解凍します

7z X *.xz

※ここでエラーが出ると、環境変数の設定がうまくいっていない可能性があります。


4. NEologd辞書のコンパイル

ここまでで、NEologdの辞書がダウンロード、解凍されたと思います。次に、文字コード等を設定して辞書をコンパイルします。Windowsなので、文字コードはShift-jisに設定します(Shift-jisぇ...)。

以下のコマンドより実行してください

mecab-dict-index -d C:\PROGRA~2\mecab\dic\ipadic -u [辞書の名前.dic] -f utf-8 -t shift-jis [参照元の辞書.csv]

[参照元の辞書.csv]ですが、先ほど回答したNEologdフォルダの中から「 mecab-user-dict-seed.{直近のバージョン日程}csv」を見てみてください。「dir」コマンドで見れると思います。
スクリーンショット (103).png

今回は、mecab-user-dict-seed.20191031.csvですね。[参照元の辞書.csv]の部分にはこれを入れてください。

[辞書の名前]は自由に入れていいですが、今回はNEologd.20191031.dicにしましょう。

なのでコマンドは、以下の様になります。

mecab-dict-index -d C:\PROGRA~2\mecab\dic\ipadic -u NEologd.20191031.dic -f utf-8 -t shift-jis mecab-user-dict-seed.20191031.csv

正しくコマンドが実行されると、辞書のコンパイルが完了します。.dicファイルの辞書がアウトプットされます。done!が出ると成功です。


5. MeCabの辞書参照先をNEologdに設定

辞書のコンパイルが完了したら、あとは、MeCabの辞書参照先を設定すれば終わりです。頑張りましょう。

NEologd辞書をMeCabディレクトリに移動する

まず、MeCabのフォルダ上にNEologd用のディレクトリを作りましょう。これは、本来いらないですが、初期の辞書と区別をつけやすくするのでやったほうがいいです。

mkdir "C:\Program Files (x86)\MeCab\dic\NEologd"

※ここはディレクトリを作ってるだけなので、ポチポチっと自分で作ってもかまいません(社内システムのせいでアクセスの拒否された人とか←)。

そしたら、先ほどコンパイルした辞書(今回はNEologd.20191031.dic)を先ほど作ったディレクトリに移動しましょう。

move NEologd.20191031.dic "C:\Program Files (x86)\MeCab\dic\NEologd"

※ここも辞書ファイルを移動しているだけなのでポチポチっと自分でやっていただいたもかまいません(社内システムでアクセスの拒否された人とか←)

これで、MeCab内に先ほどコンパイルした辞書が入りました。あとは、MeCabの辞書参照先を変更すれば完了です。

MeCabの辞書参照先を変更する

辞書の参照先を変更するにはC:\Program Files (x86)\MeCab\etcにあるmecabrcを変更する必要があります。こいつをこのフォルダ内でいじるには癖があるので、デスクトップにコピーしていじりましょう。

mecabrcを開くと、以下の様になっていると思います。

(開き方はいろいろありますが、Rstudioで開くのが見やすいかも)

; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir =  $(rcpath)\..\dic\ipadic

; userdic = /home/foo/bar/user.dic

; output-format-type = wakati
; input-buffer-size = 8192

; node-format = %m\n
; bos-format = %S\n
; eos-format = EOS\n

このmecabrcのなかでuserdicの部分

; userdic = /home/foo/bar/user.dic

//userdic = C:\Program Files (x86)\MeCab\dic\NEologd\{コンパイルした辞書.dic}

userdic = C:\Program Files (x86)\MeCab\dic\NEologd\NEologd.20191031.dic

に変更して保存してください。そしたら、C:\Program Files (x86)\MeCab\etcにある元のmecabrcを置き換えてください。これで、NEologd辞書を参照先に選択していると思います。

※この辺でエラーが出ている場合は、パスがミスっていたりするので気を付けてください!(辞書の名前がファイル間で一致していないとか)


終わりに

参照先が正しく反映されていると、個人名や最近の単語も分かち書きできるようになっていると思います。

スクリーンショット (105).png

(雨宮天が分からない人は義務教育からやり直してください)

ほんとに、WindowsでNEologd辞書を比較的簡単に入れる方法の記事にはお世話になりました。この記事は、個人的に環境構築する際のメモ的なポジションとして書いたので、わかりづらい点もあるかもしれませんので、ご了承ください。

to be continued...

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1