如何在Markdown中编写注释,即HTML输出中未呈现的文本?我在Markdown项目中没有发现任何东西。
当前回答
Vim Instant Markdown用户需要使用
<!---
First comment line...
//
_NO_BLANK_LINES_ARE_ALLOWED_
//
_and_try_to_avoid_double_minuses_like_this_: --
//
last comment line.
-->
其他回答
使用mkdocs时,添加mkdocs.yml:
- pymdownx.striphtml:
strip_comments: true
strip_js_on_attributes: false
然后在任何markdown文件中使用普通的html注释,如
<!-- this is a comment -->
将从html输出中删除。
这项小型研究证明并完善了马格努斯的答案
最独立于平台的语法是
(empty line)
[comment]: # (This actually is the most platform independent comment)
这两个条件都很重要:
使用#(而不是<>)注释前有空行。注释后的空行对结果没有影响。
严格的Markdown规范CommonMark仅适用于此语法(而不适用于<>和/或空行)
为了证明这一点,我们将使用Alexandre Mutel的Babelmark I。该工具检查大量Markdown实现上特定源代码的呈现。
(+-通过了测试,--没有通过,?-留下一些垃圾,这些垃圾在呈现的HTML中没有显示)。
无空行,使用<>13+15-注释前空行,使用<>20+,8-注释周围的空行,使用<>20+,8-没有空行,使用#13+1?14-注释前空行,使用#23+1?4-注释周围的空行,使用#23+1?4-带有3个连字符1+2的HTML注释?25-来自chl的答案(注意这是不同的语法)
这证明了上述陈述。
这些实现未通过所有7项测试。没有机会对它们使用excluded on render注释。
cebe/markdown 1.1.0cebe/markdown markdown额外1.1.0cebe/markdown GFM 1.1.0s9e\TextFormatter(Fatdown/PHP)
这在GitHub上有效:
[](Comment text goes here)
生成的HTML如下所示:
<a href="Comment%20text%20goes%20here"></a>
这基本上是一个空链接。显然,您可以在渲染文本的源代码中阅读,但无论如何您都可以在GitHub上阅读。
如果它在VS代码中,那么还有另一个好选项:
<span hidden> Some texts </span>
与“HTML注释标记”相比,它具有在编辑区域保持语法高亮显示的优势,以及为语义标记添加属性的能力,如<span notice hidden>。
警告:根据常识,不要在源代码中包含个人信息。
如果您正在使用Jekyll或octopress,下面的操作也会起作用。
{% comment %}
These commments will not include inside the source.
{% endcomment %}
Liquid标记{%comment%}首先被解析,并在MarkDown处理器到达它之前被删除。访问者在尝试从浏览器查看源代码时将看不到。
推荐文章
- 增强的for循环中的Null检查
- 如何从同一个YAML文件的其他地方引用YAML“设置”?
- 在VS Code中禁用“Comments are not allowed In JSON”错误
- Swift:理解// MARK
- 把if-elif-else语句放在一行中?
- 在构建中编写注释的语法是什么?gradle文件?
- Javascript函数前导bang !语法
- 如何将LaTeX与Markdown混合?
- extern关键字对C函数的影响
- 方括号[]在sql语句中有什么用?
- Java注释中的/**和/*
- PHP中的三个点(…)是什么意思?
- 乳胶渲染在README。md在Github上
- 关键字使用virtual+override vs. new
- 在Markdown Jekyll中使用图像说明