ローマ字入力で日本語テキストを検索できる Neovim プラグイン。"nihongo" と入力するだけで にほんご、ニホンゴ、日本語 すべてにマッチします。
- migemo 変換 API — ローマ字を日本語対応の正規表現(PCRE / Vim magic)へ変換。ripgrep・Vim 検索・各種プラグインから利用可能
- flash.nvim 連携ジャンプ — ローマ字入力で日本語へラベルジャンプ。ラベルと入力が衝突しない先読み割当、複合語への継続入力、MeCab があれば読みベースの高精度照合(読みモード)
- snacks.nvim picker 連携 — migemo grep
- 文節ジャンプ — BudouX による文節境界へのジャンプ
- Neovim 0.10+
- バックエンド: cmigemo または rustmigemo(PATH にあれば自動検出。辞書の探索先は docs/backends.md)
- 任意: MeCab(読みモードが有効化)、budoux.lua(文節ジャンプ)
lazy.nvim:
{
"LevNas/cmigemo.nvim",
opts = {},
}作者が日常使いしている2つの連携です。そのまま使える完全な設定は examples/ にあります。
f を押してローマ字を打つと日本語のマッチが絞り込まれ、ラベルキーでジャンプします(完全版: examples/flash.lua)。
{
"folke/flash.nvim",
dependencies = { "LevNas/cmigemo.nvim" },
keys = {
{ "f", function() require("cmigemo.ext.flash").jump() end,
mode = { "n", "x", "o" }, desc = "Flash: Migemo Jump" },
},
}grep の入力をローマ字のまま日本語にヒットさせます(完全版: examples/snacks-picker.lua)。
-- snacks.nvim opts の picker.sources.grep.finder を差し替え
finder = function(opts, ctx)
return require("cmigemo.ext.snacks").grep(opts, ctx)
end- docs/backends.md — バックエンドと辞書の自動検出
- docs/flash.md — flash ジャンプの挙動(先読みラベル・compound 分節・読みモード・文節ジャンプ)
- docs/api.md — セットアップ・API・アーキテクチャ・ヘルスチェック
- cmigemo by MURAOKA Taro (KoRoN) — ローマ字から日本語パターンへの変換を支える C/Migemo エンジン
- rustmigemo / yet-another-migemo-dict by oguna — Rust 実装の migemo バックエンドと対応辞書
- MeCab by Taku Kudo — 読みモードを支える形態素解析器
- flash.nvim / snacks.nvim by folke — 連携先のジャンプ / ピッカープラグイン
- budoux.lua by atusy — Google の BudouX の Lua 移植版。文節分割に使用
MIT