如何将以下 WinBugs 代码以文本格式插入到 Latex 中?

如何将以下 WinBugs 代码以文本格式插入到 Latex 中?

如何将以下 WinBugs 代码以文本格式插入 LaTeX?

  model
  {
    for(i in 1:nSUB)
    {
      s[i] ~ dnorm(0,tau.precision);
    }
  }

我试过\texttt{}

\texttt{model
\{   \par
  for(i in 1:nSUB)   \par
  \{   \par
    s[i] $\sim$ dnorm(0,tau.precision);  \par
  \}  \par
\}
}

但是,它会给出一条错误消息:

{model \{
! Paragraph ended before \text@command was complete. ....

我尝试过 \usepackage{listings},并使用了语言 R,因为其中没有包含 WinBugs 语言。

\begin{lstlisting}[language=R]

model
{
  for(i in 1:nSUB)
  {
    s[i] ~ dnorm(0,tau.precision);
  }
}
\end{lstlisting}

没有错误消息,但是文本仍然看起来很奇怪。

答案1

我不知道 WinBugs,但事实证明 pygments 有一个词法分析器。您可以按如下方式使用 minted 环境。

\documentclass{article}
\usepackage{minted}

\begin{document}
\begin{minted}{winbugs}
model
{
  for(i in 1:nSUB)
  {
    s[i] ~ dnorm(0,tau.precision);
  }
}
\end{minted}
\end{document}

结果看起来相当合理,但是如果您喜欢更少或更多的颜色,您可以应用不同的样式。我倾向于使用黑白。

铸造

相关内容