私は LaTeX で履歴書を作成中で、職歴を入力できるコマンドを定義しました。唯一の問題は、以下に示すように、項目別リストを使用しようとすると、 が表示されることです。また、何らかの理由で、"! LaTeX Error: There's no line here to end.See the LaTeX manual or LaTeX Companion for explanation.Type H <return> for immediate help.... To Be Added}"
を使用して手動で改行を追加する必要があります。\\
私のTex文書のコード:
\section{Related Experience}
\begin{entrylist}
\experience
{Jan 2014 – Present}
{IT Systems}
{Chocolate Covered Alien Co.; Mars, PA}
{\textbf{Responsibilities:}\\
\begin{itemize}
\item Cook aliens to a nice texture
\item Chocolate cover said aliens
\end{itemize}}
{\textbf{Key Achievements:}\\
\begin{itemize}
\item Ate chocolate covered aliens without the boss finding out
\end{itemize}}
\end{entrylist}
私のクラスドキュメントのコード:
\newenvironment{entrylist}{%
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}ll}
}{%
\end{tabular*}
}
\newcommand{\experience}[5]{%
\textbf{#1}&\parbox[t]{12cm}{%
\textbf{#2}\\%
\textit{#3}\\%
#4\\%
#5\vspace{\parsep}%
}\\}
答え1
問題は、 が\begin{itemize} ... \end{itemize}
テキスト行ではないため、\\
その後に配置できないことです。環境は独立しているため、常に段落の後、別の段落の前に配置されます。
\\
これは、の後に を使用したためにエラーが発生していることを意味します。を使用している場合は、マクロの最後に を#4
使用する必要はありません。 マクロを次のように再定義します。\\
\vspace{\parsep}
\newcommand{\experience}[5]{%
\textbf{#1}&\parbox[t]{12cm}{%
\textbf{#2}\newline%
\textit{#3}\newline%
#4%
#5\vspace{\parsep}%
}}
編集:ただし、これは別の問題を引き起こす可能性があります (警告)。現在、表の 2 番目の列の幅は 12 cm で、1 番目の列は任意の長さに伸縮できます。そのため、1 番目の列のテキストが 2 番目の列を「押しのける」たびに、hbox がオーバーフルになります。hbox のオーバーフルを解消するには、1 番目の列にも固定長を定義する必要があります。両方の列を合わせても行幅を超えないようにする必要があります。次のようにします。
\newcommand{\experience}[5]{%
\parbox[t]{0.3\linewidth}{\textbf{#1}}&\parbox[t]{0.63\linewidth}{%
\textbf{#2}\newline%
\textit{#3}\newline%
#4%
#5\vspace{\parsep}%
}}
ここで、0.3 + colsep + 0.63 はおよそ 1 行の幅になります。