安装 Jekyll-Scholar 插件为博客增加引文系统
仓库地址:Jekyll-Scholar
安装及初步设置
- 安装 jekyll-scholar
$ [sudo] gem install jekyll-scholar
-
如果不存在的话,在站点根目录下创建
_plugins
文件夹以及_plugins/ext.rb
文件 -
在
_plugins/ext.rb
文件中加入如下内容,保存
require 'jekyll/scholar'
- 在站点的
config
文件中插入如下设置
scholar:
style: apa # 默认的 references 格式
locale: en
sort_by: none
order: ascending
source: ./_bibliography # bibliography 的储存位置(如不存在请创建此文件夹)
bibliography: references.bib # 默认的 references 文件名(储存在上一行`source`指定的文件夹中)
details_dir: bibliography
details_layout: bibtex.html
details_link: Details
query: "@*"
-
其中
style
可以修改为 这里 列出的任何一种格式(即去掉.csl
前面的内容)。也可以自行按照文档修改。 -
references.bib
可以由文献管理文件导出并储存在./_bibliography
目录下。
使用
- 书写一篇文章
其中:
-
插入引用文献:
% cite citationkey %
,其中citationkey
是.blb
文件中每一篇来源对应的唯一引用识别码,可以直接在.blb
文件中查看或设置。部分文献管理软件本身即可轻松查看、管理和复制此citationkey
,如您是 Zotero 用户则强烈建议安装 BetterBibTeX 插件增强此功能。 -
插入参考文献列表:
% bibliography --cited %
。需要注意的是,如果不添加--cited
限制则会列出整个.blb
文件中的全部文献,添加此限制后则仅列出该页面中引用过的、存在于此.blb
文件中的文献。.blb
未必需要使用config
中设置的默认文件,也可以灵活地单独指定其他文件(详情请参阅插件文档),这个功能常被学术界个人博客用来展示已发表论文列表。
Troubleshooting
在我安装的过程中,由于原主题依赖的 Jekyll 版本
、Jekyll Scholar 需求的 Jekyll 版本
和 Ruby 版本
三者产生冲突,导致安装报错:
Error: tried to create Proc object without a block
参考这个 issue 下方回复提供的解决方案:
-
安装 RVM :
\curl -sSL https://get.rvm.io | bash -s stable
。 -
切换 Ruby 版本到
2.7.2
:rvm install 2.7.2 && rvm use 2.7.2
。 -
在站点的
Gemfile
中追加以下内容并保存:
group :jekyll_plugins do
# ....
gem 'jekyll', '3.7.3' # <-- 插入这行
# ....
end
-
记得将站点文件夹中所有 Jekyll 版本依赖全部统一为
3.7.3
,否则会报错。 -
最后运行
bundle install
即可。
实际效果
長久命の長助、グーリンダイのポンポコピーのポンポコナーの (Rubenson, 2020)。寿限無、寿限無、海砂利水魚の、やぶら小路の藪柑子、食う寝る処に住む処。食う寝る処に住む処。パイポパイポ パイポのシューリンガン。シューリンガンのグーリンダイ。
海砂利水魚の。グーリンダイのポンポコピーのポンポコナーの、グーリンダイのポンポコピーのポンポコナーの、食う寝る処に住む処、食う寝る処に住む処。シューリンガンのグーリンダイ。やぶら小路の藪柑子、長久命の長助。パイポパイポ パイポのシューリンガン (Sundqvist, 2015)。寿限無、寿限無。
References
- Rubenson, D. (2020). Why Your Scientific Presentation Should Not Be Adapted from a Journal Article. Nature. https://doi.org/10.1038/d41586-020-03300-6
- Sundqvist, J. (2015). A Cup of Freedom?: A Study of Menstrual Cup’s Impact on Girls’ Capabilities. [PhD thesis].