vivliostyle/themes

複数の原稿ファイルでセクション番号が連続しない

Opened this issue · 1 comments

Vivliostyle Base Theme で、セクション番号は "1.1.1" の形式になるように設定されています:

https://github.com/vivliostyle/themes/blob/main/packages/%40vivliostyle/theme-base/css/partial/section.css#L16-L20

単一の原稿ファイルならばこれでよいですが、複数の原稿ファイルを結合する場合に、各ファイルでカウンターがリセットされるので、トップレベルのセクション(たいてい「章」をあらわす)の番号がぜんぶ "1" になってしまいます。

考えられる回避策は、次のように各原稿ファイルでセクション番号のカウンターの値をセットすることです。

2番目の原稿ファイルで

<style>
h1 {
  counter-set: vs-counter-sections 2;
}
</style>

3番目の原稿ファイルで

<style>
h1 {
  counter-set: vs-counter-sections 3;
}
</style>

もっとよい方法があるとよいですが……

暫定的な対策として、 以下のようなCSS変数を使ってカウンターをセットするCSS変数を追加しました 18ed51a

:root {
  --vs-section--root-counter-sections: 2;
}

将来的に、ドキュメント数に応じてこのCSS変数を付与するvivliostyle-cliのオプションを追加することで対応しようと思います。