![在自定义环境中启用枚举或逐项列举](https://linux22.com/image/396172/%E5%9C%A8%E8%87%AA%E5%AE%9A%E4%B9%89%E7%8E%AF%E5%A2%83%E4%B8%AD%E5%90%AF%E7%94%A8%E6%9E%9A%E4%B8%BE%E6%88%96%E9%80%90%E9%A1%B9%E5%88%97%E4%B8%BE.png)
我有一个aside
来自模板的环境。
\RequirePackage[absolute,overlay]{textpos}
\setlength{\TPHorizModule}{1cm}
\setlength{\TPVertModule}{1cm}
\newenvironment{aside}{%
\let\oldsection\section
\renewcommand{\section}[1]{
\par\vspace{\baselineskip}{\Large\headingfont\color{dgreen} ##1}
}
\begin{textblock}{3.6}(2.0, 0.55)
\begin{flushright}
\obeycr
}{%
\restorecr
\end{flushright}
\end{textblock}
\let\section\oldsection
}
我使用以下结构设置该区域:
\begin{aside}
\section{RegionA}
~
\end{aside}
但是,如果我添加enumerate
或itemize
,LaTeX 无法编译:
\begin{aside}
\section{RegionA}
\begin{enumerate}
\item foo
\end{enumerate}
\end{aside}
编译失败并显示以下错误消息:
! LaTeX Error: There's no line here to end.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.75 \begin{enumerate}
我想知道如何修改这个aside
环境以供使用enumerate
?
答案1
似乎您正在使用类friggeri-cv
或稍微改变的类cv-style
,都使用相同的环境aside
(另请参阅此问题)。
我从引用的问题中取出 mwe 并做了一些修改。这里的罪魁祸首是你试图在文本右对齐的地方插入一个本身左对齐的文本。这会产生一个相当丑陋的结果!请查看以下相关代码:
\begin{aside}
%
\section{contact}
123 Broadway
City, State 050022
Country
~
+0 (000) 111 1111
+0 (000) 111 1112
~
[email protected]
myweb.wordpress.com
%
\section{RegionA}
~
1. foo
2. bar
~
\section{RegionB}
\begin{enumerate}
\item foo
\item bar
\end{enumerate}
\end{aside}
在 RegionA 部分中,我现在手动添加了您的枚举,这意味着无需使用环境 enumerate
!在 RegionB 部分中我使用了enumerate
导致您也收到 3 条错误消息。
请参阅以下完整的编译代码,其中包含一条错误消息
\documentclass{cv-style}
\begin{document}
\header{My}{Name}
\begin{aside}
%
\section{contact}
123 Broadway
City, State 050022
Country
~
+0 (000) 111 1111
+0 (000) 111 1112
~
[email protected]
myweb.wordpress.com
%
\section{RegionA}
~
1. foo
2. bar
~
\section{RegionB}
\begin{enumerate}
\item foo
\item bar
\end{enumerate}
\end{aside}
%
\section{skills}
\vspace{-0.2cm}
Skill 1, skill 2, skill 3, skill 4, skill 5.
\section{education}
\begin{entrylist}
%------------------------------------------------
\entry
{2010--2011}
{M.Sc. {\normalfont in Economics [Grade]}}
{University}
{\vspace{-0.3cm}}
%------------------------------------------------
\entry
{2004--2009}
{B.Eng. {\normalfont in Engineering Management [Grade]}}
{University}
{(Emphasis in ...)}
%------------------------------------------------
\end{entrylist}
\end{document}
及其结果:
RegionA 部分看起来不错,并且适合其他布局(在第一列的右侧构建一条垂直线,并从右列开始为文本构建一条垂直线。
这RegionB 部分看起来很丑因为它不适合使用的布局。在右侧布局中,左侧文本看起来不太好,直接省略。看到截图中红色箭头标示的闪光灯了吗!
环境的内容aside
没有准备好处理enumerate
或itemize
,这是一个仅建议手动添加文本的简单工具。
因此,要省略错误消息,只需使用 RegionA 中显示的方法并删除错误的 RegionB!
顺便说一句:如果你真的需要在第一个小栏目中列出逐项或枚举列表,请重新考虑简历的主要布局。在我看来,列表应该放在此布局设计的第二栏中。