- 後継ライブラリ mojix への移行について
README.mdに記載- 今後の機能追加・改善は mojix リポジトリ にて行います
- MojiJS は ECMAScript 3 / JScript 向けの最終バージョンとして維持されます
- ゼロ幅接合子の次の文字が結合された文字としてカウントされない問題を修正
Unicode.js以下の判定を機能を追加- グラフェムの判定
- 文字の表示幅が0の文字
- スキントーン修飾子
- タグ文字
- テキストのカットや横幅計算時にてスキントーン修飾子、タグ文字、ゼロ幅制御文字の考慮を追加
- 文字解析のコード内にあったUnicode専用のプログラムを
Unicode.jsへ引越し
getMojiDataでEUC-JPに変換できない文字を?で出力していた不具合を修正
v5.0.0にて異体字セレクタを結合文字として判定してしまう問題を修正
- 異体字セレクタの判定に、注釈機能を追加
- 絵文字の判定を強化
- 記号の判定を追加
- Unicodeの制御文字を追加
CJK Unified Ideographs Extension I(2EBF0–2EE5F)CJK Unified Ideographs Extension J(323B0–3347F)
- travisが動作しないので除去
- 結合していない文字も結合文字と判定する場合があるのを修正
- getVariationSelectorsNumberFromCodePoint での戻り値で意図しない文字列を返す問題を修正
- ローマ字で
*w[aiueo]のパターンで足りていない箇所があったのを改善 - 文字解析用の
MojiAnalyzerに定義されているUnicodeの面情報を最新版へ更新 - 文字解析用の
MojiAnalyzerに結合文字判定を追加 - 文字解析用の
MojiAnalyzerに異体字セレクタ判定を追加 - 結合文字と異体字セレクタを含めて1文字と判定して切り出す
MojiJS.toMojiArrayFromString,MojiJS.toStringFromMojiArrayを追加 - 結合文字と異体字セレクタがあると
UTF-32への変換だと1文字を1数値への変換に対応できないため
substrが使用されている箇所をsubstringへ改善- 内部用メソッド名で
toUTF16ArrayfromCodePointとなっていた個所をtoUTF16ArrayFromCodePointへ変更 MojiJS.getWidth,MojiJS.cutTextForWidthにて結合文字と異体字セレクタは文字数を0としてカウントするように変更
- ローマ字で「
nn」があった場合に繰り返しの「っ」に判定される場合があるのを修正
MojiJS.compareToForDefault,MojiJS.compareToForNaturalともに入力をstringからanyへ変更MojiJS.compareToForNaturalの入力値に対してtoStringで文字列化して比較するように改善- 例では、
MojiJS.COMPARE_DEFAULT,MojiJS.COMPARE_NATURALと紹介していましたが、正しくは、MojiJS.compareToForDefault,MojiJS.compareToForNaturalであったのを修正
Windows-31J,Shift_JIS-2004用の文字変換マップをテキストデータで持つことでファイルサイズを1/3程度へ低減、WSHでロードする際のファイルサイズ制限内とするよう改善。- WSH用のライブラリ
mojijs.wsh.jsを追加
- 誤動作防止のため、最適化後に「
do」というキー名になっていた部分を文字列にするように変更 - 誤動作防止のため、配列の最後のカンマを排除
- ES3に対応できるように、
getterを使用している部分を削除
dependenciesに入っていたeslintをdevDependenciesに移動
- my行のローマ字への変換が出来ていなかった問題を修正
package.jsonのmainで指定しているファイルを、UMD形式からCommonJS形式に変更
- 誤って
@ignore指定がついていた箇所を削除
charset名の正規化の強化eucJP-msに対応- 文字コードに依存しない横幅用の関数
getWidth,cutTextForWidthを追加 - 文字コードの自動判定アルゴリズムを改善
- 区点コードと文字との相互変換用の関数を追加
- Unicodeへのエンコード時のBOM付きについて、未設定時のデフォルトをTRUEへ変更
charsetに" with BOM"が入っている場合は優先的にBOM付きとする仕様に変更EUC-JP指定をEUC-JP-2004と同等とみなすように変更- 使うかもと思い見せていた
privateなクラスを外に見せないように変更 getWidthForSJIS,cutTextForSJIS等、文字コードに依存した横幅用の関数を削除。
- 文字解析用の
MojiAnalyzerクラスが、CharcterAnalyzerという名前になっていたのを修正 EUC-JP,EUC-JIS-2004で半角カタカナのSS2が0x8Eではなく、0x80になっていたのを修正EUC-JPにて、IBM拡張文字の判定が漏れていたのを修正
packageのファイル名が誤っているのを修正
- 文字コードの自動判定アルゴリズムを改善
ArrayBinaryからBinaryへ単語を変更- 一般的には不要な関数を隠して、
encode/decodeの2種類のみ見せるように変更 Windows-31J,Shift_JIS-2004への変換失敗時の回数を抽出できるように仕様を変更
- 「ひらがな」から「ローマ字」に変換を追加
- Unicodeのエンディアン指定、BOMに対応
EUC-JP,EUC-JIS-2004に対応- 不要な関数を隠すことに追加して、内部の専用関数も呼び出しできるように修正
gwa,gwi,gwu,gwe,gwoが変換できない問題を修正- バイナリ配列から
UTF-8の変換が正しく動作しない場合があるのを修正 𪘂などのShift_JIS-2004でサロゲートペアの文字がSJISからUnicodeへの文字列変換に失敗する不具合を修正
- npm 公開
- バージョン管理開始