5.0.0 • Published 7 years ago

rubyfy v5.0.0

Weekly downloads
5
License
MIT
Repository
github
Last release
7 years ago

rubyfy

Easily write ruby annotations and output them as HTML.

npm Build Status Coverage Status devDependency Status node

Usage

const rubyfy = require('rubyfy')

Convert a string by wrapping the ruby text in full-width parentheses ():

rubyfy('日(に)本(ほん)語(ご)')
// => <ruby>日<rp>(</rp><rt>に</rt><rp>)</rp></ruby><ruby>本<rp>(</rp><rt>ほん</rt><rp>)</rp></ruby><ruby>語<rp>(</rp><rt>ご</rt><rp>)</rp></ruby>

The type of the return value is an array of DOM Nodes, which should be compatible with libraries like bel.

Any string of numerals 0-9, CJK characters, and the characters and , will be captured.

rubyfy('今日(きょう)')
// => <ruby>今日<rp>(</rp><rt>きょう</rt><rp>)</rp></ruby>

Force a portion of the text to be the ruby body using double full-width parentheses (()):

rubyfy('((Alice))(アリス)')
// => <ruby>Alice<rp>(</rp><rt>アリス</rt><rp>)</rp></ruby>

Advanced usage

You can take the parser and the renderer to use for yourself:

let parser = new rubyfy.Parser('漢(かん)字(じ)です')
let parseResult = parser.parse()
parseResult

Output:

[
  { "rb": "漢", "rt": "かん" },
  { "rb": "字", "rt": "じ"},
  "です"
]

Render using the parse result:

let renderer = new rubyfy.Renderer(parseResult)
let renderResult = renderer.render()

More details on the API documentation.

5.0.0

7 years ago

4.0.1-1

7 years ago

4.0.1-0

7 years ago

4.0.0

7 years ago

3.0.0

7 years ago

2.0.1

8 years ago

1.1.3

8 years ago

1.1.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago