在整个文档中使用 LaTeX 列表

在整个文档中使用 LaTeX 列表

我有一个 LaTeX 文档,其中包含一个主文件和许多子文件。由于我们正在编写文档,因此我们在各处都使用代码片段。我如何定义列表并在整个文档中使用它?

定义样本:

\lstset{language=[Objective]C, breakindent=40pt, breaklines}
\lstset{numbers=left, numberstyle=\tiny, numbersep=5pt}
\lstset{commentstyle=\textit}

编辑:
我将其更改为:

\lstnewenvironment{ObjC} 
{ \lstset{
   language=[Objective]C, 
 ...
  }
}

并想像这样使用它:

\begin{ObjC}
 id foo = nil;
\end{ObjC}

怎么了?

答案1

就我个人而言,我更喜欢定义自定义环境,这样就不会说:

 \begin{listing}
 ...
 \end{listings}

您可以使用自己的环境。例如,对于LaTeX/TeX代码,我定义了三个环境,每个环境都有细微的变化(teXteXXteXXX)。我还定义了一个名为 的宏\emphasis来添加需要强调的单词:

\newcommand\emphasis[2][red]{\lstset{emph={write,void,writeln,#2},
   emphstyle={\ttfamily\textcolor{#1}}}}%

以下是代码:

%% Emphasis
\renewcommand{\ttdefault}{cmtt}         % prefer old tt font
\newcommand\emphasis[2][red]{\lstset{emph={write,void,writeln,#2},
   emphstyle={\ttfamily\textcolor{#1}}}}%

\lstnewenvironment{teXXX}[1][]
  {\lstset{language=[LaTeX]TeX}\lstset{%
      escapeinside={{(*@}{@*)}},
      breaklines=true,
      framesep=5pt,
      basicstyle=\ttfamily,
      showstringspaces=false,
      keywordstyle=\ttfamily\textcolor{blue},
      stringstyle=\color{orange},
     commentstyle=\color{black},
     rulecolor=\color{gray!10},
      breakatwhitespace=true,
     showspaces=false,  % shows spacing symbol
     xleftmargin=0pt,
     xrightmargin=5pt,
     aboveskip=0pt, % compact the code looks ugly in type
     belowskip=0pt,  % user responsible to insert any skips
      backgroundcolor=\color{gray!15}, #1
}}
{}

代码太长,无法转换为 MWE,但这里有一张图片。带有代码的页面往往看起来很空。为了弥补这一点,我在中间使用了两列解释性文字。我倾向于使用很少的颜色,因为我觉得它们会分散注意力。为了强调,我通常使用与其他关键字相同颜色的粗体字体。在下面的图片中,我将其改为红色,以便在缩小扫描时可见。

在此处输入图片描述

相关内容