Use biblatex for bibliography formatting.

Remove `natbib' related code and API.
This commit is contained in:
Casper Ti. Vector 2012-05-30 17:40:33 +08:00
parent 8d2250d0e3
commit 26219b452b
13 changed files with 41 additions and 1516 deletions

View File

@ -35,7 +35,8 @@ cd ..
goto end
:clear
del *.log *.aux *.bbl *.blg *.toc *.lof *.lot *.out *.dvi missfont.log chap\*.aux
del *.aux *.bbl *.bcf *.blg *.dvi *.lof *.log *.lot *.run.xml *.toc *.out
del missfont.log chap\*.aux
goto end
:usage

View File

@ -8,7 +8,7 @@
JOBNAME = pkuthss
# 这个变量的值可以为 latex、pdflatex 或 xelatex。
LATEX = latex
BIBTEX = bibtex
BIBTEX = biber -f -l zh_CN.UTF-8
GBK2UNI = gbk2uni
DVIPDF = dvipdfmx
@ -46,14 +46,11 @@ doc:
$(BIBTEX) $(JOBNAME)
$(DOGBK2UNI)
$(LATEX) $(JOBNAME)
$(LATEX) $(JOBNAME)
$(DODVIPDF)
clean:
$(RM) $(JOBNAME).log $(JOBNAME).aux $(JOBNAME).bbl $(JOBNAME).blg \
$(JOBNAME).toc $(JOBNAME).lof $(JOBNAME).lot $(JOBNAME).out \
$(JOBNAME).dvi missfont.log
$(RM) chap/*.aux
$(RM) $(JOBNAME).{aux,bbl,bcf,blg,dvi,lof,log,lot,run.xml,toc,out} \
{missfont,texput}.log chap/*.aux
dist-clean: clean img-clean
$(RM) $(JOBNAME).pdf

View File

@ -44,14 +44,14 @@
\item \verb|copyright.tex|
版权声明部分\footnote{%
本文档中的版权声明并不是%
学校默认要求的形式\cite{pku-copyright}
学校默认要求的形式\supercite{pku-copyright}
符合学校要求的一个版权声明已经放在此文件中,
但用 \texttt{\string\iffalse{} ...\ \string\fi} %
注释掉了,
用户可以考虑使用那个版本。
}
\item \verb|originauth.tex|
原创性声明和使用授权说明部分\cite{pku-originauth}
原创性声明和使用授权说明部分\supercite{pku-originauth}
\end{itemize}
\item \verb|img/|:目录,包含论文中所有图片:
\begin{itemize}
@ -61,7 +61,7 @@
\item \verb|pkulogo.eps|:北京大学校徽。
\item \verb|pkuword.eps|:“北京大学”字样。
\end{itemize}
\emph{%
\myemph{%
注:
\hologo{pdfLaTeX} 方式编译(见第 \ref{sec:compile} 节)
可能需要将 eps 图片转换为 pdf 格式,
@ -78,8 +78,8 @@
\begin{itemize}
\item 一个基本的 \TeX{} 发行版。
\item CJK 或 XeCJK\hologo{XeLaTeX} 使用)宏包。
\item ctex 宏包\cite{ctex,ctex-faq}(提供了 ctexbook 文档类)。
\item 中文字体。\emph{%
\item ctex 宏包\supercite{ctex,ctex-faq}(提供了 ctexbook 文档类)。
\item 中文字体。\myemph{%
注:
一些中文字体的字库不全,
只有 GB2312 字符集内字符的字体信息。
@ -160,7 +160,7 @@ $HOME/texmf
\end{itemize}
用这样的方法安装完宏包后,可能需要刷新一次文件名数据库。
关于这一步如何操作,详见 \CTeX{} FAQ\cite{ctex-faq}\footnote{%
关于这一步如何操作,详见 \CTeX{} FAQ\supercite{ctex-faq}\footnote{%
在类 UNIX 操作系统的终端或 Windows 的命令提示符中%
\texttt{texdoc ctex-faq} 调出文档,
然后在其中搜索“文件名数据库”即可找到。%
@ -179,7 +179,7 @@ $HOME/texmf
\item \hologo{XeLaTeX} 方式:\\
依次执行 \verb|xelatex|\verb|bibtex|%
\verb|xelatex| 和 \verb|xelatex|。\\
\emph{%
\myemph{%
注意:\hologo{XeLaTeX} 对非 UTF-8 的编码支持不好,
因此 \hologo{XeLaTeX} 方式的编译不支持 GBK 编码。
}

View File

@ -95,7 +95,7 @@
}
因此不建议使用。
基于上述考虑,%
\emph{%
\myemph{%
pkuthss-extra 宏包默认启用 \texttt{nouppermark} 选项,
即在不在页眉中使用大写的章节名%
}
@ -106,13 +106,10 @@
是否启用第 \ref{ssec:misc} 小节中介绍的 %
\verb|\specialchap| 命令。
\item \textbf{\texttt{[no]upcite}}
是否默认使引用标记成为上标。
\item \textbf{\texttt{[no]pdfprop}}
是否自动根据设定的论文文档信息(如作者、标题等)
设置生成的 pdf 文档的相应属性。%
\emph{%
\myemph{%
注意:
该选项实际上是在 \texttt{\string\maketitle} 时生效的,
这是因为考虑到%
@ -136,7 +133,7 @@
例如,在提交打印版的论文时,
彩色的链接文字在黑白打印出来之后可能颜色会很浅。
此时用户\emph{%
此时用户\myemph{%
可以启用 pkuthss-extra 宏包的 nocolorlinks 选项,
使所有的链接变为黑色,以免影响打印%
}
@ -218,7 +215,7 @@
当文档信息的内容包含了逗号等有干扰的字符时,
可以用大括号将这一项文档信息的全部内容括起来。%
\emph{%
\myemph{%
我们推荐用户总用大括号将文档信息的内容括起来,
以避免很多不必要的麻烦。%
}
@ -242,7 +239,7 @@
\texttt{\bfseries\string\specialchap} 命令%
用于开始不进行标号但计入目录的一章,
并合理安排其页眉。%
\emph{%
\myemph{%
注意:
需要启用 pkuthss-extra 宏包的 \texttt{spechap} 选项%
才能使用此命令。
@ -260,7 +257,7 @@
但用户有时可能不需要输出标题页,
从而不会调用 \verb|\maketitle| 命令,
此时就需要在设定完文档信息之后调用 \verb|\setpdfproperties|。
\emph{%
\myemph{%
注意:
需要启用 pkuthss-extra 宏包的 \texttt{pdfprop} 选项%
才能使用此命令。%
@ -268,11 +265,11 @@
\subsection{从其它文档类和宏包继承的命令}
pkuthss 文档类建立在 ctexbook\cite{ctex} 文档类的基础上,
pkuthss 文档类建立在 ctexbook\supercite{ctex} 文档类的基础上,
并调用了 CJKfntef、%
graphicx\cite{graphicx}、geometry\cite{geometry}%
fancyhdr\cite{fancyhdr}、natbib\cite{natbib}%
etoolbox\cite{etoolbox} 等几个宏包。
graphicx\supercite{graphicx}、geometry\supercite{geometry}%
fancyhdr\supercite{fancyhdr}%
etoolbox\supercite{etoolbox} 等几个宏包。
因此ctexbook 文档类和这些宏包所提供的功能均可以使用。
例如,用户如果想将目录的标题改为“目{\quad\quad}录”,
@ -281,27 +278,19 @@
\CTEXoptions{contentsname = {{\quad\quad}}}
\end{Verbatim}
又例如,用户有时可能需要使用非上标的引用标记,
此时可以使用 natbib 宏包提供的相关命令,
例如在本文档中的以下代码
\begin{Verbatim}[frame = single]
文献 \citenum{ctex} 中提到
\end{Verbatim}
将产生“文献 \citenum{ctex} 中提到”。
pkuthss-extra 宏包可能调用以下这些宏包:
\begin{itemize}
\item 启用 \verb|spacing| 选项时会调用 %
setspace 和 footmisc\cite{footmisc} 宏包。
setspace 和 footmisc\supercite{footmisc} 宏包。
\item 启用 \verb|tightlist| 选项时会调用 %
enumitem\cite{enumitem} 宏包。
enumitem\supercite{enumitem} 宏包。
\item 启用 \verb|tocbibind| 选项时会调用 %
tocbibind\cite{tocbibind} 宏包。
tocbibind\supercite{tocbibind} 宏包。
\end{itemize}
因此在启用相应选项时,用户可以使用对应宏包所提供的功能。
\subsection{不建议更改的设置}
\emph{%
\myemph{%
pkuthss 文档类中有一些一旦改动就有可能破坏预设排版规划的设置,
因此不建议更改这些设置,它们是:
\begin{itemize}

View File

@ -33,14 +33,9 @@
进行这些处理的代码将在以后被删除,
而改成直接调用 ctex 宏包的 \verb|hyperref| 选项。
当启用 natbib 宏包的 \verb|super| 选项时,
\verb|\citenum| 命令生成的引用序号前会有一个额外的空格。
因此建议使用第 \ref{ssec:misc} 小节中不带方括号的方式来%
排版非上标的引用序号。
\subsection{文档格式可能存在的问题}
研究生手册和其电子版\cite{pku-thesisstyle}要求的论文封面并不一致。
研究生手册和其电子版\supercite{pku-thesisstyle}要求的论文封面并不一致。
这里以电子版为准。
\subsection{其它一些问题}

View File

@ -37,7 +37,7 @@
本文档的源代码中大部分已经有了较为详细的注释,
故请直接参照相应文件中的注释。
\emph{%
\myemph{%
注:%
\texttt{img/} 目录中的 \texttt{Makefile}%
两个 PostScript\texttt{.eps})文件(都是文本文件)中%

View File

@ -32,9 +32,9 @@ texdoc pkuthss
即可写出自己的论文。
\end{itemize}
在此之前,包括 dypang\cite{dypang}、FerretL\cite{FerretL}%
lwolf\cite{lwolf}、Langpku\cite{Langpku}%
solvethis\cite{solvethis} 等的数位网友均做过学位论文模版的工作。
在此之前,包括 dypang\supercite{dypang}、FerretL\supercite{FerretL}%
lwolf\supercite{lwolf}、Langpku\supercite{Langpku}%
solvethis\supercite{solvethis} 等的数位网友均做过学位论文模版的工作。
本论文模版是 solvethis 的 pkuthss 模版的更新版本,
更新的重点是重构和对新文档类、宏包的支持。

View File

@ -9,6 +9,8 @@
% 在黑白打印时彩色链接可能变成浅灰色此时可将“colorlinks”改为“nocolorlinks”。
\documentclass[UTF8, colorlinks]{pkuthss}
% 使用 biblatex 排版参考文献,并规定其格式。
\usepackage[backend = biber, style = caspervector, utf8]{biblatex}
% 使得打字机粗体可以被使用。
\usepackage{lmodern}
% 产生 originauth.tex 里的 \square
@ -19,10 +21,7 @@
\usepackage{hologo}
% 使被强调的内容为红色。
\let\oldemph\emph
\renewcommand{\emph}[1]{\oldemph{\textcolor{red}{#1}}}
% 参考文献格式。
\bibliographystyle{ref/chinesebst-mod}
\newcommand{\myemph}[1]{\emph{\textcolor{red}{#1}}}
% pkuthss 文档模版的版本。
\newcommand{\docversion}{v1.4 alpha2}
@ -49,6 +48,8 @@
ckeywords = {\LaTeX2e{},排版,文档类,\CTeX{}},
ekeywords = {\LaTeX2e{}, typesetting, document class, \CTeX{}}
}
% 导入参考文献数据库(注意不要省略“.bib”
\addbibresource{pkuthss.bib}
\begin{document}
% 以下为正文之前的部分。
@ -78,7 +79,7 @@
% 正文中的附录部分。
\appendix
% 参考文献。
\bibliography{ref/pkuthss}
\printbibliography[heading = bibnumbered]
% 各附录。
\include{chap/encl1}
\include{chap/encl2}

File diff suppressed because it is too large Load Diff

View File

@ -1,158 +0,0 @@
vim:ts=4:sw=4
@BOOK{texbook,
AUTHOR = {Knuth, Donald E.},
TITLE = {The \TeX{}book},
SERIES = {Computers and Typesetting},
VOLUME = {A},
PUBLISHER = {Addison-Wesley},
EDITION = {second},
YEAR = {1984},
}
@BOOK{tlc,
AUTHOR = {Goossens, M. and Mittelbach, F. and Samarin, A.},
TITLE = {The \LaTeX{} Companion},
PUBLISHER = {Addison-Wesley},
YEAR = {1994},
}
@MISC{ctex,
AUTHOR = {{ctex.org}},
TITLE = {ctex 宏包说明},
VERSION = {0.99b},
YEAR = {2010},
LANGUAGE = {Chinese},
}
@MISC{ctex-faq,
AUTHOR = {吴凌云},
TITLE = {\CTeX{} FAQ常见问题集},
VERSION = {0.4 beta},
YEAR = {2007},
LANGUAGE = {Chinese},
}
@MISC{enumitem,
AUTHOR = {Bezos, Javier},
TITLE = {Customizing lists with the enumitem package},
YEAR = {2009},
}
@MISC{etoolbox,
AUTHOR = {Lehman, Philipp},
TITLE = {The etoolbox package: An e-TeX Toolbox for Class and Package Authors},
VERSION = {2.1},
YEAR = {2011},
}
@MISC{fancyhdr,
AUTHOR = {van Oostrum, Piet},
TITLE = {Page layout in \LaTeX{}},
YEAR = {2004},
}
@MISC{footmisc,
AUTHOR = {Fairbairns, Robin},
TITLE = {footmisc --- a portmanteau package for customising footnotes in \LaTeX{}},
YEAR = {2009},
}
@MISC{geometry,
AUTHOR = {Umeki, Hideo},
TITLE = {The \textsf{geometry} package},
VERSION = {5.3},
YEAR = {2010},
}
@MISC{graphicx,
AUTHOR = {Carlisle, D. P.},
TITLE = {Packages in the `graphics' bundle},
YEAR = {2005},
}
@MISC{hyperref,
AUTHOR = {Rahtz, Sebastian and Oberdiek, Heiko},
TITLE = {Hypertext marks in \LaTeX{}: a manual for hyperref},
YEAR = {2010},
}
@MISC{natbib,
AUTHOR = {W. Daly, Patrick},
TITLE = {Natural Sciences Citations and References},
YEAR = {2010},
}
@MISC{tocbibind,
AUTHOR = {Wilson, Peter and Press, Herries and Robertson, Will},
TITLE = {The tocbibind package},
YEAR = {2010},
}
@MISC{dypang,
AUTHOR = {dypang},
TITLE = {北京大学硕博论文模版(测试版)},
URL = {http://bdwm.net/a.php?b/Thesis/M.1112645491.A/D10F612.rar},
YEAR = {2005},
LANGUAGE = {Chinese},
}
@MISC{FerretL,
AUTHOR = {FerretL},
TITLE = {新的 pku 博士论文模板},
URL = {http://bdwm.net/a.php?b/Thesis/M.1174982168.A/4270722.rar},
YEAR = {2007},
LANGUAGE = {Chinese},
}
@MISC{lwolf,
AUTHOR = {lwolf},
TITLE = {学士(硕/博)毕业论文模板 [基于 dypang 的模板]},
URL = {http://bdwm.net/a.php?b/MathTools/M.1179239165.A/5A2D5A2.rar},
YEAR = {2007},
LANGUAGE = {Chinese},
}
@MISC{Langpku,
AUTHOR = {Langpku},
TITLE = {Re: 关于置底模版的问题和一些修改},
URL = {http://bdwm.net/a.php?b/MathTools/M.1180676700.A/DBB7810.zip},
YEAR = {2007},
LANGUAGE = {Chinese},
}
@MISC{solvethis,
AUTHOR = {solvethis},
TITLE = {Re: 学位论文模板更新},
URL = {http://bdwm.net/a.php?b/Thesis/M.1205377509.A/9413ED2.rar},
YEAR = {2008},
LANGUAGE = {Chinese},
}
@MISC{pku-copyright,
AUTHOR = {北京大学研究生院},
TITLE = {北京大学学位论文版权声明(首页)},
URL = {http://grs.pku.edu.cn/document/20101110143928832634.doc},
YEAR = {2010},
LANGUAGE = {Chinese},
}
@MISC{pku-originauth,
AUTHOR = {北京大学研究生院},
TITLE = {北京大学学位论文原创性声明和使用授权说明(末页)},
URL = {http://grs.pku.edu.cn/document/20101110143844053593.doc},
YEAR = {2010},
LANGUAGE = {Chinese},
}
@INCOLLECTION{pku-thesisstyle,
AUTHOR = {北京大学研究生院},
TITLE = {北京大学研究生学位论文的基本要求与书写格式},
BOOKTITLE = {北京大学研究生手册},
URL = {http://grs.pku.edu.cn/document/20110104121030679471.doc},
PUBLISHER = {北京大学},
YEAR = {2010},
PAGES = {27-32},
LANGUAGE = {Chinese},
}

View File

@ -54,8 +54,6 @@
\pkuthssextra@int@boolopt{uppermark}{false}
% Whether to enable the `\spacialchap' command.
\pkuthssextra@int@boolopt{spechap}{true}
% Whether to make citation labels superscript as default.
\pkuthssextra@int@boolopt{upcite}{true}
% Whether to automatically set properties for generated PDF from user defined
% document information (author, title, etc.).
\pkuthssextra@int@boolopt{pdfprop}{true}
@ -83,14 +81,14 @@
\ifpkuthssextra@opt@tightlist
% Lists often appear to be too sparse when items are just one or two lines long.
% Here we cancel the extra vertical spacing between list items.
% Biblatex uses `\itemsep' as default `\bibitemsep', no need to change it.
\RequirePackage{enumitem}
\setlist{nolistsep}
% Similarly for bibliography items.
\setlength{\bibsep}{\parsep}
\fi
\ifpkuthssextra@opt@tocbibind
% Add bibliography and indexes in table of contents, but not contents itself.
% Note that bibliography numbering might be managed by biblatex.
\RequirePackage[nottoc]{tocbibind}
% Add PDF bookmark for table of contents.
\let\pkuthssextra@tmp@tableofcontents\tableofcontents
@ -113,11 +111,6 @@
}
\fi
\ifpkuthssextra@opt@upcite
% Make citation labels superscript as default.
\setcitestyle{super,square,comma}
\fi
\AtBeginDocument{
% `\MakeUppercase' works problematically.
% eg. it converts `\cite{ctex}' into `\cite{CTEX}'.

View File

@ -67,9 +67,6 @@
\RequirePackage{graphicx}[1999/02/16]
% Provide utilities for setting page layout.
\RequirePackage{geometry}
% Provide utilities for setting format of citation labels.
% Use the numerical scheme as default.
\RequirePackage[numbers]{natbib}
% Provide \AtEndPreamble used later.
% To be removed by summer in 2013, see the fix of `\hypersetup' below.
\RequirePackage{etoolbox}

View File

@ -33,7 +33,8 @@ doc-utf8lf:
doc-gbkcrlf:
find $(DOC_GBKCRLF) -type f -exec $(TOCRLF) '{}' ';'
find $(DOC_GBKCRLF) -not $(FIND_UTF8) -type f -exec $(TOGBK) '{}' ';'
sed -i 's;\(\\documentclass\[[^][]*\)UTF8\([^][]*\]{pkuthss}\);\1GBK\2;g' \
sed -i -e '/\\documentclass/ s/UTF8/GBK/' \
-e '/^\\usepackage.*{biblatex}$$/ s/utf8/gbk/' \
$(DOC_GBKCRLF)/pkuthss.tex
sed -i 's;\(\.\./tex/pkuthss-\)utf8\(.def\);\1gbk\2;g' \
$(DOC_GBKCRLF)/chap/encl1.tex