如何用 ClassicThesis 风格改变 babel 语言?

如何用 ClassicThesis 风格改变 babel 语言?

标题里有所有内容。问题很简单,我只想更改语言,以便我可以使用 babel 输入法语。原始语言是ngermanamerican

我只想将ngerman语言替换为frenchfrancaisfrenchb或任何需要用法语输入的内容。

所以我所做的就是更改第 41 行(在 ClassicThesis.tex 文件中):

\documentclass[ twoside,openright,titlepage,numbers=noenddot,headinclude,%1headlines,% letterpaper a4paper
                footinclude=true,cleardoublepage=empty,abstractoff, % <--- obsolete, remove (todo)
                BCOR=5mm,paper=a4,fontsize=11pt,%11pt,a4paper,%
                ngerman,american%
                ]{scrreprt}

进入这个

\documentclass[ twoside,openright,titlepage,numbers=noenddot,headinclude,%1headlines,% letterpaper a4paper
                footinclude=true,cleardoublepage=empty,abstractoff, % <--- obsolete, remove (todo)
                BCOR=5mm,paper=a4,fontsize=11pt,%11pt,a4paper,%
                francais,american%
                ]{scrreprt}

还将第 63 行更改为

\selectlanguage{francais} % american ngerman

最后我打开了 ClassicThesis-config.tex 文件并取消注释第 78 行,如下所示:

\PassOptionsToPackage{francais,american}{babel}   % change this to your language(s)

这就是我所做的一切。然后,当我尝试编译时(在 Mac 上使用 TexShop),我收到此消息:

Package frenchb.ldf Warning: The definition of \@makecaption has been changed,
(frenchb.ldf)                frenchb will NOT customise it;
(frenchb.ldf)                reported on input line 60.

(/usr/local/texlive/2012/texmf-dist/tex/latex/hyperref/nameref.sty
(/usr/local/texlive/2012/texmf-dist/tex/generic/oberdiek/gettitlestring.sty))
(./ClassicThesis.out) (./ClassicThesis.out)
(/usr/local/texlive/2012/texmf-dist/tex/context/base/supp-pdf.mkii
[Loading MPS to PDF converter (version 2006.09.02).]
) (/usr/local/texlive/2012/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
(/usr/local/texlive/2012/texmf-dist/tex/latex/oberdiek/grfext.sty)
(/usr/local/texlive/2012/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg))
(/usr/local/texlive/2012/texmf-dist/tex/latex/microtype/mt-ppl.cfg)
ABD: EveryShipout initializing macros (./FrontBackmatter/DirtyTitlepage.tex)
(/usr/local/texlive/2012/texmf-dist/tex/latex/bera/t1fvm.fd) [1{/usr/local/texl
ive/2012/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
(./FrontBackmatter/Titlepage.tex [2]
<gfx/TFZsuperellipse_bw.pdf, id=17, 260.5755pt x 203.14595pt>
<use gfx/TFZsuperellipse_bw.pdf> [3 <./gfx/TFZsuperellipse_bw.pdf>])
(./FrontBackmatter/Titleback.tex
(/usr/local/texlive/2012/texmf-dist/tex/latex/psnfss/ts1pplj.fd)) [4]
(./FrontBackmatter/Dedication.tex) [5] [6] (./FrontBackmatter/Abstract.tex)
[7] [8] (./FrontBackmatter/Publication.tex) [9] [10]
(./FrontBackmatter/Acknowledgments.tex
./FrontBackmatter/Acknowledgments.tex:11: Missing \endcsname inserted.
<to be read again> 
                   \unskip 
l.11 ...\defcitealias{knuth:1974}{Donald E. Knuth}
                                                  \citetalias{knuth:1974} \c...

? 
Process aborted

这是正常反应吗?我做错了什么?

答案1

虽然这不是您所期望的,但反应是正常的。这是由于在别名定义中使用了活动字符 (:)。

在法语中,下列字符被激活,不能在没有保护的情况下在标签、参考书目键和命令中使用:

  • 冒号 (:)
  • 分号(;)
  • 感叹号 (!)
  • 疑问符号(?)

如果将构造中使用的所有冒号(如:\cite{xxx:xxx}\@BOOK{xxx:dddd,\label{xxx:xxx}\defcitealias{xxx:xxx}\citealias{xxx:xxx}或)替换为减号\citep{xxx:xxx},则编译将正常。

相关内容