Hashito System 日本語 Tools Blog
Input
rp characters

Details for each setting

How the base text is chosen

The run of kanji immediately before 《reading》 becomes the base text. Use the vertical bar when the base text contains kana, or when you only want part of a kanji run annotated: |及位《のぞき》 makes everything between the bar and 《 the base text. A half-width | works the same way.

What rp is for

rp holds the parentheses shown where ruby is not supported. Supporting environments hide them; others fall back to "kanji(reading)". Screen readers also differ, so emitting them is the safer default. You can change the parenthesis characters.

Per-character readings

With the per-character option, a reading split by spaces (half or full width) or slashes is attached one part per base character. The split only happens when the number of parts equals the number of base characters; otherwise the whole reading stays on the whole base.

Using the parenthesis form

When enabled, "kanji(reading)" is also treated as a reading. Text with ordinary parenthetical remarks will then pick up ruby where you did not intend it, so it is off by default. Full-width () are handled too.

Frequently Asked Questions

Why did nothing get annotated?

If the character before 《reading》 is not kanji, there is no base text to attach to, so the text is emitted as-is. Use the vertical bar to state the base text explicitly, for example |ヒント《てがかり》.

Do I need rp?

Every major browser supports ruby, so the display will not break without it. Emit it when the markup may reach HTML email or an e-book reader that does not support ruby.

Why is there no rb element?

rb was dropped from the HTML specification. The current form places the base text directly inside ruby, and that is what this tool emits.

What if my text contains < or &?

They are escaped. The plain text, the base text and the reading all have <, > and & converted to HTML entities, so pasted characters are never parsed as markup.

Is my text sent anywhere?

No. Everything runs in your browser as JavaScript, and nothing you type is sent to a server.