我正在用markdown写文档。我正在使用神奇的pandoc从markdown源创建docx和tex文件。我想有一个文本框提示和注释的读者编程书籍经常做的方式。我不知道如何做到这一点在markdown。你能帮忙吗?


当前回答

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

markdown_extensions:
    - admonition

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

!!! note

     This is a note.

这里有一个例子。

其他回答

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

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

变得……

注:说明内容。

当然,总有简单的HTML…

类似于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.|
|-|-|

最后,你可以添加一条水平线(主题断线)来创建一个封闭的方框(尽管线条样式与表中的标题行略有不同):

| | |
|-|-|
|`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.|

---

注意文本后面的空行。

这是一个简单的基于乳胶的例子。

---
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框中包含markdown(通常这不是一个大问题),并且当转换为PDF以外的格式(例如html)时,它将不起作用。

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

#### note

This is the note content
h4 {
  display: none; /* hide */
}

h4 + p {
  /* style the note however you want */
}

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

markdown_extensions:
    - admonition

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

!!! note

     This is a note.

这里有一个例子。