テキストエディタ「Mery」ベータ版 Ver 2.8.5 を公開、Migemo に対応

テキストエディタ「Mery」ベータ版 Ver 2.8.5 を公開、Migemo に対応

みなさん、ベータ検証のご協力ありがとうございます。

Ver 2.8.0 以降は細かいバグ修正を行いつつ、裏で Migemo の研究をしていましたが、ようやく形になりましたので公開してみます。

Migemo というのはローマ字のまま日本語をインクリメンタルサーチするためのライブラリで、これを使うことで今まで不便だった日本語におけるインクリメンタルサーチが大幅に改善されます。

Migemo を使ったインクリメンタルサーチ

Migemo を使ったインクリメンタルサーチは上のスクリーンショットのようにローマ字や英語を入力するだけで日本語として検索することが可能です。

メガドライブミニW

メガドライブミニW
セガゲームス
幻のメガドライブ版テトリスも収録!

スポンサーリンク

Migemo の使い方

Mery で Migemo を使うためには Migemo のライブラリが必要です。

Migemo を導入する

C/Migemo を https://www.kaoriya.net/software/cmigemo/ (香り屋さん) からダウンロードしてアーカイブを展開し、migemo.dll と dict フォルダを Mery.exe と同じフォルダに配置してください。

Mery が起動している場合は Mery の再起動を、タスクトレイに常駐している場合はトレイアイコンを右クリックで終了してから起動しなおしてください。

C/Migemo は 32 ビット版と 64 ビット版がありますので Mery のビット数と合わせてください。
Mery で使用できる C/Migemo のバージョンは 1.3 で、ユニコードに対応しています。

Migemo を使用する

検索ダイアログを開いて [検索する文字列] の右隣にある [>] ボタンをクリックすると [Migemo を使用する] という項目が増えていますのでこれをオンにします。

Migemo を使用する 1

Migemo は通常の検索においても使用できますが、とりあえず [インクリメンタルサーチ] にチェックを入れてみましょう。

Migemo を使用する 2

あとは [検索する文字列] の部分にローマ字で文字を入力すると自動的に日本語の文字列が検索されます。

例えば「kantan」とローマ字で入力すると日本語の「簡単」などの文字列がヒットします。

検索方法の詳しい解説は http://0xcc.net/migemo/ に書かれています。なお、現在のところ Mery は Migemo の [行をまたぐ検索] は対応していません。

ところで Migemo の仕組みですが、ローマ字で入力された文字列を Migemo に渡してやると、辞書ファイルをもとに日本語の文字列を含んだ正規表現に変換した文字列が返ってきますので、Mery はそれを使って正規表現で検索をしているわけです。

このような仕組み上、[Migemo を使用する] オプションは [正規表現を使用する] オプションと同時には使用できないのでご注意ください。

更新内容

本バージョンではいくつかの不具合修正や機能改善が含まれています。現在お使いのバージョンで問題がある場合はバージョンアップで改善されるかもしれません。

2019/08/14 (Ver 2.8.5)

  • [フォントの設定] と [オプション] の [DirectWrite] の項目の表示サンプルに文字色を背景色を反映するようにした

  • 最大化した状態で最小化から復元するときに一部の環境で黒いチラつきが発生することがあった問題の対策

    フォーラム 最小化からの復帰時の挙動

  • [ファイルから検索] で [検索するフォルダ] を "|" で複数指定する機能で "|" のあとにフォルダを指定しなかった場合の挙動を修正

    フォーラム [ファイルから検索]で検索するフォルダの固定

  • マクロの FindInFiles と ReplaceInFiles で meFindReplaceOnlyWord フラグが動作していなかったのを修正

  • その他、細かい修正

2019/08/04 (Ver 2.8.4)

2019/07/31 (Ver 2.8.3)

  • Migemo に対応 (別途 C/Migemo 1.3 の migemo.dll が必要)
  • アウトラインプラグインでスレッド処理中に本体側を終了するとエラーが発生することがあったのを修正
  • [次の文字列を検索] [前の文字列を検索] で [正規表現を使用する] のチェック状態を保持するようにした
  • その他、細かい修正

ダウンロード

レジストリを一切使用しない ZIP 版、レジストリを使用しますが導入が簡単なインストーラ版、設定ファイルを外部に作成しないポータブル版を用意しています。

ZIP 版

アーカイブを解凍するだけですぐに使える ZIP 版です。

Mery Ver 2.8.5 (32 ビット版) ZIP Mery Ver 2.8.5 (64 ビット版) ZIP

インストーラ版

解凍などの作業が必要なく簡単に使えるインストーラ版です。

Mery Ver 2.8.5 (32 ビット版) インストーラ Mery Ver 2.8.5 (64 ビット版) インストーラ
VirusTotal で誤検出されたり SmartScreen で保護されたりしますが、もちろんウイルスではありません。ご心配なかたは正式版が Vector さんか窓の杜さんで公開されるまでお待ちください。

ポータブル版

インストールは不要。通常の ZIP 版と異なり設定ファイルを外部に作成しないので USB メモリに保存して持ち歩けますし、PC 環境を汚すこともありません。

Mery Ver 2.8.5 (32 ビット版) ポータブル Mery Ver 2.8.5 (64 ビット版) ポータブル
ポータブル版は解凍したフォルダの中に、設定ファイルなどのすべてのデータを保存しますので、必ずアクセス権のあるフォルダに配置してください。

おわりに

Migemo はインクリメンタルサーチで効果を発揮しますが、通常の検索においても便利なシーンがありますから、使用範囲をインクリメンタルサーチに限定しない方向でなるべくシンプルな仕様を考えました。

PCエンジン mini

PCエンジン mini
コナミデジタルエンタテインメント
ときメモやスナッチャーも収録!

  • Migemo のライブラリを同梱しないのか?

    C/Migemo の DLL 自体は MIT ライセンスまたは独自ライセンスのデュアルライセンスなので再配布可能ですが、辞書ファイルのライセンスが GPL のようなので同梱できませんでした。

  • 置換ダイアログで Migemo を使用できないのか?

    技術的には置換ダイアログでも可能ですが、例えば置換のときに Migemo で「name」を置換すると「name」だけでなく「名」や「なめ」なども置換対象になりますから安全性を考慮して検索ダイアログのみとしました。

  • 検索窓のような機能は作らないのか?

    ツールバーの中に「検索バー」のようなものを用意して、そこから Migemo でインクリメンタルサーチできると効率的だと思います。開発支援にご協力いただいた方への謝意としてプラグインの特典をご用意しております。(準備中)

  • マクロやプラグインから Migemo を使用できるか?

    Find メソッドのフラグとして meFindMigemo を追加しました。Migemo が導入されていない環境では通常の検索となります。

    もちろんプラグインからも使用できますので、検索ダイアログを使わずステータスバーを利用して Emacs っぽくインクリメンタルサーチするような機能も割と簡単に作れると思います。

  • Migemo ライブラリおよび辞書へのパスを変更できないか?

    複数のアプリケーションで Migemo ライブラリを共有する場合など Migemo のパスを変更できたほうが便利なこともありますが、DLL インジェクションなどセキュリティ上の問題が発生しそうなのでそういった機能は搭載していません。

こんな感じで悩み事が色々とありまして仕様変更を何度も繰り返しましたが、最終的にはシンプルな形に落ち着きました。

Migemo を使ったインクリメンタルサーチ。予想以上に快適なので、導入はちょっと面倒かもしれませんがぜひ一度お試しくださいね。

そういえば先日、Amazon Music Unlimited に登録してみたのですがこれは捗りますね。

さすが 6500 万曲以上が聴き放題というだけあってマニアックな曲も結構見つかりますし、その辺には売られていないブートレグ (海賊盤) のようなアルバムもたくさん配信されていますのでかなり楽しめます。

Amazon Music Unlimited が 30 日利用できる、無料体験登録はこちら。

スポンサーリンク

関連する記事

フォローする