anti scroll

ブラウザと小説の新しい関係を模索する

nehan.js 5.5.0

nehan.js 5.5.0をリリースしました。

github.com

以下、5.4.x系列からの変更点です。

変更点

  • pseudo-classの:matches, :not, :langをサポートしました。
  • MathJaxを試験的にサポートしました。demo
  • サロゲートペアに対応しました。これにより、emoji等が文字化けせず、そのまま出力できるようになりました。demo
  • ブラウザがサポートしてる場合は、ネイティブなtext-combine-uprightが使用されるようになりました。demo
  • text-orientationの値にsideways, upright, mixedが指定できるようになりました。demo
  • list-style-positionの値に、insideが指定できるようになりました。
  • cssのfont値をshorthand形式でも指定できるようになりました。
  • Nehan.Preloadsモジュールの追加。サイズ未設定のimgmathなどのサイズが動的に取得されるようになりました。
  • selector-keyの値に関数を指定した場合、当該セレクタonloadフックとして評価されるようになりました。
  • nehan.jsによる組版から除外して、外部ソースをそのまま取り込むための属性値の名前がpastedからlazyに変更されました。
  • Nehan.PagedElementが削除されました。今後はNehan.Documentを使用して下さい。
  • Nehan.LexingRuleが削除されました。今後、シングルタグの定義にはNehan.setSingleTagNameを使用して下さい。
  • Nehan.Rgb, Nehan.Palette, Nehan.Colorsモジュールが削除されました。

Nehan.PagedElementの削除について

v5.5.0から、Nehan.PagedElementが削除されました。

これの中身は、単なるNehan.Documentのラッパで、やってることはページ状態と表示先DOMをDocumentクラスと一緒に管理しているだけのものです。

Nehan.Documentと役割が被ることが多いので、今回のバージョンアップで削除してしまうことにしました。

MathJaxについて

MathJaxのサポートですが、現時点では本ソースへの取り込みではなく、プラグインでの対応です。

詳しくは以下のリンクから確認して下さい。

https://github.com/tategakibunko/nehan.js/tree/master/plugins