如何使用法語選項 babel 定義 itemize 的項目符號樣式?

如何使用法語選項 babel 定義 itemize 的項目符號樣式?

我想itemize在每個項目之前使用帶有項目符號樣式的環境。我發現包french中的選項babel似乎定義了環境的破折號樣式itemize。甚至不可能像本文中所建議的那樣「覆蓋」序言中的這個定義回答

這是我的 MWE 供您使用:

\documentclass{article}
\usepackage[french]{babel}

\def\labelitemi{$\bullet$}

\begin{document}

\begin{itemize}
\item Blabla
\item Bloblo
\end{itemize}

\end{document}

我可以想出一些方法來重新定義itemize序言中的環境以產生項目符號,即使french加載了選項,但是您是否有任何“簡單”的解決方案來解決此問題而無需重新定義環境itemize

備註:我沒有嘗試過其他選項,但這個問題可能不限於該french選項。

答案1

有了該french模組,babel您就可以使用

\AtBeginDocument{\def\labelitemi{$\bullet$}}

一個完整的例子:

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}

\AtBeginDocument{\def\labelitemi{$\bullet$}}

\begin{document}

\begin{itemize}
\item Blabla
\item Bloblo
\end{itemize}

\end{document}

使用該frenchle模組,作者在文件中建議使用 來\frlabelitems進行重新定義;但是,執行也必須延遲\AtBeginDocument(我在文件中找不到任何對此事實的引用?):

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[frenchle]{babel}

\AtBeginDocument{\frlabelitems{\renewcommand{\labelitemi}{$\bullet$}%
\renewcommand{\labelitemii}{**}%
\renewcommand{\labelitemiii}{***}%
\renewcommand{\labelitemiii}{****}%
  }%
}

\begin{document}

\begin{itemize}
\item Blabla
\item Bloblo
\end{itemize}

\end{document}

使用frenchb模組babel,您可以\FrenchLabelItem在序言中重新定義(但請注意,給定 中的設置frenchb.ldf,此變更將應用於逐項清單的所有四個層級):

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}

\renewcommand*{\FrenchLabelItem}{$\bullet$}

\begin{document}

\begin{itemize}
\item Blabla
\item Bloblo
\end{itemize}

\end{document}

答案2

如果我可以從死亡中提出這個問題......這是另一個解決方案。只需將其添加到您的序言中即可。

\frenchsetup{StandardItemLabels=true}

這將阻止 babel 自訂項目標籤。 babel 自訂的東西其實是非常可設定的並且有很好的文件記錄。

答案3

除了 Celelibi 發布的內容之外,這裡是一個 PDF,總結了法語的各種設定。

預設行為:\usepackage[french]{babel}是更改預設佈局設定以適應法語(第一段縮排、逐項環境中的預設項目設定為「—」而不是「•」以及刪除垂直間距等...)。

使用以下命令,您可以覆寫此行為並使用自訂行為,甚至恢復預設行為:

\frenchsetup{options}

例如,這個恢復預設行為:

\frenchsetup{StandardLayout = true}

相關內容