{"id":9406957,"url":"https://github.com/lambdalisue/vim-kensaku","last_synced_at":"2025-04-09T14:11:38.521Z","repository":{"id":65340540,"uuid":"589672530","full_name":"lambdalisue/vim-kensaku","owner":"lambdalisue","description":"🔍 Search Japanese text in Vim's buffer with Roma-ji by Migemo","archived":false,"fork":false,"pushed_at":"2024-11-26T13:21:46.000Z","size":73,"stargazers_count":72,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-02T12:11:13.317Z","etag":null,"topics":["migemo","neovim","vim"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lambdalisue.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"lambdalisue"}},"created_at":"2023-01-16T17:02:33.000Z","updated_at":"2025-02-15T16:46:57.000Z","dependencies_parsed_at":"2024-01-13T19:19:50.260Z","dependency_job_id":"accee52f-4467-4f5e-986d-73741336ceb5","html_url":"https://github.com/lambdalisue/vim-kensaku","commit_stats":null,"previous_names":["lambdalisue/vim-kensaku"],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdalisue%2Fvim-kensaku","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdalisue%2Fvim-kensaku/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdalisue%2Fvim-kensaku/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lambdalisue%2Fvim-kensaku/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lambdalisue","download_url":"https://codeload.github.com/lambdalisue/vim-kensaku/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248054195,"owners_count":21039952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["migemo","neovim","vim"],"created_at":"2024-05-10T18:03:02.788Z","updated_at":"2025-04-09T14:11:38.498Z","avatar_url":"https://github.com/lambdalisue.png","language":"TypeScript","funding_links":["https://github.com/sponsors/lambdalisue"],"categories":["TypeScript"],"sub_categories":[],"readme":"# 🔍 kensaku.vim\n\n[![Deno 1.45.0 or above](https://img.shields.io/badge/Deno-Support%201.45.0-yellowgreen.svg?logo=deno)](https://github.com/denoland/deno/tree/v1.45.0)\n[![Vim 9.1.0448 or above](https://img.shields.io/badge/Vim-Support%209.1.0448-yellowgreen.svg?logo=vim)](https://github.com/vim/vim/tree/v9.1.0448)\n[![Neovim 0.10.0 or above](https://img.shields.io/badge/Neovim-Support%200.10.0-yellowgreen.svg?logo=neovim\u0026logoColor=white)](https://github.com/neovim/neovim/tree/v0.10.0)\n[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)\n[![vim help](https://img.shields.io/badge/vim-%3Ah%20kensaku-orange.svg)](doc/kensaku.jax)\n[![test](https://github.com/lambdalisue/kensaku.vim/actions/workflows/test.yml/badge.svg)](https://github.com/lambdalisue/kensaku.vim/actions/workflows/test.yml)\n\nKensaku (_kensaku.vim_) は Migemo\nを利用してローマ字のまま日本語検索を行う最低限の機能を提供するプラグインです。\n\n既存の Migemo プラグインとは異なり JavaScript で実装された [jsmigemo][jsmigemo]\nを利用するため [C/Migemo][c/migemo] のインストールは不要です。\n\n[jsmigemo]: https://github.com/oguna/jsmigemo\n[c/migemo]: https://www.kaoriya.net/software/cmigemo/\n\n## 必須条件\n\nKensaku は denops プラグインとして作られているため [Deno](https://deno.land) と\n[vim-denops/denops.vim][vim-denops/denops.vim]\nがインストールされている必要があります。\n\n- [vim-denops/denops.vim][vim-denops/denops.vim]\u003cbr\u003e An ecosystem for writing\n  Vim/Neovim plugin in Deno.\n\n[vim-denops/denops.vim]: https://github.com/vim-denops/denops.vim\n\n## インストール\n\n[Deno](https://deno.land) をインストール後\n[vim-plug](https://github.com/junegunn/vim-plug)\nなどを利用して以下の様にインストールします。\n\n```vim\nPlug 'vim-denops/denops.vim'\nPlug 'lambdalisue/kensaku.vim'\n```\n\n## 利用方法\n\n### インテグレーションプラグイン\n\n必要なインターフェースを提供するインテグレーションプラグインを利用します。\n\n- [lambdalisue/kensaku-command.vim](https://github.com/lambdalisue/kensaku-command.vim)\u003cbr\u003eローマ字によるバッファ内日本語検索を行う\n  `Kensaku` コマンドを提供するプラグイン\n- [lambdalisue/kensaku-search.vim](https://github.com/lambdalisue/kensaku-search.vim)\u003cbr\u003e\n  `/` や `?` による検索にローマ字による日本語検索を自然に提供するプラグイン\n- [Milly/ddu-filter-kensaku](https://github.com/Milly/ddu-filter-kensaku)\u003cbr\u003e\n  [Shougo/ddu.vim](https://github.com/Shougo/ddu.vim)\n  にてローマ字による日本語フィルタを有効にするプラグイン\n- [ompugao/ctrlp-kensaku](https://github.com/ompugao/ctrlp-kensaku)\u003cbr\u003e\n  [ctrlpvim/ctrlp.vim](https://github.com/ctrlpvim/ctrlp.vim)\n  にてローマ字による日本語フィルタを有効にするプラグイン\n- [yuki-yano/fuzzy-motion.vim](https://github.com/yuki-yano/fuzzy-motion.vim)\u003cbr\u003eバッファ内の任意の場所にジャンプする際にローマ字指定で日本語を指定可能\n\n### TypeScript からの利用 (denops)\n\n[`denops.dispatch()`](https://jsr.io/@denops/core@7.0.1/doc/type/~/Denops.dispatch)\nを利用して `query` 関数を呼び出します。\n\n```\nconst pattern = await denops.dispatch(\"kensaku\", \"query\", \"kensaku\");\n```\n\n### Vim script からの利用\n\n`kensaku#query()` を以下のように呼び出します。\n\n```vim\nfunction! Search(value) abort\n  let @/ = a:value\n  normal! n\nendfunction\n\ncall Search(kensaku#query('kensaku'))\n```\n\n上記は処理を同期的に待つので、非同期が必要な場合は代わりに\n`kensaku#query_async()` を利用します。\n\n```vim\nfunction! Search(value) abort\n  let @/ = a:value\n  normal! n\nendfunction\n\ncall kensaku#query_async(\n      \\ 'kensaku',\n      \\ { v -\u003e Search(v) },\n      \\)\n```\n\n## 正規表現モードに関して (magic/very magic)\n\n`kensaku#query()` がデフォルトで返す正規表現には `\\m` が含まれるようになったため\n`\\v` や `\\m` の前置が不要になりました。 なお、この挙動はデフォルトの `\"rxop\"`\n(`g:kensaku#rxop#vim`) で定義されているため、カスタムの `\"rxop\"`\nを指定した場合は別です。\n\n## 参考情報\n\n- [Migemo: ローマ字のまま日本語をインクリメンタル検索](http://0xcc.net/migemo/)\n- [辞書構造を工夫した Migemo 実装の紹介](https://qiita.com/oguna/items/c70e8c409b663d74113e)\n- [Vim で migemo を使って日本語でもローマ字のまま検索がしたい](http://haya14busa.com/vim_migemo_search/)\n\n## License\n\nThe code in this repository follows MIT license, texted in [LICENSE](./LICENSE).\nContributors need to agree that any modifications sent in this repository follow\nthe license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flambdalisue%2Fvim-kensaku","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flambdalisue%2Fvim-kensaku","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flambdalisue%2Fvim-kensaku/lists"}