sjtug / SJTUThesis

上海交通大学 LaTeX 论文模板 | Shanghai Jiao Tong University LaTeX Thesis Template
Apache License 2.0
3.36k stars 792 forks source link

twoside 模式对章节失效,不能插入适当的空白页 #694

Closed izackwu closed 1 year ago

izackwu commented 3 years ago

问题描述:

使用最新 master 分支的代码,发现 twoside 模式失效,存在两个问题:

  1. 默认模式并不是 twoside,而是 oneside
  2. 手动设置为 twoside 后,可以在目录、摘要等处插入适当的空白页,但是无法应用于正文章节

复现验证方法如下:

  1. 切换到 master 分支
  2. contents/intro.tex 文件中增加一些内容(可以将最后一段文字复制几次),从而使得第一章在 PDF 中有 3 页
  3. 采用默认设置编译,可以发现 PDF 文档中没有插入任何空白页,验证了上述问题 1
  4. 手动设置为 twoside 编译,可以发现第二章于第 4 页开始,而非预期的第 5 页

上述问题应该是近期某次更新所引入的,但是由于我不懂 LaTeX,所以暂时也无法确定。

系统信息:

$ xelatex --version
XeTeX 3.14159265-2.6-0.999992 (TeX Live 2020/W32TeX)
kpathsea version 6.3.2
Copyright 2020 SIL International, Jonathan Kew and Khaled Hosny.
There is NO warranty.  Redistribution of this software is
covered by the terms of both the XeTeX copyright and
the Lesser GNU General Public License.
For more information about these matters, see the file
named COPYING and the XeTeX source.
Primary author of XeTeX: Jonathan Kew.
Compiled with ICU version 65.1; using 65.1
Compiled with zlib version 1.2.11; using 1.2.11
Compiled with FreeType2 version 2.10.1; using 2.10.1
Compiled with Graphite2 version 1.3.13; using 1.3.13
Compiled with HarfBuzz version 2.6.4; using 2.6.4
Compiled with libpng version 1.6.37; using 1.6.37
Compiled with poppler version 0.68.0
Compiled with fontconfig version 2.13.92; using 2.13.92

日志信息:

https://paste.ubuntu.com/p/TmpQT3zx26/

izackwu commented 3 years ago

使用简单的二分排查,最终大概定位到问题是由 0d110ef7861d7cec5eca96250ba1525a3b4ee1c5 引入的,在其之前是可以按照预期工作的,自此之后就出现上述问题。

但是我看不懂代码,不知道咋修 😭


而如果像我一样只是想顺利打印出毕业论文,那么直接 revert 这个 commit 即可,LaTeX 的魔法,就交给本项目的维护者吧~

git revert 0d110ef7861d7cec5eca96250ba1525a3b4ee1c5
# 可能还需要解决一些冲突
izackwu commented 3 years ago

似乎这也不算是 bug,毕竟这就是 openany 的预期表现。或许可以在文档中说明一下:只需要手动设置 openright 即可得到我原本预期的行为。

不过问题来了,我不太懂 LaTeX,这个 commit 引入 openany 作为默认设置,这样有什么作用吗?

skyzh commented 3 years ago

得问问 @AlexaraWu 了。我们要么在 main.tex 里面加个帮助,如果要开正反面模式还要加 openright 选项(

izackwu commented 3 years ago

@skyzh 我想到的合理用途大概是:

这个选项确实允许使用者多了一层灵活性,但是我比较怀疑这个灵活性是否有必要……毕竟电子版不需要任何空白页,纸质版一般需要所有空白页。同时这个参数也破坏了原有的默认行为,对小白用户(比如我)造成了困扰。

AlexaraWu commented 3 years ago

目前本科的默认设置就是 oneside + openany

izackwu commented 3 years ago

确实如此,或许可以更新一下 main.tex 里面对选项的说明

zztttt commented 1 year ago

一年半了都没修hh