gpt4 book ai didi

metadata - Markdown 元数据格式

转载 作者:行者123 更新时间:2023-12-03 08:54:55 25 4
gpt4 key购买 nike

在 Markdown 格式的帖子中嵌入元数据是否有标准或约定,例如发布日期或由渲染器进行条件渲染的帖子作者?

看起来像这样 Yaml metadata格式可能是它。

有各种各样的策略,例如随附文件 mypost.meta.edn ,但我希望将其全部保存在一个文件中。

最佳答案

有两种常见的格式看起来非常相似,但实际上在某些非常具体的方面有所不同。还有一个非常不同的第三个。

YAML 前沿问题

Jekyll 静态站点生成器普及了由 YAML section markers 分隔的 YAML 前端内容.是的,破折号实际上是 YAML 语法的一部分。元数据是使用任何有效的 YAML 语法定义的。以下是来自 Jekyll docs 的示例:

---
layout: post
title: Blogging Like a Hacker
---


请注意,YAML 前端内容不会由 Markdown 解析器解析,而是在由 Jekyll(或您使用的任何工具)解析之前被删除,并且实际上可以用于请求与该页面的默认 Markdown 解析器不同的解析器(我不记得 Jekyll 是否这样做了,但我见过一些这样做的工具)。

MultiMarkdown 元数据

更老更简单的 MultiMarkdown Metadata实际上并入了几个 Markdown 解析器。虽然最近更新为可选地支持 YAML 分隔符,但传统上,元数据结束,Markdown 文档从第一个空白行开始(如果第一行是空白,则没有元数据)。虽然语法看起来与 YAML 非常相似,但仅支持键值对,没有隐含类型。以下是 MultiMarkdown 文档中的一个示例:

Title:    A Sample MultiMarkdown Document  
Author: Fletcher T. Penney
Date: February 9, 2011
Comment: This is a comment intended to demonstrate
metadata that spans multiple lines, yet
is treated as a single value.
CSS: http://example.com/standard.css


MultiMarkdown 解析器包含一系列附加选项,这些选项是该解析器独有的,但键值元数据跨多个解析器使用。不幸的是,我从未见过任何两个行为完全相同的。如果没有定义这种格式的 Markdown 规则,每个人都会做出自己略有不同的解释,从而导致了很多变化。

更常见的一件事是支持 YAML 分隔符和基本的键值定义。

Pandoc 标题栏

为了完整起见,还有 Pandoc Title Block . If 的语法非常不同,不容易与其他两个混淆。据我所知,它只支持 Pandoc(如果启用),并且它只支持三种类型的数据:标题、作者和日期。以下是 Pandoc 文档中的一个示例:
% title
% author(s) (separated by semicolons)
% date

请注意,Pandoc 标题块是 Pandoc 支持的两种样式之一。 Pandoc 还支持 YAML Metadata如上所述。默认情况下,这两个扩展均未启用。

关于metadata - Markdown 元数据格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44215896/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com