Dataview:向文件添加合适的元数据
有两种方式为一个 markdown 文件添加元数据
- 添加到 Properties 文档属性部分;
- 添加到 Inline Fields 行内字段中;
Properties 文档属性
Cite
Properties help you organize information about a note. Adding properties to a note helps you track structured data such as text, links, dates and numbers. Properties can also be used in combination with Community plugins that can do useful things with your structured data.文档属性可帮助你组织有关笔记的信息。将属性添加到笔记中可以帮助你跟踪结构化数据,如文本、链接、日期和数字。属性还可以与社区插件结合使用,这些插件可以对结构化数据做有用的事情。
obsidian 1.4 版本以前,你只能手动在笔记最开头输入 ---
来添加文档属性,现在官方对这块区域做了优化,添加了几种更加方便的方式,并且加入了渲染来降低使用门槛,避免了手动输入时产生的各种语法错误。
- 快捷键法:
ctrl + ;
- 命令面板法:
ctrl + p
,搜索添加文档属性 (英文为 add file property); - 鼠标右键文件标题:选择增加文档属性 (英文为 add file property);
- 标签页标题栏的竖着的三个点:选择增加文档属性 (英文为 add file property);
- 原来的手动输入
---
依旧可行;
YAML 语法规则
- 大小写敏感,可以使用中文;
- 冒号后要跟一个空格;
- 使用缩进来代表层级关系;
- 缩进时只能用空格,不能用 Tab;
- 缩进的空格数不重要,但是同一级元素必须左对齐;
- 用井号标识注释,从
#
到当前行的末尾是注释;
🔺注意:
- 如果你的 YAML 格式正确,则阅读模式下会自动隐藏,否则会标红报错;
- 占位符里的冒号后有空格,如{{time: HH:mm}},留意占位符里的 time,或者 date 冒号后面也是要添加一个空格的;
- 可以使用所有字符作为键 or 值(包括 emoji 在内),但若放在键的位置,则仍需要放入中括号中,除了 task 的情况;
- dv 检索时,原关键字的值的格式必须正确,否则 dv 会报错,但这种情况下不是代码写错了,而是代码检索的对象有问题;
如果你想更详细的 YAML 用法,可以参看 附录-YAML.
Inline Fields 行内字段
如果数据是对于整个文件的,在文档属性中加入元数据,自然很直观。但是如果这个元数据专门针对该文件中的某一个区域中,dataview 提供了更加合理的方法——使用内联字段插入元数据到文件中的某个区域。
内联字段插入元数据的语法很简单,就是 Key::Value
,举个例子:
插入内联字段分为两类
- 行内字段单独成行
Key::Value
注意前面不能有其他内容,否则会被当成 Key 中的内容。::
之后的所有内容都是 Value 的值.
- 行内字段插入某一行
读完这本的感受:[feel:: ...];
读完这本的感受:(feelisthewordafter:: ...);
用方括号或者圆括号把 Key::Value
括起来,区别在于用圆括号括起来后,在阅读模式下不会显示 Key。
下一步,我们就开始学习 12 - 添加元数据至列表和任务,或是返回 Dataview基本语法。
讨论
若阁下有独到的见解或新颖的想法,诚邀您在文章下方留言,与大家共同探讨。
反馈交流
其他渠道
版权声明
版权声明:所有 PKMer 文章如果需要转载,请附上原文出处链接。