SuperAPI AI 工具集

obsidian-bases

办公与效率

查看项目

更新于 10-15 09:03

技能介绍

用途

Obsidian Bases 技能用于创建和编辑 Obsidian 的 .base 文件,把笔记库中的笔记组织成类似数据库的视图。当需要处理 .base 文件、为笔记创建数据库式视图时使用。

主要能力

  • 创建 .base 文件:在库中创建包含有效 YAML 内容的 .base 文件。
  • 定义范围:通过过滤器按标签、文件夹、属性或日期选择要显示的笔记。
  • 添加公式(可选):在 formulas 部分定义计算属性。
  • 配置视图:添加一个或多个视图(table、cards、list、map),并用 order 指定显示哪些属性。
  • 校验:确认文件是有效 YAML、无语法错误,检查引用的属性和公式是否存在。
  • 在 Obsidian 中测试:打开 .base 文件确认视图正确渲染。

使用方式

工作流:

  1. 创建文件:在库中创建包含有效 YAML 内容的 .base 文件。
  2. 定义范围:添加过滤器选择笔记(按标签、文件夹、属性或日期)。
  3. 添加公式(可选):在 formulas 部分定义计算属性。
  4. 配置视图:添加一个或多个视图(table、cards、list、map),用 order 指定显示属性。
  5. 校验:验证 YAML 无语法错误,检查引用的属性和公式存在。常见问题包括:未加引号的字符串含特殊 YAML 字符、公式表达式引号不匹配、引用 formula.X 但未在 formulas 中定义 X。
  6. 在 Obsidian 中测试:打开 .base 文件确认视图渲染正确;若显示 YAML 错误,检查引号规则。

Schema:.base 文件使用 .base 扩展名,包含有效 YAML。可配置全局 filters、formulas、properties、summaries 和 views。

过滤器语法:支持单条过滤器、and、or、not 以及嵌套过滤器。运算符包括 ==、!=、>、<、>=、<=、&&、||、!。

属性类型:笔记属性(来自 frontmatter)、文件属性(file.name、file.mtime 等)、公式属性(formula.my_formula)。

公式语法:在 formulas 部分定义,支持算术、条件逻辑、字符串格式化、日期格式化、日期差计算等。常用函数包括 date()、now()、today()、if()、duration()、file()、link()。

Duration 类型:两个日期相减得到 Duration,需访问 .days、.hours 等字段后再应用数字函数。

视图类型:table、cards、list、map(map 需要经纬度属性和 Maps 社区插件)。

默认汇总公式:Average、Min、Max、Sum、Range、Median、Stddev、Earliest、Latest、Checked、Unchecked、Empty、Filled、Unique。

嵌入 Bases:在 Markdown 中使用 ![[MyBase.base]] 或 ![[MyBase.base#View Name]] 嵌入。

YAML 引号规则:含双引号的公式用单引号包裹;简单字符串用双引号;复杂表达式正确转义嵌套引号。

适用场景

  • 任务追踪:按标签筛选任务,计算剩余天数、是否逾期、优先级标签,按状态分组并汇总。
  • 阅读清单:按 book/article 标签筛选,计算阅读时长、状态图标、阅读年份,用卡片或表格展示。
  • 日记索引:按文件夹和文件名日期格式筛选,估算字数、显示星期,限制显示最近若干条。

限制

  • 地图视图需要经纬度属性和 Maps 社区插件。
  • Duration 不支持直接 .round()、.floor()、.ceil(),需先访问数值字段。
  • 属性可能并非在所有笔记上存在,需用 if() 做空值保护。
  • 引用未定义的公式会静默失败。
  • 未加引号的字符串若含特殊 YAML 字符会导致语法错误。
  • 关于收费、价格、平台支持等具体信息暂未提供。