yml文件的作用(yml文件格式要求)

yml文件的作用(yml文件格式要求)Matrix 是少数派的写作社区 我们主张分享真实的产品体验 有实用价值的经验与思考 我们会不定期挑选 Matrix 最优质的文章 展示来自用户的最真实的体验和观点 文章代表作者个人观点 少数派仅对标题和排版略作修改 距离上次发布 Obsidian 使用类的文章已经一个月了 这段时间大家过得怎么样 有把 Obsidian 用起来吗 这篇仍然是使用类干货 当你积累了 10 篇自己的笔记 或许会需要它 先来看看它的使用场景 假设你现在积累了一众笔记 这些笔记之间除了双链还有一些关联



Matrix 是少数派的写作社区,我们主张分享真实的产品体验,有实用价值的经验与思考。我们会不定期挑选 Matrix 最优质的文章,展示来自用户的最真实的体验和观点。

文章代表作者个人观点,少数派仅对标题和排版略作修改。


距离上次发布 Obsidian 使用类的文章已经一个月了,这段时间大家过得怎么样?有把 Obsidian 用起来吗?

这篇仍然是使用类干货,当你积累了 10+ 篇自己的笔记,或许会需要它,先来看看它的使用场景。

假设你现在积累了一众笔记,这些笔记之间除了双链还有一些关联,现在你想要一个目录,可以一目了然的聚合这些笔记。

以下是一些场景:

  • 生成 包含同样关键字的笔记 的目录
  • 生成 同一个标签的笔记 的目录
  • 生成 同一个作者的书目 的目录

这时候,Dataview 就派上用场了。

Dataview 可以生成 MOC,或者你也可以跟我一样,不去管 MOC 是什么,就把它当作一个目录。

我们知道,目录是一篇文章的概览。Dataview 其实生成了你的多篇文章目录

如果你有这种需要的话,就接着看下去吧。

众所周知(如果你不知道,现在可以知道了),Obsidian 插件有两种安装方式:

  1. 直接在 搜索安装
  2. 下载到插件文件,一般是一个插件文件夹,然后放在库目录下的 目录下。(至于从哪里下载,可以从 github 或者有些群会下载下来共享)

设置 :该插件不需要修改任何设置即可使用。

接下来就开始生成目录吧!

方法千千万,我只写三种生成目录的方式:

  • 从名字
  • 从作者
  • 从标签

如果有更多的需求,说明你是个高阶使用者,请去查看更高阶的文章,或者去看插件作者的官网。

场景:假设,现在你有多篇关于【习惯】的笔记,并且这些笔记的 名称中都有 「习惯」 两个字 。记录了好几个习惯养成的方法,今天你忽然意识到,关于习惯的方法论已经看了好几个了,想把它们列出来放到一起看看能不能产生什么化学效果。

老规矩,先贴一个语法和效果图:
 

下面讲讲规则,别害怕看「代码」,总共就 5 行,大部分还是不用改的,比如我上面的代码,其实你只用替换双引号里面的内容哟,是不是简单多了?

首先,dv 语法要写到代码块里,如果有了解过 Markdown 的小伙伴,应该对代码块不陌生。上下三个上撇,就是一个代码块。

在首行写上 ,插件就可以识别这部分代码了。

以上解释希望你看懂了。下面我举一个例子,还以开头的假设场景为例,你要怎么写呢?

这样就可以了。

  • list:你创建了一个列表 / 清单。
  • from:留空就是不筛选文件夹和标签,从所有笔记文件去找。
  • where 条件:匹配(contains)了文件名(file.name)中包含「习惯」两个字的笔记

如果你需要排序,就写 sort,不需要,留空就可以。

你应该发现了 和 的写法,没错,这是 Dataview 内置的。下面是 Dataview 官网中描述的支持的元数据,都可以供搜索和排序语法使用。在后面将要说到的创建 table,还可以作为列显示。

上面的从文件名创建列表你看懂了的话,用从标签创建列表练习一下吧~其实上面有包含哦,但我们还是练习以下,以防有人没看懂。

场景:假设,你有几篇笔记,打了同一个标签,比如 。现在你想要把时间管理标签下的笔记形成一个目录。

你该怎么写 Dataview 语句呢?

还记得上面的 4 个关键设置字段吗? 是检索范围,既可以从文件夹,又可以从标签。

不需要排序的话,代码就是这么简单。

你学会了吗?如果学会了,下面我们可以加点好玩的东西。

场景:假设,你最近读了同一个作者的几部作品(论文、书籍、视频、电影都是一样的),形成了几篇笔记。笔记多了以后,你就想弄一个该作者的专题。这时候,有什么办法能做到呢?

哎,Dataview 的支持元数据里可没有作者这个属性啊,怎么办呢?

我们自己加属性!这时候,yml 就派上用场了。

简单的说 yml 是一种标记语言。顺便说一下 markdown 也是一种标记语言。朴素的理解就是以某种规则写的一种文本。

各位,用工具的时候,我们可以不求甚解,拿过来学会怎么用就可以了,甚至,你只用知道怎么在自己的需求中用就可以了。

所以不需要特别去了解 yml。我们来看看 yml 怎么为我们所用吧。

yml 语法大概长这样:

yml 的规则:


  1. 只要写在 6 个横杠符号之间,yml 就可以被识别。够简单吧?
  2. 必须写在文件最上方

里面的 、 我们叫它 key,也就是你给这个字段起的名字,所有的 key 都是自己定义,没有必要的规则,就像你给表格起列名一样。yml 的 key 也支持中文名哦。例如这样:

我就给笔记加了「作者」这个属性。然后我们就可以使用「作者」作为条件建立目录了。

where 和 sort 就可以直接使用你在 yml 中设置的 key 了。看看下面的写法:

看下效果:

上面依次是:包含作者为「鲁迅」的原笔记、聚合作者为「鲁迅」的目录编辑模式、聚合作者为「鲁迅」的目录预览模式。

嗯哼,鲁迅合集就做好了。

上面你已经学会了限制检索范围、模糊搜索文件名来创建列表,学会了从标签创建列表,还学会了用 yml 定义的 key 当作字段做条件,基本的检索语法你已经学会啦。

现在我们想在展示形式上有所改变,比如书目列表。我不想只展示作品的名字,我还想展示作者、阅读日期、标签。

还记得上面列表中的展示形式吗?

对,就是 Dataview 语法的第一行那个 ,现在我们来变一下,写个 吧。

不过我们的语法有一点小小的改动。既然是 table,那么列名就必不可少。

先贴一下代码看看吧:

上面唯一的变化就是 table 这一行:
。table 后面这三个字段就是我为表格设计的列。而 author 是我为笔记中的作者元素,from 是书籍来源,tags 是标签。这三个元素都写在来 yml,如今被 Dataview 识别,就可以展现我想要的列表。

where 条件里,我写的匹配字段是 ,这也是我 yml 里面的元素,表示输入内容,自定义了三个值:book、page、video。

sort 这句,用 author 字段排序,后面跟了一个 ,表示倒序。

以上,Dataview 常用的内容就讲完啦。task 就暂时不讲了,使用的不多。

如果你有什么不明白的,欢迎留言告诉我。谢谢你看到这里,下期再见!

> 下载少数派 客户端 、关注 少数派公众号 ,了解更妙的数字生活 🍃

> 想申请成为少数派作者?冲!

编程小号
上一篇 2025-03-21 15:40
下一篇 2025-03-08 18:33

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/40179.html