我正在用markdown编写文档。我正在使用出色的pandoc从markdown源创建docx和tex文件。我希望有一个文本框,向读者提供一些技巧和注释,就像编程书籍通常那样。我无法弄清楚如何在降价中做到这一点。你能帮我吗?
Answers:
我通常在markdown文本中放置警告框(例如Note或Warning)的操作(不仅是在使用pandoc时,而且在支持markdown的每个位置)都用两条水平线围绕内容:
---
**NOTE**
It works with almost all markdown flavours (the below blank line matters).
---
这将是这样的:
注意
它适用于所有降价口味(下面的空白行很重要)。
好处是您不必担心支持哪种markdown风格或安装或启用了哪个扩展。
编辑:正如@ filups21在评论中提到的,似乎水平线由***
RMarkdown表示。因此,前面提到的解决方案不能像最初要求的那样适用于所有降价口味。
***
之前是空白行。或者,您可以通过以>
(以空格开头)开头的行将注释放在大括号内。
对于GitHub,我通常会插入一个blockquote。
> **_NOTE:_** The note content.
变成...
注意: 注释内容。
当然,总会有纯HTML ...
> ℹ️ This is an information
或> ⚠️ This is a warning
。
对于完全相同的问题,我发现的最简单的解决方案是使用具有一行且没有标题的多行表(第一列中有图像,第二列中有文本):
----------------------- ------------------------------------
![Tip](images/tip.png)\ Table multiline text bla bla bla bla
bla bla bla bla bla bla bla ... the
blank line below is important
----------------------------------------------------------------
另一种可行的方法(适用于PDF)是使用Latex默认的fbox指令:
\fbox{My text!}
或使用FancyBox模块以获取更多高级功能(以及外观更好的盒子):http ://www.ctan.org/tex-archive/macros/latex/contrib/fancybox 。
类似于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.|
---
注意文本后面的空行。
NOTE
”列分配了50%,为另一列分配了50%。可以按照stackoverflow.com/questions/27219629使用多行表-但随后还有其他格式问题。
这是一个基于乳胶的简单示例。
---
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
不幸的是,因为这是乳胶,所以您不能再在TODO框中包含markdown(通常这不是一个大问题),并且在转换为PDF(例如html)以外的格式时将无法使用。
以下方法可在GitHub,GitLab ...和Stackoverflow上工作,后者现在使用CommonMark!
>用Bquotquote制成的单线盒
用Blockquote制成的单线盒
`带反引号的单线盒`
One-Line Box made with Backticks
```
箱体采用三反引号做
```
Box made with Triple Backticks
〜〜〜
用Triple Tildes制成的盒子 (去掉波浪号之间的空隙以使这项工作有效)
〜〜〜
Box made with Triple Tildes
每行开头用四个空格组成的框:
“Sometimes we must let go of our pride and do what is requested of us.”
Padmé Amidala
...或使用水平线?
三个破折号(-)形成一条水平线:
注意:“您的注意力决定了您的现实。” – Qui-Gon Jinn。
对于更多配置,我强烈建议优秀的《GitLab Markdown指南》。
您还可以检查不太详细的GitHub基本格式语法。
您可以使用Babelmark比较Markdown实现。
有用的提示:
要强制换行,请在行末放置两个空格;
要转义特殊字符,请使用\。
您也可以使用https://www.npmjs.com/package/markdown-it-container
::: warning
*here be dragons*
:::
然后将呈现为:
<div class="warning">
<em>here be dragons</em>
</div>