{"_id":"@azamiharu/marked-aozora-ruby","name":"@azamiharu/marked-aozora-ruby","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@azamiharu/marked-aozora-ruby","version":"1.0.0","description":"青空文庫ライクな｜ルビ《ふりがな》をサポートする marked 拡張機能","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","main":"./dist/index.cjs","exports":{"./types":{"types":"./dist/types.d.ts","import":"./dist/types.js","require":"./dist/types.cjs"},"./constants":{"types":"./dist/constants.d.ts","import":"./dist/constants.js","require":"./dist/constants.cjs"},".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"scripts":{"build":"tsup src --format cjs,esm --dts --clean","test":"vitest run"},"keywords":["marked","markdown","aozora-bunko","aozora-ruby","html-ruby","ruby","japanese"],"author":{"name":"AzamiHaru"},"license":"MIT","publishConfig":{"access":"public"},"peerDependencies":{"marked":">=17.0.0"},"gitHead":"4f046e9896ba484ee95a6db9c39a895b7c29d4e2","_id":"@azamiharu/marked-aozora-ruby@1.0.0","_nodeVersion":"22.16.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-9WGKHBtqUWC+aejxtucpPO6xuDEC/PJRDLov1e3PnKGl0PQAuityyyQVN3td9ivMYwZ2njqpcjhI4fNIqSbguw==","shasum":"5ea27c8b9d3fbfd58c0899776361f5096f37d345","tarball":"https://registry.npmjs.org/@azamiharu/marked-aozora-ruby/-/marked-aozora-ruby-1.0.0.tgz","fileCount":20,"unpackedSize":16569,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCtSVZu/0mqmbaNuo3XwlLkyEE3+fwHcMTSRm9CQks8oQIgBlmA3CXq2JjA/4SdNvSoZAndRrmhnMtcGxRwmpy4d1g="}]},"_npmUser":{"name":"azamiharu","email":"haruazamicat+npm@gmail.com"},"directories":{},"maintainers":[{"name":"azamiharu","email":"haruazamicat+npm@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/marked-aozora-ruby_1.0.0_1770624456517_0.21924649244895722"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-09T08:07:36.449Z","1.0.0":"2026-02-09T08:07:36.647Z","modified":"2026-02-09T08:07:36.891Z"},"maintainers":[{"name":"azamiharu","email":"haruazamicat+npm@gmail.com"}],"description":"青空文庫ライクな｜ルビ《ふりがな》をサポートする marked 拡張機能","keywords":["marked","markdown","aozora-bunko","aozora-ruby","html-ruby","ruby","japanese"],"author":{"name":"AzamiHaru"},"license":"MIT","readme":"# @azamiharu/marked-aozora-ruby\n\n青空文庫ライクなルビ（`｜漢字《かんじ》` または `漢字《かんじ》`）をサポートする marked 拡張機能です。\n\n## 使い方\n\n```javascript\nimport { markedAozoraRuby } from \"@azamiharu/marked-aozora-ruby\";\nimport { marked } from \"marked\";\n\nmarked.use(markedAozoraRuby());\n\nconst html = marked.parse(\"漢字《かんじ》\");\n// <p><ruby>漢字<rp>《</rp><rt>かんじ</rt><rp>》</rp></ruby></p>\n```\n\n## 変換仕様\n\n- **明示的な開始記号:** `｜`（全角）または `|`（半角）[^1] を使用すると、その直後から `《` までをルビ対象とします。\n- **自動認識:** 開始記号がない場合、`《` の前後にある同一文字種（漢字、ひらがな、カタカナ、アルファベット）の連続を自動的にルビとして認識します。\n  - **注意1:** 漢字とひらがなが混在する場合（例：`食べ物《たべもの》`）は、直前の同一文字種のみが抽出されます（この例では `物` だけがルビ対象となります）。送り仮名を含む単語全体にルビを振る場合は、`｜食べ物《たべもの》` のように開始記号を使用してください。\n  - **注意2:** ひらがなとカタカナは別種です。混在する場合（例：`一弗《いちドル》`）は、`《` 〜 `》` をルビ注釈として認識しません。`｜一弗《いちドル》` のように開始記号を使用するか、`一《いち》弗《ドル》` のように分割してください。\n- **エスケープ:** `｜《` または `|《` は、記号としての `《` に変換されます[^1]。\n\n## 詳細な挙動\n\n- **インライン装飾:** ルビ対象（`｜` 〜 `《` の間）には、強調などの Markdown インライン要素を含めることができます。\n  - **注意:** ルビ注釈（`《` 〜 `》` の間）には含めることができません。\n- **HTMLエスケープ:** ルビ内の `<` や `&` などの特殊文字は安全にエスケープされます。\n\n[^1]: `|`（半角） `｜《` `|《` は青空文庫注記の仕様ではありませんが、複数の有名な小説投稿サイトで採用されているため、実用性を重視して実装しています。\n","readmeFilename":"README.md","_rev":"1-37f07a7cb078db6f35639ca2e79b508a"}