思源的剪藏非常好用,经常保存一些英文文章下来看。但是对于生词只能进行标注,而不能有一个集中的位置进行复习。
我尝试过将生词所在的块引用,全部集中在一个文档块里。这非常耗时间,而且不美观,也不能与间隔重复进行配合。
各位大佬有没有什么解决方法或思路?
思源的剪藏非常好用,经常保存一些英文文章下来看。但是对于生词只能进行标注,而不能有一个集中的位置进行复习。
我尝试过将生词所在的块引用,全部集中在一个文档块里。这非常耗时间,而且不美观,也不能与间隔重复进行配合。
各位大佬有没有什么解决方法或思路?
我希望能够记录单词,然后对释义制卡。
但是如果能将记录的文章和生词本结合在一起就非常方便了。
我是这么用的:
1.一个段落制一张卡;
2.用“备注”功能给生词标注释;
3.闪卡复习,评分,等待下次一复习即可。
特点:
1.形式上不是“正面单词,背面释义”,但都能实现“看单词想释义”的目的。
2.一次复习“一捆”单词,而不是完全孤立的单词。
自己用下来效果良好,这种按段落复习单词,不会丢失单词原有的使用语境。
对于生词只能进行标注,而不能有一个集中的位置进行复习。
答:生词本可以通过文档树构建(思源的闪卡机制:复习父文档,将包含子文档的闪卡)。
举例,上图”历年真题“为父文档,对其选择”重复间隔“,将复习包含子文档的所有闪卡,从而实现生词本(集中复习)的功能。
根据文档树的特性,理论上这种生词本可以无限套娃,其实更加灵活,供参考~
我希望能够记录单词,然后对释义制卡。
但是如果能将记录的文章和生词本结合在一起就非常方便了。
我是这么用的:
1.一个段落制一张卡;
2.用“备注”功能给生词标注释;
3.闪卡复习,评分,等待下次一复习即可。
特点:
1.形式上不是“正面单词,背面释义”,但都能实现“看单词想释义”的目的。
2.一次复习“一捆”单词,而不是完全孤立的单词。
自己用下来效果良好,这种按段落复习单词,不会丢失单词原有的使用语境。
对于生词只能进行标注,而不能有一个集中的位置进行复习。
答:生词本可以通过文档树构建(思源的闪卡机制:复习父文档,将包含子文档的闪卡)。
举例,上图”历年真题“为父文档,对其选择”重复间隔“,将复习包含子文档的所有闪卡,从而实现生词本(集中复习)的功能。
根据文档树的特性,理论上这种生词本可以无限套娃,其实更加灵活,供参考~
主要功能是通过 sql 查询挂件来实现的,相关的 sql 如下,因为我这个是韩语的生词本,所以针对韩语词尾变形作了优化,英语、其它语言的话,相应修改就行。
WITH RECURSIVE
hanyi_blocks(id, parent_id, root_id, content, type, subtype, level) AS (
SELECT id, parent_id, root_id, content, type, subtype, 0
FROM blocks
WHERE type = 'h' AND content = '汉义' AND subtype = 'h3'
UNION ALL
SELECT b.id, b.parent_id, b.root_id, b.content, b.type, b.subtype, hb.level + 1
FROM blocks b
JOIN hanyi_blocks hb ON b.parent_id = hb.id
WHERE hb.level < 5 -- 限制递归深度,防止查询过大
),
ciyuan_blocks(id, parent_id, root_id, content, type, subtype, level) AS (
SELECT id, parent_id, root_id, content, type, subtype, 0
FROM blocks
WHERE type = 'h' AND content = '词源' AND subtype = 'h3'
UNION ALL
SELECT b.id, b.parent_id, b.root_id, b.content, b.type, b.subtype, hb.level + 1
FROM blocks b
JOIN ciyuan_blocks hb ON b.parent_id = hb.id
WHERE hb.level < 5 -- 限制递归深度,防止查询过大
)
SELECT
'[' || b.content || '](siyuan://blocks/' || b.id || ')' AS __1____pre__单词,
(
SELECT GROUP_CONCAT(cb.content, '
')
FROM hanyi_blocks cb
WHERE cb.root_id = b.id AND cb.type = 'p' -- 只选择段落类型的块
ORDER BY cb.id
) AS __2____pre__汉义,
(
SELECT GROUP_CONCAT(cb.content, '
')
FROM ciyuan_blocks cb
WHERE cb.root_id = b.id AND cb.type = 'p' -- 只选择段落类型的块
ORDER BY cb.id
) AS __3____pre__词源,
b.created AS __4____date__创建日期
FROM
blocks AS b
WHERE
b.type = 'd'
AND b.content REGEXP '^[\x{AC00}-\x{D7AF}\s]+$' -- 筛选文档标题为纯韩语字符(允许空格)
AND EXISTS (
SELECT 1
FROM blocks hb
WHERE hb.parent_id = b.id AND hb.type = 'h' AND hb.subtype = 'h3' AND hb.content = '汉义'
)
ORDER BY
b.created DESC
LIMIT 1000
WITH RECURSIVE
current_document AS (
SELECT
content AS title,
CASE
WHEN content LIKE '%다' THEN substr(content, 1, length(content) - 1)
ELSE content
END AS root
FROM blocks
WHERE id = '.root{.id}' -- 获取当前文档的ID
),
vowel_changes(from_vowel, to_vowel) AS (
SELECT '이', '여' UNION ALL
SELECT '으', '어' UNION ALL
SELECT '아', '어' UNION ALL
SELECT '오', '와' UNION ALL
SELECT '우', '워' UNION ALL
SELECT '이', '에' UNION ALL
SELECT '지', '져' UNION ALL
SELECT '치', '쳐' UNION ALL
SELECT '비', '벼' UNION ALL
SELECT '피', '펴' UNION ALL
SELECT '기', '겨' UNION ALL
SELECT '키', '켜' UNION ALL
SELECT '시', '셔' UNION ALL
SELECT '디', '뎌' UNION ALL
SELECT '티', '텨' UNION ALL
SELECT '히', '혀' UNION ALL
SELECT '미', '며' UNION ALL
SELECT '니', '녀' UNION ALL
SELECT '리', '려'
),
possible_changes(original, changed, level) AS (
SELECT root, root, 0
FROM current_document
UNION ALL
SELECT
pc.original,
substr(pc.changed, 1, instr(pc.changed, vc.from_vowel) - 1) ||
vc.to_vowel ||
substr(pc.changed, instr(pc.changed, vc.from_vowel) + length(vc.from_vowel)),
pc.level + 1
FROM possible_changes pc
JOIN vowel_changes vc
WHERE pc.changed LIKE '%' || vc.from_vowel || '%'
AND pc.level < 2 -- 限制递归深度
)
SELECT DISTINCT
'[' || replace(b.content, pc.changed, '==' || pc.changed || '==') || '](siyuan://blocks/' || b.id || ')' AS __1____pre__例句,
b.hpath AS __2__文档路径,
cd.title AS __3__搜索词,
pc.changed AS __4__匹配形式
FROM
blocks AS b,
current_document cd,
possible_changes pc
WHERE
b.type = 'p'
AND b.hpath LIKE '%韩语%'
AND (
b.content LIKE '%' || pc.changed || '%'
OR b.content LIKE '%' || pc.changed || '다%'
OR b.content LIKE '%' || pc.changed || '어%'
OR b.content LIKE '%' || pc.changed || '아%'
OR b.content LIKE '%' || pc.changed || '여%'
OR b.content LIKE '%' || pc.changed || '야%'
)
AND b.root_id != '.root{.id}' -- 排除当前文档
GROUP BY b.id
ORDER BY
b.path
LIMIT 30
Hexo 是一款快速、简洁且高效的博客框架,使用 Node.js 编写。
阿里巴巴网络技术有限公司(简称:阿里巴巴集团)是以曾担任英语教师的马云为首的 18 人,于 1999 年在中国杭州创立,他们相信互联网能够创造公平的竞争环境,让小企业通过创新与科技扩展业务,并在参与国内或全球市场竞争时处于更有利的位置。
Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。
你若安好,便是晴天。
Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。
Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。
好记性不如烂笔头。
深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。
据说 99% 的性能瓶颈都在数据库。
Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。
DNSPod 建立于 2006 年 3 月份,是一款免费智能 DNS 产品。 DNSPod 可以为同时有电信、网通、教育网服务器的网站提供智能的解析,让电信用户访问电信的服务器,网通的用户访问网通的服务器,教育网的用户访问教育网的服务器,达到互联互通的效果。
InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。
jsDelivr 是一个开源的 CDN 服务,可为 npm 包、GitHub 仓库提供免费、快速并且可靠的全球 CDN 加速服务。
提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。
百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。
Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。
Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。
React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。
生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。
MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。
Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。
Latke 是一款以 JSON 为主的 Java Web 框架。
CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。
Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。
i18n(其来源是英文单词 internationalization 的首末字符 i 和 n,18 为中间的字符数)是“国际化”的简称。对程序来说,国际化是指在不修改代码的情况下,能根据不同语言及地区显示相应的界面。
HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。