模板:Side annotation

文档图示 模板文档[查看] [编辑] [历史] [清除缓存]

介绍

编辑

测试中的侧批模板。

本模板显示行间注释,或称侧批,旁批。行间注释,是直排的中文古籍的读者写在相邻行之间的空白内的注释,其排版规则与西文不同,不但可以延展多行,亦不像脚注一样对应正文的单个位置,而是对应一段起点或终点明确的正文。简单的 HTML 行内样式很难在直排环境还原行间注释,也不能自动连接各行注解,允许跨页,勿论同时允许直排和横排两种展示方式。

本模板的设计功能是,输出格式化的行间注释,让用户输入的 Wikitext 和生成的 HTML 代码都能保持正文在前,注释在后的顺序,并允许直排和横排同时输出时指定不同样式。直排环境下,可以模拟行间注释,让注释逐行显示在正文侧面;横排环境下,默认合并所有批语,在对应的正文之后的行内显示。

保持正文在前,注释在后的顺序,有利于机器人或人工智能正确识读,避免错误解析而产生新的异文;未开启 CSS 的用户亦可以清楚地识别出注释(用尖括号〈〉包含在正文后)。

因 Mediawiki 的 Proofread Page 扩展的限制,换行不能自动适应环境,直排嵌入对页面名称有要求(需包括“直排”二字);不能在同一作品页中同时以直排和横排嵌入。未来如果维基文库对直排嵌入和展示有更好的支持,可更新此模板。

用法

编辑

此模板仅提供以<span> 标签组织的格式化的的原文和注释,其样式不在本模板内指明,以达成通用的目的。

样式需要在对于的索引页面样式页内指定 (使用CSS),好处是,可以依直排和横排,指定不同的样式,如:直排时模拟原文效果,让注释文字出现在行间;横排时则显示行内小字。

因此,不推荐为本模板创建模板样式页,因其会与索引页面样式冲突。也不推荐直接在作品页使用,而应在校对页(Page 页面)空间使用。

单行

编辑
{{Side annotation
|1    = 第一行正文
|2    = 第一行注釋
|color  = 顔色
|class  = 子類名
}}

多行

编辑
{{Side annotation
|1    = 第一行正文
|2    = 第二行正文
|3    = 第三行正文
...
|     = 第一行注釋
|     = 第二行注釋
|     = 第三行注釋
...
|color  = 顔色
|class  = 子類名
}}

参数

编辑
  • {{{1}}}{{{2}}}{{{3}}}……:注释对应的正文,每行为一个参数。此参数为注文提供显示位置的参考点。在直排的单行注释模式下,可以让注文与第一个参数的顶端对齐。如果注释文字压缩到行内,注释文字会出现在最后一个参数的后面。
  • {{{n+1}}}{{{n+2}}}{{{n+3}}}……:注释文字,,每行为一个参数。和维基文库其他注释模板类似,第一条注文和最末注文后有一对尖括号〈〉。可以通过指定样式隐藏这一对括号。
  • {{{color}}} : 颜色,样式参数,可选。
  • {{{class}}} : 子类别名称,样式参数,可选。两者的用法见#颜色和子类别

跨页

编辑
更多资料:Help:跨页嵌入

输入跨页的行间注释,需要使用三个子模版: {{Side annotation/s}} (头), {{Side annotation/m}} (中), {{Side annotation/e}} (尾),并且要录入到恰当的页眉,页脚或正文的位置。以与{{Vertical page start}}模板协同使用为例。假设前一页末尾,,后一页开始分别有两行批语,共四行批语。

页面 部分 输入内容
首页 页眉
{{Vertical page start}}
<poem>
正文 ……
{{Side annotation/s
| 第一行正文
| 第二行正文
| 第一行注釋
| 第二行注釋
| file = 文件名
| page = 次頁頁碼
| color =
| class =
}}
页脚
{{Side annotation/e}}
</poem>
{{Vertical page end}}
次页 页眉
{{Vertical page start}}
<poem>
{{Side annotation/s}}

或:

{{Vertical page start}}
<poem>
{{Side annotation/s
| color =
| class =
}}
正文
<noinclude>{{Side annotation/m
|第三行正文
|第四行正文
}}</noinclude>
{{Side annotation/e
|第三行注釋
|第四行注釋
}}

……

页脚
</poem>
{{Vertical page end}}

样式参数 {{{color}}}{{{class}}} 与单页模板中的用法类似,但只能在{{Side annotation/s}} 中指定,且每页都要指定一次,以使 Page 页面空间能显示所选的样式。

嵌入参数 {{{file}}} 填写没有命名空间前缀的文件名, {{{page}}} 输入次页,也就是 {{Side annotation/m}} 所在页的页码。两者都必填。其作用是,在作品页将{{Side annotation/m}} 包括的正文嵌入到前页的正文和注释中间。

颜色和子类别

编辑

可选参数{{{color}}} 可以用于指定个别注释的颜色。例如,全书有少量批语为红色,则可设置color=red

有时行间注释有样式差异,或分归几个不同作者,想要保存这些额外资讯,可以使用可选参数{{{color}}}{{{class}}} 来为行间注释细分子类,再在索引页样式页指定子类的样式。例如,假设有三个注释作者A,B 和C,可以分别设定class=A, class=B, class=C

模板会自动在子类名前加入 wst-side-annotation-s- 的前缀(即 'wst' 前缀,本模板的名称, 's' 后缀的组合),以防止类名冲突。在上面的例子中,可在索引页样式页中指定

.wst-side-annotation-s-A{
	color:blue;
}

即可让作者A的注释显示为蓝色。如果要限定直排环境内的样式,须和直排环境模板协同使用(见下文#直排侧面注文)。以{{Vertical page start}} 为例:

.wst-vertical-page .wst-side-annotation-s-A{
	color:blue;
}

即可指定只有在{{Vertical page start}} 模板的环境内,才显示蓝色。

类似语法也适用与{{Header annotation}} 等类似模板。

样式

编辑

需在索引页样式页指定本模板的样式。

索引页样式页是索引页的子页面,名字为styles.css。例如,如果索引页面的名称为Index:1.pdf,那么,对应的样式页为Index:1.pdf/styles.css

行内注文

编辑

如果仅希望显示行内小字批语,不需要在直排环境内显示花哨的样式,需要输入如下代码:

.wst-side-delimiter{
	display:inline-block;
	color:transparent;
	font-size:0;
	width:0.3rem;
}

.wst-side-annotation-row{
	font-size:x-small;
}

上面的代码中,wst-side-annotation-row 对应所有注文,wst-side-delimiter 对应尖括号。代码的效果是,隐藏尖括号,注文以 x-small (正文的75%)显示。width 让尖括号显示固定宽度的空白,以分隔注文和正文。

直排侧面注文

编辑

如果希望注文在直排环境中侧面显示,在横排环境中行内显示,需要和直排环境的模板协同使用。以{{Vertical page start}} 为例,可以将 Template:Side_annotation/styles-example.css 页的例子复制到索引页面的样式页。其中允许自订的内容包括:

直排高度

编辑

.wst-vertical-page 的高度 height, 和 .wst-vertical-page .wst-side-annotation-row 的高度应相同。

行高

编辑

为使正文给行间注文留出显示空间,可以有两种方法:

  1. 增加全书所有行的行高。例如
    .wst-vertical-page{
    	line-height: 2em;
    }
    
  2. 只增加有批语的行的右边距离。例如
    .wst-vertical-page .wst-side-text-row{
    	margin-right: 1.2rem;
    }
    .wst-vertical-page .wst-side-annotation-row{
    	margin-right: 1.2rem;
    }
    
    这两个边距应相同,单位应选择 rem。

注文横向位置

编辑
.wst-vertical-page .wst-side-annotation-box{
	left:-0.3rem;
}

单位应选择 rem。

示例

编辑

注意事项

编辑

技术细节

编辑

重定向

编辑

参见

编辑