Jekyll Scholar自定义内联引用格式:CSL样式及自定义方法咨询
问题
我用Jekyll搭配Jekyll Scholar搭建了个人博客,现在需要在特定场景下让文本内的引用采用「作者(年份)标题」的格式,示例如下:
Gu et al. (2017) Non-Autoregressive Neural Machine Translation
且引用内容不能包含其他额外信息。想请教三个问题:
- 是否存在能实现该格式的Citation Style Language(CSL)样式?
- 该样式是否可在官方样式库中获取?
- 更普遍地,是否可以通过指定要包含的字段、格式及顺序来生成任意自定义样式的内联引用?
对应的BibTeX条目如下:
@misc{https://doi.org/10.48550/arxiv.1711.02281, doi = {10.48550/ARXIV.1711.02281}, url = {https://arxiv.org/abs/1711.02281}, author = {Gu, Jiatao and Bradbury, James and Xiong, Caiming and Li, Victor O. K. and Socher, Richard}, keywords = {Computation and Language (cs.CL), Machine Learning (cs.LG), FOS: Computer and information sciences, FOS: Computer and information sciences}, title = {Non-Autoregressive Neural Machine Translation}, publisher = {arXiv}, year = {2017}, copyright = {arXiv.org perpetual, non-exclusive license} }
回答
是否存在现成CSL样式?
目前没有完全匹配「作者(年份)标题」这种极简格式的现成CSL样式。主流CSL样式要么遵循学术规范(如APA、MLA),要么仅包含作者+年份组合,很少直接将标题纳入内联引用。能否在官方样式库获取?
不能。官方样式库收录的样式以主流学术出版格式为主,这类自定义的极简引用格式不在现有收录范围内。能否自定义生成任意格式的内联引用?
完全可以。CSL的核心设计目标就是支持自定义引用格式,你可以通过以下方式实现需求:- 挑选一个基础的作者-年份样式(如
apa.csl)作为模板 - 修改样式中
<citation>节点的布局规则,添加标题字段的输出逻辑,调整顺序为「作者 → 年份 → 标题」 - 删除所有多余字段的输出规则(如页码、期刊名等),确保仅保留目标内容
- 将自定义的CSL文件放到Jekyll项目的
_csl目录中,在_config.yml里指定使用该样式
- 挑选一个基础的作者-年份样式(如
以下是一个简化的CSL片段示例,可实现你需要的引用格式:
<citation et-al-min="3" et-al-use-first="1"> <layout delimiter=" "> <group delimiter=" "> <name variable="author" form="short"/> <text macro="year-date"/> <text variable="title" font-style="normal"/> </group> </layout> </citation>
内容的提问来源于stack exchange,提问作者Anil
相关产品推荐
相关产品推荐

