如何在Markdown中编写注释,即HTML输出中未呈现的文本?我在Markdown项目中没有发现任何东西。
当前回答
对于pandoc,一个阻止评论的好方法是使用yaml元块,正如pandoc作者所建议的那样。我注意到,至少在我的环境中(vim、vim-pandoc和vim-pandocsyntax),与许多其他建议的解决方案相比,这为注释提供了更恰当的语法高亮显示。
我将yaml块注释与html内联注释结合使用,因为html注释不能嵌套。不幸的是,在yaml元块中没有块注释的方法,所以每一行都必须单独注释。幸运的是,软包装的段落中应该只有一行。
在我的~/.vimrc中,我为块注释设置了自定义快捷方式:
nmap <Leader>b }o<Esc>O...<Esc>{ji#<Esc>O---<Esc>2<down>
nmap <Leader>v {jddx}kdd
我分别使用so、b和v注释和取消注释段落,作为我的<Leader>键。如果我需要注释多个段落,我将j,b映射到一个宏(通常为Q),然后运行<段落数><宏名>(例如(3Q)。这同样适用于取消注释。
其他回答
kramdown基于Ruby的markdown引擎,这是Jekyll的默认引擎,因此GitHubPages通过其扩展语法内置了注释支持:
{::comment}
This text is completely ignored by kramdown - a comment in the text.
{:/comment}
Do you see {::comment}this text{:/comment}?
{::comment}some other comment{:/}
这样做的好处是允许在线评论,但缺点是不能移植到其他Markdown引擎。
此Markdown注释不会在带有Jekyll的GitHub Pages网站上呈现
[whatever]: text
因为Jekyll使用Liquid模板语言来处理模板,所以这个Liquid注释也不会在使用Jekyll的GitHubPages网站上呈现
{% comment %}
This is a long comment string
Newline
Stuff
{% endcomment %}
我使用标准的HTML标记,例如
<!---
your comment goes here
and here
-->
注意三点划线。其优点是,在生成TeX或HTML输出时,它可以与pandoc一起工作。有关更多信息,请访问pandoc讨论组。
这项小型研究证明并完善了马格努斯的答案
最独立于平台的语法是
(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)
另一种方法是将注释放在样式化的HTML标记中。这样,您可以根据需要切换它们的可见性。例如,在CSS样式表中定义注释类。
.注释{display:none;}
然后,以下增强的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中使用图像说明