逐字逐句地

逐字逐句地

我正在为一个 R 文件编写手册,其中类似这样的表达式很常见:

lm.1 <- lm(y ~ x1 + x2)

我将在verbatim环境中附上代码示例,但这对于波浪号来说不起作用。

通过 LaTeX 在一行中创建上述内容非常简单

\[\mathtt{lm.1}\; \verb"<-" \;\mathtt{lm(y \sim x1+x2)}.\]

但是,为每行出现波浪号的代码实例创建这样的一行似乎效率不高。

有多种方法可以预先定义波浪线,但我的代码已经写好了。使波浪线像在 R 文件中(或在记事本等中)显示一样的最佳方法是什么?

答案1

我建议您listings按如下方式使用该包:

示例输出

\documentclass{article}

\usepackage[formats]{listings}

\lstdefineformat{R}{~=\( \sim \)}
\lstset{basicstyle=\ttfamily,format=R}

\begin{document}

\begin{lstlisting}
lm.1 <- lm(y ~ x1 + x2)
\end{lstlisting}

\end{document}

选项formats提供了一种机制,可以用其他代码替换某些字符。在这里,我们设置了一种R格式,其中在数学模式下~被替换为。为所有列表设置使用此样式;您可以将这些选项添加到单个代码列表,或者通过定义要用作的特定样式。\simlstsetlstdefinestyle{myR}{basicstyle=\ttfamily,format=R}\begin{listing}[style=myR] ... \end{listing}

相关内容