如何为打字环境添加背景颜色?

如何为打字环境添加背景颜色?

如何在不添加额外垂直空间的情况下为逐字代码块添加背景?

我在 Pandocs markdown 中编写代码,然后使用 转换为 .tex pandoc.exe -t context,再使用 转换为 PDF context.exe。默认情况下,Pandoc 会将 Markdown 逐字代码块转换为打字环境。也就是说,放在

\starttyping
my code
\stoptyping

我想使用 (或类似的前言命令) 在打字环境中为文本添加彩色背景\setuptyping。我尝试过使用 \textbackground,但我对添加的额外垂直空间不满意。

PDF 输出

1. 没有 \textbackgound

不带 \textbackground 的 PDF

2.\textbackgound

带有 \textbackground 的 PDF

Markdown 源代码

# Usage pattern

The usage pattern of MyCLI is the following:

    MyCLI OPTION PARAMETER

Options can be either in short form (one-letter) or long-form (whole words).

Pandoc 输出

\chapter[title={Usage pattern},reference={usage-pattern}]

The usage pattern of MyCLI is the following:

\starttyping
MyCLI OPTION PARAMETER
\stoptyping

Options can be either in short form (one-letter) or long-form (whole words).

上下文前言

\definetextbackground[code][
    width=\textwidth,
    background=color,
    backgroundcolor=lightgray,
    frame=off
    ]

\setuptyping[ % layout of code blocks
    keeptogether=yes,
    lines=yes,
    bodyfont=10pt,
    before={\starttextbackground[code]},
    after={\stoptextbackground},
    ]

答案1

我发现这个问题已经在这个问题\definebackground宏就是我所寻找的解决方案。

相关内容