适用范围:
1. 作用:
- 提供简单的同义词系统
- 支持合并同义词
- 一键重命名同义词
- 支持重命名breadcrumbs的标签类型字段
- 如
bc-tag-note-tag: #标签
- 如
- 支持重命名breadcrumbs的标签类型字段
- 支持多级标签, 且支持同时具有多个父级标签链, 具备网的结构
- 支持使用一个同义词修饰另一个同义词
- 提供强大的关键词捕捉功能
- 简化导入的同义词标签
2. 场景
- 作为obsidian的插件
梗概:
qql1自己开发的同义词系统, 基于obsidian的标签
同义词系统标准:
基本遵守obsidian标签机制
child::obsidian 标签机制
1. 同义词组标签语法
1.1. 实例
#关键字1-关键词2-(注释标签1-注释标签2)关键词3
#aa-bb-(ee-(gg-hh,ii-jj;kk-)ff)cc-dd
1.2. 说明
- 一定要有横杠, 这个标签才会被视为同义词标签
注释标签
- 必须使用中文的圆括号,并紧跟在指定同义词前面
- 用于解释的同义词标签 不能具有层级
- 直接用子标签单独表示即可
- 注释标签可以嵌套使用
- 可以有多个注释标签
- 多个注释标签之间使用逻辑运算符连接 ^7227c6
!
等同于js的!
,
等同于js的&&
;
等同于js的||
- 不区分大小写
- 可以使用
【】
调整逻辑运算的优先级
新建同义词组
- 直接在谋篇笔记中按照同义词组语法,新建一个obsidian标签即可
2. 为用户端提供的遍便利服务
2.1. 支持导入与本文相关的同义词
- 当打开一个还没有导入过同义词的文档时, 会自动进行导入
- 可以手动导入
- 一般设置为F5按键
2.2. 一键合并全库有交集的同义词
2.3. 一键重命名指定标签
选中指定标签后(选择性包含#
井号), 然后执行重命名命令
3. 实现细节
- 有效代码行数:2000行
- 截止24-04-20
- 技术栈: got、正则表达式
- 重点:括号匹配、嵌套逻辑表达式求值、文本处理(提取指定规则内的字符串、js配合正则实现复杂匹配)、基本功能层层封装、DOM事件
功能
3.1. 导入与本文相关的同义词
child::导入与本文相关的同义词技术细节
同义词组的管理
存储与访问同义词组
- 作为obsidian标签进行存储
- 通过obAPI获取所有标签,然后做筛选
3.2. 一键合并全库有交集的同义词组
3.3. 一键重命名指定标签
新增同义词组
直接新增Obsidian标签
father:: synonym插件, 更全面的注释标签功能(完毕)