Markdown 如何为标记中的注释创建文本框?

Markdown 如何为标记中的注释创建文本框?,markdown,pandoc,Markdown,Pandoc,我正在写一份降价文件。我正在使用美妙的pandoc从降价源创建docx和tex文件。我希望有一个文本框,可以像编程书籍一样为读者提供提示和注释。我不知道如何在降价中做到这一点。您能帮忙吗?我找到的解决完全相同问题的最简单方法是使用一行无标题的多行表(第一列有图像,第二列有文本): 另一种可能有效的方法(对于PDF)是使用Latex默认fbox指令: \fbox{My text!} 或FancyBox模块以获得更高级的功能(以及更美观的方框):。使用扩展。对于,可以在mkdocs.yml文件中

我正在写一份降价文件。我正在使用美妙的pandoc从降价源创建docx和tex文件。我希望有一个文本框,可以像编程书籍一样为读者提供提示和注释。我不知道如何在降价中做到这一点。您能帮忙吗?

我找到的解决完全相同问题的最简单方法是使用一行无标题的多行表(第一列有图像,第二列有文本):

另一种可能有效的方法(对于PDF)是使用Latex默认fbox指令:

 \fbox{My text!}
或FancyBox模块以获得更高级的功能(以及更美观的方框):。

使用扩展。对于,可以在
mkdocs.yml
文件中配置:

markdown_extensions:
    - admonition
然后在md文件中插入注释,如下所示:

!!! note

     This is a note.

参见一个示例。

我通常在标记文本中放置警告框(例如注释或警告)(不仅在使用pandoc时,而且在支持标记的每个地方)的方法是用两条水平线围绕内容:

---
**NOTE**

It works with almost all markdown flavours (the below blank line matters).

---
可能是这样的:


注意

它适用于所有降价口味(以下空行内容)


好的是,您不需要担心支持哪种降价风格,或者安装或启用了哪种扩展

编辑:正如@filups21在评论中提到的,在RMarkdown中,水平线似乎由
***
表示。因此,前面提到的解决方案并不像最初声称的那样适用于所有降价口味。

您也可以使用

然后将渲染为:

<div class="warning">
<em>here be dragons</em>
</div>

这里有龙

使用GitHub,我通常插入一个blockquote

> **_NOTE:_**  The note content.
变成

注释:注释内容


当然,总是有简单的HTML

下面是一个简单的基于乳胶的示例

---
header-includes:
    - \usepackage[most]{tcolorbox}
    - \definecolor{light-yellow}{rgb}{1, 0.95, 0.7}
    - \newtcolorbox{myquote}{colback=light-yellow,grow to right by=-10mm,grow to left by=-10mm, boxrule=0pt,boxsep=0pt,breakable}
    - \newcommand{\todo}[1]{\begin{myquote} \textbf{TODO:} \emph{#1} \end{myquote}}
---

blah blah

\todo{something}

blah
其结果是:


不幸的是,因为这是latex,所以您不能再在TODO框中包含标记(通常这不是一个大问题),并且在转换为PDF以外的格式(例如html)时,它将不起作用

您是否尝试过使用双制表符?制作一个盒子:

Start on a fresh line
Hit tab twice, type up the content
Your content should appear in a box

对于我来说,它适用于带有html输出的常规Rmarkdown文档。双选项卡部分应显示在圆形矩形浅灰色框中。

与Etienne的解决方案类似,一个简单的表格格式很好:

| | |
|-|-|
|`NOTE` | This is something I want you to notice. It has a lot of text, and I want that text to wrap within a cell to the right of the `NOTE`, instead of under it.|
另一种选择(更加强调)是使内容成为无正文表格的标题:

|`NOTE` | This is something I want you to notice. It has a lot of text, and I want that text to wrap within a cell to the right of the `NOTE`, instead of under it.|
|-|-|

最后,您可以包括一条水平线(主题分隔符)来创建一个闭合框(尽管线样式与表中的标题行略有不同):


请注意文本后面的空行。

以下方法适用于GitHub、GitLab。。。而且,它现在使用


>用Blockquote制作的单线框

使用Blockquote制作的单线框


`一行框,带背景标记`

Box made with Triple Backticks  
一行框,带有反勾号


``
用三个背勾做成的盒子
```

Box made with Triple Backticks  

~~~
用三个瓷砖制作的盒子
(删除瓷砖之间的空格以实现此功能)
~~~

Box made with Triple Tildes

每行开头有四个空格的方框

    “Sometimes we must let go of our pride and do what is requested of us.”
    Padmé Amidala


。。。还是使用水平线?

三条虚线(--)构成一条水平线:


注意:“你的注意力决定你的现实。”-魁刚·金


对于更多配置,我强烈建议使用优秀的。
您也可以查看不太详细的信息。
您可以使用来比较降价实现

有用的提示:

  • 要强制换行,请在行的末尾放置两个空格

  • 要转义特殊字符,请使用\


另一种解决方案是使用CSS邻接并使用h4(或更高版本):

h4{
显示:无;/*隐藏*/
}
h4+p{
/*根据需要设置便笺的样式*/
}

我通常插入一个字符并添加一个Unicode字符(备忘录)您知道是否可以定义pandoc标记说明在pandoc模板文件中的外观?例如,编辑~/.pandoc/templates/default.latex?这很有用,但不适用于RMarkdown/Rstduio/Knitrbjw-RMarkdown中的水平线前面有一个空行。或者,您可以通过以
开头的行(前面还有一个空行)删除块引号中的注释@KamilSJaron:呃?不是。你在考虑代码块吗?@Nott101啊,我把blockquote理解为反引号。但是,三重反引号确实不是包装。我更喜欢这种通用解决方案。我也喜欢使用Unicode表情作为注释的前缀,比如
>ℹ️ 这是一条信息
>⚠️ 这是一个警告
。这和是可移植解决此问题的唯一答案。无法显示方框,因此无法解决此问题。事实上,此答案与@pierre_loic的大部分复制答案相结合。Microsoft在其文档中对此使用了自己的语法,但不太可能在您的环境中工作。包括他为了完整性和与下面答案的比较,请重新阅读。也适用于VS代码和GitHub!我非常喜欢这个解决方案,但当我通过pandoc和Xeletex将其转换为pdf时,它似乎为“注释”分配了50%的空间列,另一个为50%;一个可以根据使用多行表,但还有其他格式问题。
Box made with Triple Tildes
    “Sometimes we must let go of our pride and do what is requested of us.”
    Padmé Amidala

#### note

This is the note content