Netherworld's Pretend Minibar
    Have ideas to improve npm?Join in the discussion! »

    jp-wrap

    0.2.2 • Public • Published

    jp-wrap

    日本語の禁則処理に対応したword-wrap

    example

    made out of meat in Japanese

    var wrap = require('jp-wrap')(20);
    console.log(wrap('「僕らはみんな、肉だ」とかって、substackが言ってたよ。'));

    output:

    「僕らはみんな、肉
    だ」とかって、
    substackが言ってた
    よ。
    

    centered

    var wrap = require('jp-wrap')(20, 60);
     
    console.log(wrap(
        'CureAppは、アプリを薬のように医師が処方する時代を創っていく会社です。' +
        '20世紀の医学は感染症をcontrollableなものとしました。' +
        '平均寿命が延伸するにつれて見えてきた、21世紀の医療の大きな課題は生活習慣病です。' +
        'しかし生活習慣は、当たり前のことですが、病院の中にはありません。' +
        '医療が介入しにくい場所にあった生活習慣。そこに24時間介入できるのが、' +
        'アプリでしょう。最新のevidenceやガイドラインに沿った指導を毎日行います。' +
        '「アプリの治療が当たり前になる」そんな未来を創っていきたいのです。'
    ));

    output:

                        CureAppは、アプリを薬のように医師が処方                     
                        する時代を創っていく会社です。20世紀の医                    
                        学は感染症をcontrollableなものとしまし                      
                        た。平均寿命が延伸するにつれて見えてき                      
                        た、21世紀の医療の大きな課題は生活習慣病                    
                        です。しかし生活習慣は、当たり前のことで                    
                        すが、病院の中にはありません。医療が介入                    
                        しにくい場所にあった生活習慣。そこに24時                    
                        間介入できるのが、アプリでしょう。最新の                    
                        evidenceやガイドラインに沿った指導を毎日                    
                        行います。「アプリの治療が当たり前にな                      
                        る」そんな未来を創っていきたいのです。                      
    

    install

    npm install jp-wrap

    methods

    substack/node-wordwrapと似たAPIにしました。

    var jpWrap = require('jp-wrap');

    jpWrap(stop, options)

    文字列を受け取って、新しい文字列を返す関数 を返す. stopは文字の幅。

    jpWrap(start, stop, options)

    2つの数字が与えられたときは 文字列を与えるとstop - startの幅でwrapし、左右にstartだけのpaddingをつける関数 を返す.

    options

    name type 意味 デフォルト
    trim boolean 入力文字列の改行を利用しないときtrue false
    half boolean 半角文字の行頭禁則処理を行うかどうか false
    breakAll boolean trueだとcssのword-break:break-allと同じ挙動 false
    fullWidthSpace boolean 全角スペースが行頭にあった場合削除するか true
    sameWidth boolean 全角と半角文字の両方を幅2として計算するか false
    regexs array 幅の計算方法を正規表現で指定する []

    optionsの例

    小文字のアルファベットを幅3として計算する

    new JpWrap(100, {regExs: [{pattern:/[a-z]/, width: 3}]});

    小文字のアルファベットを幅3、大文字のアルファベットを幅5として計算する

    new JpWrap(100, {regExs: [{pattern:/[a-z]/, width: 3}, {pattern:/[A-Z]/, width: 5}]});

    もっと内部をさわりたい方

    var JpWrap = require('jp-wrap').JpWrap;

    クラスが取れます。 こちらの仕様は API docs にあります。

    LICENSE

    MIT

    thanks to

    下記を参考にし、改変しました。

    Copyright(c) 2014-2015 IGARASHI Makoto https://raw.githubusercontent.com/raccy/japanese-wrap/master/LICENSE.md Copyright(c) 2013-2015 James Halliday https://raw.githubusercontent.com/substack/node-wordwrap/master/LICENSE

    Install

    npm i jp-wrap

    DownloadsWeekly Downloads

    55

    Version

    0.2.2

    License

    MIT

    Last publish

    Collaborators

    • avatar