markdown - 语义 Markdown 文件/目录路径
问题描述
Markdown 中处理不作为链接的文件/目录路径的常见做法是使用反引号,它将内容标记为“代码”。这种做法甚至发生在 SO 上。我的问题是,有没有更语义上正确的选项?我不认为文件路径在技术上被认为是“代码”。就连我自己在这里的话也让我怀疑,这引出了第二个高度相关的问题。为什么路径会匹配这个“不打算成为链接”的标准?
有关更多上下文,我在尝试将设置说明添加到编码项目的 README.md 文件中时提出了这个问题。在这里,我试图引用一个文件夹,src/io
. 反省了一下,我的想法是:“也许以不同的方式标记这样的路径会更好 - 也许作为链接,即使单击它并不总是有效?”。但是,这不包括像 SO 问题/答案这样的情况,你只有一个假设的路径(也许这是标准?)。
解决方案
是的,代码跨度是标记文件名和路径的正确方法。
Markdown代码跨度呈现为 HTML代码元素。HTML 规范声明(强调):
该
code
元素代表一段计算机代码。这可以是 XML 元素名称、文件名、计算机程序或计算机可以识别的任何其他字符串。
这明确地将文件名称为code
元素的可接受内容。虽然没有特别提到目录路径,但“计算机可以识别的任何其他字符串”的表达肯定会包括两者。
但是,这是 Markdown,而不是 HTML ......那么我可以提醒您 Markdown 是 HTML 的子集,如原始语法规则中所述。而且,正如那里解释的那样......
对于 Markdown 语法未涵盖的任何标记,您只需使用 HTML 本身。
因此,在 HTML 中标记文件名和路径的正确方法在 Markdown 中是相同的。当然,由于 Markdown 假设代码跨度(使用背包),您不需要使用原始 HTMLcode
元素。反引号是一种更容易读写的快捷方式。
但是,什么时候路径不是链接?
每当他们没有指向可到达的位置时。在 SO 上,我们经常看到有关本地文件和目录路径的问题。如果我发布有关如何访问本地系统上的本地文件的问题,您不会期望单击链接并访问该文件。我需要为此上传文件。但是,要按情况正确报告,我需要使用无法在线访问的本地路径。因此,这样的路径不应该是链接。它们是伪路径还是真实路径都没有关系。
推荐阅读
- mysql - heroku 拒绝连接到 herokujawsDB mysql 数据库
- peoplesoft - 这是子字符串的 Peoplesoft 人员代码问题
- arrays - 在字符串和数组类型 char 不可分配的情况下,数组的修复和动态大小的问题
- reactjs - 如何更改 react-boostrap 复选框的值?
- xcode - 在 swift 包中本地化 XCAsset 图像
- rust - 如何在循环中使用可变状态?
- flutter - Flutter 第三方插件安全吗?
- mysql - 在 sql 输出中打印一个字符
- windows - 术语“Get-CMApplication”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称
- if-statement - 在 awk 中使用 if 条件