首页 > 解决方案 > 语义 Markdown 文件/目录路径

问题描述

Markdown 中处理不作为链接的文件/目录路径的常见做法是使用反引号,它将内容标记为“代码”。这种做法甚至发生在 SO 上。我的问题是,有没有更语义上正确的选项?我不认为文件路径在技术上被认为是“代码”。就连我自己在这里的话也让我怀疑,这引出了第二个高度相关的问题。为什么路径会匹配这个“不打算成为链接”的标准?

有关更多上下文,我在尝试将设置说明添加到编码项目的 README.md 文件中时提出了这个问题。在这里,我试图引用一个文件夹,src/io. 反省了一下,我的想法是:“也许以不同的方式标记这样的路径会更好 - 也许作为链接,即使单击它并不总是有效?”。但是,这不包括像 SO 问题/答案这样的情况,你只有一个假设的路径(也许这是标准?)。

标签: markdown

解决方案


是的,代码跨度是标记文件名和路径的正确方法。

Markdown代码跨度呈现为 HTML代码元素。HTML 规范声明(强调):

code元素代表一段计算机代码。这可以是 XML 元素名称、文件名、计算机程序或计算机可以识别的任何其他字符串。

这明确地将文件名称为code元素的可接受内容。虽然没有特别提到目录路径,但“计算机可以识别的任何其他字符串”的表达肯定会包括两者。

但是,这是 Markdown,而不是 HTML ......那么我可以提醒您 Markdown 是 HTML 的子集,如原始语法规则中所述。而且,正如那里解释的那样......

对于 Markdown 语法未涵盖的任何标记,您只需使用 HTML 本身。

因此,在 HTML 中标记文件名和路径的正确方法在 Markdown 中是相同的。当然,由于 Markdown 假设代码跨度(使用背包),您不需要使用原始 HTMLcode元素。反引号是一种更容易读写的快捷方式。

但是,什么时候路径不是链接?

每当他们没有指向可到达的位置时。在 SO 上,我们经常看到有关本地文件和目录路径的问题。如果我发布有关如何访问本地系统上的本地文件的问题,您不会期望单击链接并访问该文件。我需要为此上传文件。但是,要按情况正确报告,我需要使用无法在线访问的本地路径。因此,这样的路径不应该是链接。它们是伪路径还是真实路径都没有关系。


推荐阅读