From f53dd329bdfa3a20947143b0ab7fc79dd58127dd Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 10 Jan 2020 21:41:08 +0000 Subject: hithesis (10jan20) git-svn-id: svn://tug.org/texlive/trunk@53362 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/hithesis/README.md | 115 ++++++++++++--------- .../doc/latex/hithesis/body/introduction.tex | 7 +- Master/texmf-dist/doc/latex/hithesis/dtx-style.sty | 2 +- Master/texmf-dist/doc/latex/hithesis/hithesis.pdf | Bin 603014 -> 610073 bytes Master/texmf-dist/doc/latex/hithesis/latexmkrc | 26 ++++- Master/texmf-dist/doc/latex/hithesis/main.pdf | Bin 339214 -> 337720 bytes Master/texmf-dist/doc/latex/hithesis/main.tex | 49 +++++---- Master/texmf-dist/doc/latex/hithesis/reference.bib | 8 +- 8 files changed, 130 insertions(+), 77 deletions(-) (limited to 'Master/texmf-dist/doc/latex') diff --git a/Master/texmf-dist/doc/latex/hithesis/README.md b/Master/texmf-dist/doc/latex/hithesis/README.md index 18117fdfcbe..32241b8f4d5 100644 --- a/Master/texmf-dist/doc/latex/hithesis/README.md +++ b/Master/texmf-dist/doc/latex/hithesis/README.md @@ -20,14 +20,13 @@ http://www.latex-project.org/lppl.txt and version 1.3a or later is part of all distributions of LaTeX version 2004/10/01 or later. - ## hithesis是什么? hithesis 旨在建立一个简单易用的哈尔滨工业大学学位论文LaTeX模板,包括本科论文、硕士论文、博士论文 。现 在支持本科、硕士、博士论文,对其它格式的支持会陆续加入。 hithesis 已收录在[CTAN](https://ctan.org/pkg/hithesis -"CTAN")中,用户安装TeXLive将自带我工模板(版本日期>2017.08.28)。 +"CTAN**)中,用户安装TeXLive将自带我工模板(版本日期>2017.08.28)。 ## 我工规范有歧义之处 @@ -42,14 +41,13 @@ hithesis 已收录在[CTAN](https://ctan.org/pkg/hithesis ### 呆萌的操作,傲娇的效果 - 极限程度实现了[《哈尔滨工业大学研究生学位论文撰写规范》](http://hitgs.hit.edu.cn/aa/fd/c3425a109309/page.htm)、[《哈尔滨工业大学本科生毕业论文撰写规范》](http://jwc.hit.edu.cn/2566/list.htm) -- 这是[PlutoThesis](https://github.com/dustincys/PlutoThesis "PlutoThesis")的终极进化,PlutoThesis废弃不再维护。 +- 这是[PlutoThesis](https://github.com/dustincys/PlutoThesis "PlutoThesis**)的终极进化,PlutoThesis废弃不再维护。 - 更傻更简单的选项,例如论文主文件,只需要在文档类的括号中填写本硕博选项,字体选项(设置弹性间距或者刚性间距),文科生选项(目录可以设成四级目录),非全日制类型等,轻松设定目标格式。 - 自适应格式,例如图题和标题,标题字号在字数超过两行时自动由五号变小五号,实现自适应(硕博规范规定,字数多时用五号) - 自动化中英文索引(博士规范要求,有需要时候添加) - - 图书馆提交论文级的书签设置 + - 图书馆提交论文级的电子版 - …… - ### 矫正PlutoThesis的不足 - 纠正PlutoThesis页面向下溢出 @@ -75,7 +73,7 @@ hithesis 已收录在[CTAN](https://ctan.org/pkg/hithesis - 行间距、段前后距离设置精确到小数后四位, 例如 1bp = 1.00374pt,1mm = 2.84526pt, 按照我工之要求, 行距在3mm~4mm之间,换算之后为20.50398~23.33863bp,严格符合规范要求,哪怕是显微镜级别 - 规范明确规定,数字间空格要求为汉字宽度的四分之一(形式类似与 12 2345 和 0.123 456 这样多于3位以上的整数或小数)。默认情况下在LaTeX中任何人工输入的空格均不正确(“\:”为4/18汉字宽度,“\;”为5/18汉字宽度,所以PlutoThesis中的数字间宽度错误)。hithesis模板中定义了精准的数字间宽度。 - - 重写了一堆重要函数,例如章节标题由原来的`BiChapter{}{}`方式进化为`chapter{}[]`,极大简化,后面方括号中为可选括号,硕本可以不用,用了自动忽略 + - 重写了一堆重要函数,例如章节标题由原来的`BiChapter{}{}`方式进化为`chapter{}[**`,极大简化,后面方括号中为可选括号,硕本可以不用,用了自动忽略 - 严格符合(满足)两个规范要求,由于规范中有矛盾之处,例如本科生的标题段前距离有两处不一样的规定,刚性行距尽量满足行数(要求约33行)要求。 - 规范中给出了行距区间,为了规格严格,设置了弹性行距 - …… @@ -103,9 +101,22 @@ CTAN的版本一般会比较落后,但在每年年底会同步为最新版本 ### 关于hithesis的线上讨论区 -由于维护者(就是本书呆)已经是高龄不毕业刀客,课题繁忙,常常无法及时回答疑问。 -为了解决使用中遇到的问题,请各位刀客和大侠加入QQ群:259959600。 -群里有很多热心的LaTeX隐士高人如@poofee等,很乐于解答。 +~~由于维护者(就是本书呆)已经是高龄不毕业刀客,课题繁忙,常常无法及时回答疑问。~~ +为了解决使用中遇到的问题,请各位刀客和大侠加入QQ群hithesis讨论区:259959600。 + +hithesis 高级群:476262502 (高级群为作者散布高级排版、制图、Linux管理、编码等 +知识和技术之所在,其要旨引用自《西游记》第八回,如来自言“叵耐不识我法门之要旨, +怠慢了瑜伽之正宗”,以及“曹溪路险、鹫岭云深,故人不音杳!”。散布知识之后,作者将 +直播回答高级群中众生问题。(**由于工作关系直播暂停,开播时间待定**))。 + +21 Oct 2019 添加:由于工作繁忙,改为西瓜小视频形式传播正能量(**包括Linux实用技术、 +排版、制图等等平时积累的经验和知识**)。 + +西瓜视频ID:**石见石页** + +网址:https://www.ixigua.com/home/105143356290/ + +hithesis群里有很多热心的LaTeX隐士高人如@poofee等,很乐于解答。 ### 关于查重 @@ -115,14 +126,20 @@ CTAN的版本一般会比较落后,但在每年年底会同步为最新版本 会出现无法正常复制的情况(可能是系统的字体映射出现了误差)。一般需要在主文件的 选项中明确声明使用哪一种fontset。 -### 模板的编译方法、打印版、电子版及其他说明 +### 模板版本要求 -- 生成论文格式文件(第一步要生成 *.cls,*.cfg,*.ist,然后再生成论文) +LaTeX 中的ctex package版本要求: + + ctex >= v2.4.3 (2016年9月份发布) 注意,如果下载最新版本(>= 2018)的texlive或Miktex或Mactex,如果使用自带的模板,可能会出现一些错误,因为自带的版本老。 查看自带版本的命令是 - texdoc hithesis + texdoc hithesis + +### 模板的编译方法 + +1. 生成论文格式文件(第一步要生成 *.cls,*.cfg,*.ist,然后再生成论文) - 如果是Linux/Mac执行 (此处作者没测试过Mac,如遇到问题到谈论区可以问一下热心刀客大侠们,比如陈登泰教授、郭大侠等) @@ -132,60 +149,66 @@ CTAN的版本一般会比较落后,但在每年年底会同步为最新版本 lualatex hithesis.ins + - 如果喜欢玩 make -- 生成论文 - - xelatex main.tex - bibtex main - xelatex main.tex - xelatex main.tex - splitindex main -- -s hithesis.ist # 自动生成索引 - xelatex main.tex +    make cls -- 生成文档 +2. 生成论文的方式 - xelatex hithesis.dtx - makeindex -s gind.ist -o hithesis.ind hithesis.idx - makeindex -s gglo.ist -o hithesis.gls hithesis.glo - xelatex hithesis.dtx - xelatex hithesis.dtx + - 手动狙击(源文件更改后每次编译逐行命令输入一轮) -如果喜欢Makefile的是另一画风: + xelatex -shell-escape main.tex + bibtex main + xelatex -shell-escape main.tex + xelatex -shell-escape main.tex + splitindex main -- -s hithesis.ist # 自动生成索引 + xelatex -shell-escape main.tex + + - 半自动精确射击(源文件更改后每次编译敲一次) -- 生成文档类 + make thesis - make cls + - 全自动火力覆盖(只需要输入一次命令,源文件更改后自动识别更改自动编译) -- 生成论文 + latexmk - make thesis +3. 生成文档(没什么用,因为有文档也基本没人看) -- 生成文档 + - 手动狙击(逐行命令输入一轮) - make doc - -LaTeX 中的ctex package版本要求: + xelatex hithesis.dtx + makeindex -s gind.ist -o hithesis.ind hithesis.idx + makeindex -s gglo.ist -o hithesis.gls hithesis.glo + xelatex hithesis.dtx + xelatex hithesis.dtx - ctex >= v2.4.3 (2016年9月份发布) + - 半自动精确射击(编译敲一次) -注意,一般情况下,博士论文的打印版要求右翻页,最后向图书管提交的电子版不是右翻 -页,注意选项中的选项。 + make doc -由于维护者(就是本书呆)已经是高龄不毕业博士,课题繁忙,实在无空余时间再写详细文档以及 无偿解决一些用户要求(例如前面文档中[已经解决的算法格式各实验室要求不一致](https://github.com/dustincys/PlutoThesis#%E6%B2%A1%E6%9C%89%E6%98%8E%E7%A1%AE%E8%A6%81%E6%B1%82%E7%9A%84%E6%A0%BC%E5%BC%8F)问题)。 +### 打印版、电子版 -各位刀客和大侠如用的嗨,要解囊相助,请微信扫码~~ +注意,一般情况下,博士论文的打印版要求双面打印,本硕单面。 +博士论文在双面打印成册时,规范中没有明确规定是否要右翻页(右翻页是每一章的起始位 +置位于书的右侧页面),所以会出现DIY(或身不由己DIY)哪一处右翻页。 +`openright`选项设置为真时,会将所有章(即所有部分,包括前文和后文)起始设置成右翻页。 +如果想DIY(或身不由己DIY)在什么地方右翻页,将这个选项设置为false,然后在目标位 +置添加`\cleardoublepage`命令即可。 -![5](http://wx4.sinaimg.cn/large/61dccbaaly1fge32sbb32j20my0uz3zt.jpg "谢谢") +最后向图书管提交的电子版不是右翻页且要求没有任何空白页,这时只需要设置选项`library=true` +即可,这时候会强制`openright=false`。然后什么都不用做,就会出现如同`Sirius`同学 +的这种“书签还没整明白,论文居然已经通过了”的情况。 -如果用的非常嗨, +### 幻灯片 -![10](http://wx4.sinaimg.cn/large/61dccbaaly1fge32tuvvsj20my0uzabc.jpg "谢谢") +有些强迫症刀客喜欢用Beamer,推荐[progressbar主题](https://github.com/dustincys/progressbar), +能够使用[pympress](https://github.com/Cimbali/pympress)播放双屏提示。 -那个,看在苦X高龄不毕业博士,还熬夜写代码的份上…… 唉…… +### 其他说明 -![1](http://wx4.sinaimg.cn/large/61dccbaaly1fge32qrvgij20my0uzjso.jpg "谢谢") +由于维护者(就是本书呆)已经是高龄不毕业博士,课题繁忙,实在无空余时间再写详细文档以及 无偿解决一些用户要求(例如前面文档中[已经解决的算法格式各实验室要求不一致](https://github.com/dustincys/PlutoThesis#%E6%B2%A1%E6%9C%89%E6%98%8E%E7%A1%AE%E8%A6%81%E6%B1%82%E7%9A%84%E6%A0%BC%E5%BC%8F)问题)。 -或者随便吧…… +各位刀客和大侠如用的嗨,要解囊相助,请微信扫码~~ ![wechat](http://wx2.sinaimg.cn/large/61dccbaaly1fqwvz6sd4ej20yi1au797.jpg "谢谢") diff --git a/Master/texmf-dist/doc/latex/hithesis/body/introduction.tex b/Master/texmf-dist/doc/latex/hithesis/body/introduction.tex index ee9d8c3c995..9fe6b4ed1e6 100644 --- a/Master/texmf-dist/doc/latex/hithesis/body/introduction.tex +++ b/Master/texmf-dist/doc/latex/hithesis/body/introduction.tex @@ -553,7 +553,7 @@ tikz适合用来画不需要大量实验数据支撑示意图。但R语言等专 推荐使用glossaries包管理术语、缩略语,可以自动生成首次全写,非首次缩写。 \subsection{\TeX\ 源码编辑器}[\TeX editor] -推荐:(1)付费软件Winedt;(2)免费软件kile;(3)vim或emacs或spacemacs等神级编 +推荐:(1)付费软件Winedt;(2)免费软件kile;(3)vim或emaces或sublime等神级编 译器(需要配置)。 \subsection{\LaTeX\ 排版重要原则}[\LaTeX\ typesetting rules] @@ -586,3 +586,8 @@ word那样处处修改。总而言之,使用自定义命令和环境才是正 only} \end{figure} + +% Local Variables: +% TeX-master: "../main" +% TeX-engine: xetex +% End: diff --git a/Master/texmf-dist/doc/latex/hithesis/dtx-style.sty b/Master/texmf-dist/doc/latex/hithesis/dtx-style.sty index b9f52afc586..eff17d61495 100644 --- a/Master/texmf-dist/doc/latex/hithesis/dtx-style.sty +++ b/Master/texmf-dist/doc/latex/hithesis/dtx-style.sty @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% Copyright (C) 2017-2019 by Chu Yanshuo +%% Copyright (C) 2017-2020 by Chu Yanshuo %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3a diff --git a/Master/texmf-dist/doc/latex/hithesis/hithesis.pdf b/Master/texmf-dist/doc/latex/hithesis/hithesis.pdf index ce315baaa3a..f9e8ebc4dcf 100644 Binary files a/Master/texmf-dist/doc/latex/hithesis/hithesis.pdf and b/Master/texmf-dist/doc/latex/hithesis/hithesis.pdf differ diff --git a/Master/texmf-dist/doc/latex/hithesis/latexmkrc b/Master/texmf-dist/doc/latex/hithesis/latexmkrc index 8f73cb3286e..e8cd866595a 100644 --- a/Master/texmf-dist/doc/latex/hithesis/latexmkrc +++ b/Master/texmf-dist/doc/latex/hithesis/latexmkrc @@ -8,7 +8,31 @@ $preview_continuous_mode = 1; $clean_ext = "synctex.gz acn acr alg aux bbl bcf blg brf fdb_latexmk glg glo gls idx ilg ind lof log lot out run.xml toc pdf thm toe ist idx"; $pdflatex = "xelatex -file-line-error --shell-escape -src-specials -synctex=1 -interaction=nonstopmode %O %S;cp %D %R.pdf"; $pdf_update_method = 0; - +$makeindex = 'internal splitindex'; +sub splitindex { + # Use splitindex instead of makeindex. + # The splitindex programe starts from an .idx file, makes a set of + # other .idx files for separate indexes, and then runs makeindex to + # make corresponding .ind files. + # However, it is possible that the document uses the splitindex + # package, but in a way compatible with the standard methods + # compatible with makeindex, i.e., with a single index and with the + # use of the \printindex command. + # Then we need to invoke makeindex. + # In addition, latexmk assumes that makeindex or its replacement makes + # an .ind file from an .idx file, and latexmk gives an error if it + # doesn't exist, we need to make an .ind file. + # Both problems are solved by running makeindex and then splitindex. + # Note: errors are returned by makeindex and splitindex for things + # like a missing input file. No error is returned for lines in an + # input file that are in an incorrect format; they are simply + # ignored. So no problem is caused by lines in the .idx file + # that are generated by splitindex in a format incompatible with + # makeindex. + my $ret1 = system( "makeindex", $$Psource ); + my $ret2 = system( "splitindex", $$Psource ); + return $ret1 || $ret2; +} @cus_dep_list = (@cus_dep_list, "idx ind 0 makenomenclature"); sub makenomenclature { system("splitindex $_[0] -- -s $_[0].ist"); } diff --git a/Master/texmf-dist/doc/latex/hithesis/main.pdf b/Master/texmf-dist/doc/latex/hithesis/main.pdf index 515665ee409..1f0c0de474e 100644 Binary files a/Master/texmf-dist/doc/latex/hithesis/main.pdf and b/Master/texmf-dist/doc/latex/hithesis/main.pdf differ diff --git a/Master/texmf-dist/doc/latex/hithesis/main.tex b/Master/texmf-dist/doc/latex/hithesis/main.tex index 5c632115a8a..69549e2c366 100644 --- a/Master/texmf-dist/doc/latex/hithesis/main.tex +++ b/Master/texmf-dist/doc/latex/hithesis/main.tex @@ -1,5 +1,5 @@ % !Mode:: "TeX:UTF-8" -\documentclass[newtxmath=true,newgeometry=two,capcenterlast=true,subcapcenterlast=true,openright=true,absupper=true,fontset=windowsnew,type=doctor]{hithesis} +\documentclass[newtxmath=true,newgeometry=two,capcenterlast=true,subcapcenterlast=true,openright=false,library=false,absupper=true,fontset=windowsnew,type=doctor]{hithesis} % 此处选项中不要有空格 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % 必填选项 @@ -20,7 +20,7 @@ % 后出现无法复制的问题以及想要解决排版如 biang biang 面的 biang 这类中易 % 宋体无法识别的汉字的问题。没有特殊的需要不推荐使用这个选项。 % -% 如果是安装了 windowns 字体的 linux 系统,可以填写windowsnew(win vista +% 如果是安装了 windows 字体的 linux 系统,可以填写windowsnew(win vista % 以后 的字体)或 windowsold(vista 以前)或者想用思源宋体并且是已经安装 % 了思源宋体的任何系统,填写siyuan选项。缺省值为空,自动识别系统并匹配字体 % 。模板版中给出的思源字体定义文件定义的思源字体的版本是Adobe版,其他字体 @@ -49,6 +49,9 @@ % ,电子版要求非右翻页且无空白页。如果想DIY(或身不由己DIY)在什么地方右 % 翻页,将这个选项设置为false,然后在目标位置添加`\cleardoublepage`命令即 % 可。 +% library=true|false +% 含义:是否为提交到图书馆的电子版。默认否。注意:如果设置成true,那么 +% openright选项将被强制转换为false。 % capcenterlast=true|false % 含义:图题、表题最后一行是否居中对齐(我工规范要求居中,但不要求居中对 % 齐),此选项不在规范要求中,按个人喜好自行决定。默认否。 @@ -56,21 +59,21 @@ % 含义:子图图题最后一行是否居中对齐(我工规范要求居中,但不要求居中对齐 % ),此选项不在规范要求中,按个人喜好自行决定。默认否。 % absupper=true|false -% 含义:中文目录中的英文索引在中文目录中的大小写样式歧义,在规范中要求首 -% 字母大写,在work样例中是全大写。该选项控制是否全大写。默认否。 +% 含义:中文目录中的英文摘要在中文目录中的大小写样式歧义,在规范中要求首 +% 字母大写,在work样例中是全大写。该选项控制是否全大写。默认否。 % bsmainpagenumberline=true|false -% 含义:由于本科生论文官方模板的页码和页眉格式混乱,提供这个选项自定义设 -% 置是否在正文中显示页码横线,默认否。 +% 含义:由于本科生论文官方模板的页码和页眉格式混乱,提供这个选项自定义设 +% 置是否在正文中显示页码横线,默认否。 % bsfrontpagenumberline=true|false -% 含义:由于本科生论文官方模板的页码和页眉格式混乱,提供这个选项自定义设 -% 置是否在前文中显示页码横线,默认否。 +% 含义:由于本科生论文官方模板的页码和页眉格式混乱,提供这个选项自定义设 +% 置是否在前文中显示页码横线,默认否。 % bsheadrule=true|false -% 含义:由于本科生论文官方模板的页码和页眉格式混乱,提供这个选项自定义设 -% 置是否显示页眉横线,默认显示。 +% 含义:由于本科生论文官方模板的页码和页眉格式混乱,提供这个选项自定义设 +% 置是否显示页眉横线,默认显示。 % splitbibitem=true|false -% 含义:参考文献每一个条目内能不能断页,应广大刀客要求添加。默认否。 +% 含义:参考文献每一个条目内能不能断页,应广大刀客要求添加。默认否。 % newtxmath=true|false -% 含义:数学字体是否使用新罗马。默认是。 +% 含义:数学字体是否使用新罗马。默认是。 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage{hithesis} @@ -118,14 +121,18 @@ \include{back/resume} % 博士学位论文有个人简介 %本科书序为: -%\include{body/conclusion} % 结论 -%\bibliographystyle{hithesis} -%\bibliography{reference} -%\authorization %授权 -%%\authorization[saomiao.pdf] %添加扫描页的命令,与上互斥 -%\include{body/acknowledgements} %致谢 -%\begin{appendix}%附录 -%\input{body/appendix01}%本科生翻译论文 -%\end{appendix} +% \include{body/conclusion} % 结论 +% \bibliographystyle{hithesis} +% \bibliography{reference} +% \authorization %授权 +% % \authorization[saomiao.pdf] %添加扫描页的命令,与上互斥 +% \include{body/acknowledgements} %致谢 +% \begin{appendix}%附录 +% % \input{body/appendix01}%本科生翻译论文 +% \end{appendix} \end{document} + +% Local Variables: +% TeX-engine: xetex +% End: diff --git a/Master/texmf-dist/doc/latex/hithesis/reference.bib b/Master/texmf-dist/doc/latex/hithesis/reference.bib index 49e0405fb15..5b4b2604872 100644 --- a/Master/texmf-dist/doc/latex/hithesis/reference.bib +++ b/Master/texmf-dist/doc/latex/hithesis/reference.bib @@ -1,11 +1,5 @@ % !Mode:: "TeX:UTF-8" -@ONLINE{DoeOnline, -author = {Doe, Ringo}, -title = {This is a test entry of type {@ONLINE}}, -month = jun, -year = {2009}, -url = {http://www.test.org/doe/} -} + @INPROCEEDINGS{cnproceed, author = {王重阳 and 黄药师 and 欧阳峰 and 洪七公 and 段皇帝}, title = {武林高手从入门到精通}, -- cgit v1.2.3