自定义书籍类别 \ProvidesClass 命令

自定义书籍类别 \ProvidesClass 命令

我正在制作一个自定义book类。下面的代码对于自定义article类可以成功编译,但对于book类 [编辑:不,实际上,它失败了两个类,原因 David Carlisle 在他的回答中解释过。问题似乎出在命令中\ProvidesClass:当我在方括号内附加描述时,它会失败,但一旦我将其注释掉,它就会编译。知道是什么导致了这个问题,处理这个问题的正确方法是什么?

注释掉该位%[2016-04-20 v1.0 French LaTeX book class],MWE 将会编译。

french-book-main.tex需要编译的主要文件:

% french-book-main.tex 
\documentclass[12pt]{french-book-template}
\begin{document}
\author{me}
\title{Test this custom book class document}
\maketitle
\chapter{First things first}
blablabla
\end{document}

对于french-book-template.cls班级:

% french-book-template.cls
\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{french-book-template} %[2016-04-20 v1.0 French LaTeX book class]
\DeclareOption*{%
  \PassOptionsToClass{\CurrentOption}{book}% works with article class
}
\ProcessOptions\relax
\LoadClass[openany,french]{book}% works with article class

%%  fonts and special characters
\RequirePackage{ifxetex} % load different packages with/without XeLaTex
\ifxetex
  \RequirePackage{fontspec}
\else  % not needed with utf8 based engines
  \RequirePackage[utf8]{inputenc}
  \RequirePackage[T1]{fontenc}
  \RequirePackage{lmodern}
\fi%
\RequirePackage[french]{babel}
\RequirePackage[babel]{csquotes}
\endinput

我正在使用 进行编译,XeLaTex以便处理法语和其他外来字符。代码几乎是极简的:为了完整性,我添加了一些法语部分(如果有人认为有更好的包/选项组合,请随时提出意见)。我使用的是 的最新版本 2015 TeXLive

注释掉括号中的选项的想法来自缺失 = 插入 \ifnum

创建自定义图书类的基础知识来自https://stackoverflow.com/questions/3702222/can-i-write-cls-files-in-latex-instead-of-tex

答案1

更新

自 2017 年 LaTeX 发布以来,LaTeX 在几乎所有寻找日期参数的情况下都接受了 2020-04-04 和 2020/04/04 这两种形式。

原始答案 LaTeX 日期字符串必须采用以下格式 2016/04/202016-04-20

相关内容