带有 tocloft 的 Latex 自定义列表导致换行

带有 tocloft 的 Latex 自定义列表导致换行

我已使用该tocloft包创建自定义缩写列表。列表中的布局很好。我遇到的问题是,创建此条目的命令会创建换行符,而我在内联包含缩写之后。

定义缩写列表以及包和最低限度序言的相关代码如下:

\RequirePackage{fix-cm}
\documentclass[a4paper,12pt,french]{report}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}
\usepackage[autolanguage]{numprint}
\usepackage[utf8]{inputenc}
\usepackage[top=2cm, bottom=2cm, left=2cm, right=2cm]{geometry}
\usepackage[extendedchars, babel, multidot]{grffile}
\usepackage{xcolor,graphicx}
\usepackage{tabularx, multirow, array}

\usepackage{hyperref}
\usepackage[nottoc, notlot, notlof]{tocbibind}
\usepackage[titles]{tocloft}

\newcommand{\listabrevname}{Liste des abréviations}
\newlistof[chapter]{abreviation}{abrev}{\listabrevname}
\newcommand{\abreviation}[2]{%
    \refstepcounter{abreviation}%
    \par\noindent\textnormal{#2  (#1)}%
    \addcontentsline{abrev}{abreviation}{%
        \protect\numberline{}#1 -- #2%
        }\par%
}
\cftsetindents{figure}{0em}{2.5em}
\cftsetindents{table}{0em}{2.5em}
\cftsetindents{abreviation}{0em}{0em}
\setlength{\cftbeforefigskip}{0.00em}
\setlength{\cftbeforetabskip}{0.00em}
\setlength{\cftbeforeabreviationskip}{1.0em}

\begin{document}

%a bunch of stuff%

\addtocontents{abrev}{\noindent\textbf{Abréviation}~\hfill\textbf{Première Apparition}\par}
\listofabreviation
\addcontentsline{toc}{chapter}{\protect\hphantom{\numberline{\thesection}}\listabrevname}%
\newpage

\renewcommand{\listfigurename}{Liste des figures}
\listoffigures
\addcontentsline{toc}{chapter}{\protect\hphantom{\numberline{\thesection}}\listfigurename}%
\addtocontents{lof}{\noindent\textbf{Figure}~\hfill\textbf{Page}\par}
\newpage
\listoftables
\addcontentsline{toc}{chapter}{\protect\hphantom{\numberline{\thesection}}\listtablename}%
\addtocontents{lot}{\noindent\textbf{Table}~\hfill\textbf{Page}\par}
\newpage

\addtocontents{toc}{~\hfill\hbox{}\par}
\tableofcontents

\newpage

chapter{Introduction}\label{Intro}
\pagenumbering{arabic}

The use of \abreviation{HA}{Acide hyaluronique} represents...

\end{document}

得出:


......一些文本,一些文本,一些文本%line break - indented

透明质酸 (HA)(No indent)

......文本在另一行继续......indented


我正在寻找连续插入缩写,所以没有换行符,这将产生:


一些文本、更多文本和更多文本 Acide Hyaluronique (HA) 在同一行上延续文本。


我曾尝试在定义中的各个位置引入~以防止中断以及,\nobreak\nolinebreak到目前为止还没有成功。

相关内容