这个问题的灵感来自 Gonzalo 的精彩回答这里关于他的创作,gridleno.sty
以增强grid.sty
。
最终,我有两个看似简单的问题(如果需要,请告诉我是否应该单独发布这些问题),但尽管对参数等进行了一些调整,我仍无法达到我想要的效果。
(1):如何summary
修改框/环境以使其具有10pt
缩进统一地而不是像现在这样仅在两侧缩进(我认为顶部和底部没有缩进看起来很奇怪,就像盒子很挤一样):
相关片段:
% environment for a summary
\newenvironment{summary}
{\grcmpage{\linewidth}{summarybg}
\hfil{\color{summaryhead}\bfseries\summaryname}\hfil\par%
\parshape 1 10pt \dimexpr\linewidth-20pt\relax\itshape}
{\par\endgrcmpage\par\prevdepth\tpd}
(2):这个问题不太重要,因为我知道一个“解决方法”,但它似乎不太有效。我真的很喜欢exercises
中的环境gridleno.sty
:
相关片段:
% environment for exercises: facy title and redefines enumerate as exenumerate
% to remove labels indentation
\newenvironment{exercises}
{\section*{\Hrulefill\quad%
{\bfseries\exercisesname}\quad\Hrulefill}%
\let\enumerate\exenumerate\let\endenumerate\endexenumerate}
{}
我希望使用此环境,但又能灵活地使用不同的标题。例如,我还希望有一个与此处环境solutions
完全相同的环境exercises
,我可以通过简单地创建新环境来实现这一点gridleno.sty
,但这里最有效的方法似乎是为环境添加一个可选参数exercises
,就像 AMSproof
环境有一个可选参数一样,例如\begin{proof}[Solution]...\end{proof}
。
如果可能的话,我希望能够\begin{exercises}[<heading>]...\end{exercises}
使用“解决方案”作为一个标题或完全不同的东西。我认为这比简单地复制代码但在这里更改一个词,在那里更改一个词要好得多(但我不知道如何修改环境exercise
来做到这一点)。
有任何想法吗?
答案1
未经测试,因为您没有提供工作代码,但对于第二个问题
\newenvironment{exercises}[1][Exercises]
{\section*{\Hrulefill\quad%
{\bfseries #1}\quad\Hrulefill}%
\let\enumerate\exenumerate\let\endenumerate\endexenumerate}
{}
会让你说
\begin{exercises}
\item items with Exercises as title
\end{exercises}
或者
\begin{exercises}[Solutions]
\item items with Solutions as title
\end{exercises}
可能吧。如果不知道所有位是如何定义的,就很难知道。可能根本行不通。但是,如果你想在职的代码,你应该提供一个最小工作示例,以便我可以测试它。