模板备忘单
请在评论区留下您常用的用法,我们将将它们添加到列表中。
作者
获取作者简称
Note Properties
authors: <%= it.authorsShort %>
输出类似 Gerasimavicius et al.
的形式。
在摘录模板获取作者简称
摘录所属的文献信息存储在 it.docItem
中。
Note Annotation
from <%= it.docItem.authorsShort %>
获取完整姓名的作者列表
Note Properties
authors: [<%= it.authors %>]
获取作者的名字或姓氏列表
Note Properties
authors: [<%= it.authors.map(v => v.firstName) %>]
# 或者
authors: [<%= it.authors.map(v => v.lastName) %>]
💡
请注意,名字和姓氏并不总是存在
摘要
以单个段落获取摘要
Note Content
## 摘要
<%= it.abstractNote.first().replace(/[\r\n]+/g, " ") %>
标签
仅包含手动创建的标签
要仅包含手动创建的标签,除外从文献中提取的标签,请使用以下代码:
Note Properties
tags: [<%= it.tags.filter(t => t.type === 0) %>]
这是 v1.1.0 之前的默认行为。
💡
在 Zotero 中,手动创建的标签值为 0,而从文献中提取的标签值为 1。
分类/收藏 (Collection)
获取所有分类
Note Properties
collections: [<%= it.collections %>]
获取分类层级
Note Properties
collections: [<%= it.collections.map(c => c.path) %>]
分类层级默认以 >
分隔,输出类似 Collection 1 > Collection 2 > Collection 3
。
你也可以使用 join 函数自定义分隔符,例如以下示例将使用 /
作为分隔符,输出类似多级标签的形式 (A/B/C
)
Note Properties
collection-path: [<%= it.collections.map(c => c.path.join("/")) %>]
获取最高层级的分类
Note Properties
top-collections: [<%= [...new Set(it.collections.map(c => c.path[0]))] %>]
日期
获取文献导入 Zotero 的日期
Note Properties
import-date: <%= it.dateAccessed %>
获取文献发表日期
Note Properties
publish-date: <%= it.date %>
分组
有关详细信息,请参见 Object.groupBy (opens in a new tab) 和 Map.groupBy (opens in a new tab)。
按摘录颜色分组
Note Annotations
<% const byColor = Object.groupBy(it, (annot) => annot.colorName);
for (const color in byColor) { -%>
## <%= color %>
<%_ for (const annot of byColor[color]) { %>
<%~ include("annotation", annot) %>
<%_ } %>
<% } %>
按摘录颜色分组,自定义标签
Note Annotations
<% const byColor = Object.groupBy(it, (annot) => annot.colorName);
const label = {
"red": "红色",
"orange": "橙色",
"yellow": "黄色",
"gray": "灰色",
"green": "绿色",
"cyan": "青色",
"blue": "蓝色",
"navy": "海军蓝",
"purple": "紫色",
"brown": "棕色",
"magenta": "品红",
};
// 合并有标签的颜色和任何未指定标签的颜色
// 保持在label中设置的颜色顺序
const colorSet = new Set([...Object.keys(label), ...Object.keys(byColor)]);
for (const color of colorSet) {
if (!(color in byColor)) continue -%>
### <%= label[color] ?? color %>
<%_ for (const annot of byColor[color]) { %>
<%~ include("annotation", annot) %>
<%_ } %>
<% } %>