├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── buaathesis.bst ├── buaathesis.cls ├── data ├── abstract.tex ├── appendix1-faq.tex ├── appendix2-contactus.tex ├── bachelor │ ├── acknowledgement.tex │ ├── assign.tex │ └── bachelor_info.tex ├── bibs.bib ├── chapter1-intro.tex ├── chapter2-config.tex ├── chapter3-download.tex ├── chapter4-basic.tex ├── chapter5-usage.tex ├── chapter6-implement.tex ├── chapter7-conclusion.tex ├── com_info.tex ├── master │ ├── back1-achievement.tex │ ├── back2-acknowledgement.tex │ ├── back3-aboutauthor.tex │ ├── denotation.tex │ └── master_info.tex └── reference.tex ├── figure ├── buaamark.eps ├── buaaname.eps ├── buaaname.jpg └── fgbt.jpg ├── msmake.bat ├── sample-bachelor.tex └── sample-master.tex /.gitignore: -------------------------------------------------------------------------------- 1 | *.acn 2 | *.acr 3 | *.alg 4 | *.aux 5 | *.bbl 6 | *.blg 7 | *.dvi 8 | *.fdb_latexmk 9 | *.glg 10 | *.glo 11 | *.gls 12 | *.idx 13 | *.ilg 14 | *.ind 15 | *.ist 16 | *.lof 17 | *.log 18 | *.lot 19 | *.maf 20 | *.mtc 21 | *.mtc0 22 | *.nav 23 | *.nlo 24 | *.out 25 | *.pdfsync 26 | *.ps 27 | *.snm 28 | *.synctex.gz 29 | *.toc 30 | *.vrb 31 | *.xdy 32 | *.swp 33 | *.thm 34 | *.pdf 35 | .DS_Store 36 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2012 BHOSC All rights reserved. 2 | 3 | # GPLv3 4 | 5 | This program is free software: you can redistribute it and/or modify 6 | it under the terms of the GNU General Public License as published by 7 | the Free Software Foundation, either version 3 of the License, or 8 | (at your option) any later version. 9 | 10 | This program is distributed in the hope that it will be useful, 11 | but WITHOUT ANY WARRANTY; without even the implied warranty of 12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 | GNU General Public License for more details. 14 | 15 | You should have received a copy of the GNU General Public License 16 | along with this program. If not, see . 17 | 18 | # LPPL 19 | 20 | This work may be distributed and/or modified under the 21 | conditions of the LaTeX Project Public License, either version 1.3 22 | of this license or (at your option) any later version. 23 | The latest version of this license is in 24 | http://www.latex-project.org/lppl.txt 25 | and version 1.3 or later is part of all distributions of LaTeX 26 | version 2005/12/01 or later. 27 | 28 | This work has the LPPL maintenance status 'maintained'. 29 | 30 | The Current Maintainer of this work is BHOSC. 31 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | bachelor: 2 | xelatex sample-bachelor.tex 3 | -bibtex sample-bachelor.aux 4 | xelatex sample-bachelor.tex 5 | xelatex sample-bachelor.tex 6 | master: 7 | xelatex sample-master.tex 8 | -bibtex sample-master.aux 9 | xelatex sample-master.tex 10 | xelatex sample-master.tex 11 | clean: 12 | find . -name '*.aux' -print0 | xargs -0 rm -rf 13 | rm -rf *.lof *.log *.lot *.out *.toc *.bbl *.blg *.thm 14 | depclean: clean 15 | rm -rf *.pdf 16 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # BUAAthesis 2 | 3 | 北航毕设论文LaTeX模板 4 | 5 | ## 项目说明 6 | 7 | 这是北航开源俱乐部维护的的北航毕设论文的LaTeX模板 8 | 9 | 目前仍在开发中,欢迎关注进展,提交bug/issue,甚至贡献代码 10 | 11 | ## 预览 12 | 13 | 项目发布了最新版本的编译好的[PDF样例文档](https://github.com/BHOSC/BUAAthesis/releases/latest)供大家预览: 14 | 15 | + 本科:https://github.com/BHOSC/BUAAthesis/releases/download/v0.1/sample-bachelor.pdf 16 | + 硕士:https://github.com/BHOSC/BUAAthesis/releases/download/v0.1/sample-master.pdf 17 | + 博士:https://github.com/BHOSC/BUAAthesis/releases/download/v0.1/sample-doctor.pdf 18 | 19 | ## 最佳实践 20 | 21 | **目前学院的要求是毕设论文必须以Word格式提交,这给使用LaTeX 22 | 模板书写毕设论文的同学带来了诸多不便。为此,我们推荐使用在线工 23 | 具将PDF文档转为Word格式:** 24 | 25 | [https://cloud.gonitro.com/](https://cloud.gonitro.com/) 需注册,经过尝试本链接效果更好,可以较好处理目录、段落格式和字体等问题。 26 | 27 | [http://convertonlinefree.com/PDFToWORDEN.aspx](http://convertonlinefree.com/PDFToWORDEN.aspx) 28 | 29 | **以上链接对公式转换效果均不好,推荐使用pandoc转换或使用其他公式插件进行公式插入** 30 | 31 | ## 依赖 32 | 33 | 模板依赖v2.0及以上版本的ctex包,请使用较新版本的LaTeX发行版。 34 | 35 | 目前已经测试的LaTeX发行版包括: 36 | 37 | + TeXLive 2015、TeXLive 2016(**推荐**) 38 | + CTeX 2.9.3 39 | 40 | 对于老版本的LaTeX发行版,请通过包管理器升级ctex的版本。 41 | -------------------------------------------------------------------------------- /buaathesis.bst: -------------------------------------------------------------------------------- 1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2 | %%% ==================================================================== 3 | %%% Copyright (C) 2006 Wu Kai 4 | %%% @BibTeX-style-file{ 5 | %%% author = "吴凯", 6 | %%% version = "1 Beta 2 测试版", 7 | %%% date = "2006/5/25 21:17" 8 | %%% filename = "GBT7714-2005N.bst", 9 | %%% address = "上海财经大学,公共经济与管理学院,200433", 10 | %%% email = "solomonkwu@gmail.com", 11 | %%% docstring = "本文件改编自Sake J. Hogeveen的authordate1.bst文件。 12 | %%% 产生符合《GB/T 7714-2005文后参考文献著录规则》 13 | %%% 顺序编码制格式的文后参考文献。 14 | %%% 使用方法: 15 | %%% \usepackage[numbers,sort&compress]{natbib} 16 | %%% \usepackage{hypernat} 17 | %%% \bibliographystyle{GBT7714-2005N}" 18 | %%% copyright = "使用前请核对最新的版本。您可以免费使用和传播本文件(GBT7714-2005N.bst)。 19 | %%% 作者保留修改的权利,以保证不同版本GBT7714-2005N.bst的一致性。 20 | %%% 如您需要对本文件进行修改,请另存为其他名字。" 21 | %%% ==================================================================== 22 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 23 | 24 | ENTRY 25 | { 26 | address 27 | author 28 | booktitle 29 | chapter 30 | edition 31 | editor 32 | howpublished 33 | institution 34 | journal 35 | key 36 | month 37 | note 38 | number 39 | organization 40 | pages 41 | publisher 42 | school 43 | series 44 | title 45 | type 46 | volume 47 | year 48 | url 49 | TypeofLit %新加入:文献类型和标志代码 50 | normalauthor %不改变大小写的作者 51 | normaleditor %不改变大小写的编者 52 | translator %新加入:翻译者 53 | date %日期,公告日期,公开日期 54 | modifydate %修改日期 55 | citedate %引用日期 56 | patentid %专利号 57 | country %国家(主要用于专利中) 58 | miscyear %其它类中用于输出年份 59 | startyear %起始年 60 | startvolume %起始卷 61 | startnumber %起始期 62 | endyear %终止年 63 | endvolume %终止卷 64 | endnumber %终止期 65 | language %默认是英文文献,非空则表明是中文文献 66 | } 67 | {} 68 | { label extra.label sort.label short.list } 69 | 70 | INTEGERS { output.state before.all mid.sentence after.sentence after.block } 71 | FUNCTION {format.url} 72 | { url empty$ 73 | { "" } 74 | { new.block 75 | "\url{" url * "}" * } 76 | if$ 77 | } 78 | FUNCTION {init.state.consts} 79 | { #0 'before.all := 80 | #1 'mid.sentence := 81 | #2 'after.sentence := 82 | #3 'after.block := 83 | } 84 | 85 | STRINGS { s t } 86 | 87 | 88 | 89 | FUNCTION {output.nonnull} 90 | { 's := 91 | output.state mid.sentence = 92 | { ", " * write$ } 93 | { output.state after.block = 94 | { add.period$ write$ 95 | newline$ 96 | "\newblock " write$ 97 | } 98 | { output.state before.all = 99 | 'write$ 100 | { add.period$ " " * write$ } 101 | if$ 102 | } 103 | if$ 104 | mid.sentence 'output.state := 105 | } 106 | if$ 107 | s 108 | } 109 | 110 | 111 | FUNCTION {coutput.nonnull} %wk 112 | { 's := 113 | output.state mid.sentence = 114 | { "," * write$ } % 115 | { output.state after.block = 116 | { add.period$ write$ 117 | newline$ 118 | "\newblock " write$ 119 | } 120 | { output.state before.all = 121 | 'write$ 122 | { add.period$ " " * write$ } 123 | if$ 124 | } 125 | if$ 126 | mid.sentence 'output.state := 127 | } 128 | if$ 129 | s 130 | } 131 | 132 | FUNCTION {output} 133 | { duplicate$ empty$ 134 | 'pop$ 135 | 'output.nonnull 136 | if$ 137 | } 138 | 139 | FUNCTION {coutput} %wk 140 | { duplicate$ empty$ 141 | 'pop$ 142 | 'coutput.nonnull 143 | if$ 144 | } 145 | 146 | FUNCTION {output.check} 147 | { 't := 148 | duplicate$ empty$ 149 | { pop$ "empty " t * " in " * cite$ * warning$ } 150 | 'output.nonnull 151 | if$ 152 | } 153 | 154 | FUNCTION {coutput.check} %wk 155 | { 't := 156 | duplicate$ empty$ 157 | { pop$ "empty " t * " in " * cite$ * warning$ } 158 | 'coutput.nonnull 159 | if$ 160 | } 161 | 162 | FUNCTION {output.year.month.check} 163 | { year empty$ 164 | { "empty year in " cite$ * warning$ } 165 | { add.period$ write$ 166 | month empty$ 167 | { " " year * extra.label * "." * 168 | after.sentence 'output.state := 169 | } 170 | { " " year * extra.label * " (" * month * ")." * 171 | after.sentence 'output.state := 172 | } 173 | if$ 174 | } 175 | if$ 176 | } 177 | 178 | FUNCTION {output.cyear.month.check} %wk 179 | { year empty$ 180 | { "empty year in " cite$ * warning$ } 181 | {write$ 182 | month empty$ 183 | {year %wk 184 | after.sentence 'output.state := 185 | } 186 | { "" year * extra.label * "(" * month * ")" * %wk 187 | after.sentence 'output.state := 188 | } 189 | if$ 190 | } 191 | if$ 192 | } 193 | 194 | 195 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 196 | FUNCTION {output.modifydate.check} 197 | {modifydate 198 | } 199 | 200 | FUNCTION {output.citedate.check} 201 | { year empty$ 202 | { "" } 203 | { write$ 204 | "[" citedate * extra.label * "]" * 205 | after.sentence 'output.state := 206 | } 207 | if$ 208 | } 209 | 210 | 211 | FUNCTION {output.year.check} 212 | { year empty$ 213 | { "empty year in " cite$ * warning$ } 214 | {miscyear empty$ 215 | {year} 216 | {miscyear} 217 | if$ %wk 218 | } 219 | if$ 220 | extra.label * 221 | } 222 | 223 | FUNCTION {output.cyear.check} %wk 224 | { year empty$ 225 | { "empty year in " cite$ * warning$ } 226 | {miscyear empty$ 227 | {year} 228 | {miscyear} 229 | if$ %wk 230 | } 231 | if$ 232 | extra.label * 233 | } 234 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 235 | 236 | FUNCTION {output.continue.year.check} %wk 237 | { 238 | endyear empty$ 239 | {startyear empty$ 240 | {year empty$ 241 | { "empty year in " cite$ * warning$ } 242 | {"" year * "" * } 243 | if$ 244 | } 245 | {"" startyear * "-" * } 246 | if$ 247 | } 248 | {startyear empty$ 249 | {year empty$ 250 | { "empty year in " cite$ * warning$ } 251 | {"" year * "" * } 252 | if$ 253 | } 254 | {"" startyear * "-" * 255 | "" endyear * "" * * 256 | } 257 | if$ 258 | } 259 | if$ 260 | } 261 | 262 | 263 | FUNCTION {output.continue.cyear.check} %wk 264 | { 265 | endyear empty$ 266 | {startyear empty$ 267 | {year empty$ 268 | { "empty year in " cite$ * warning$ } 269 | {"" year * "" * } 270 | if$ 271 | } 272 | {"" startyear * "-" * } 273 | if$ 274 | } 275 | {startyear empty$ 276 | {year empty$ 277 | { "empty year in " cite$ * warning$ } 278 | {"" year * "" * } 279 | if$ 280 | } 281 | {"" startyear * "-" * 282 | "" endyear * "" * * 283 | } 284 | if$ 285 | } 286 | if$ 287 | } 288 | 289 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 290 | FUNCTION {output.article.year.check} 291 | {month empty$ 292 | { 293 | year empty$ 294 | { "empty year in " cite$ * warning$ } 295 | {year %wk 296 | } 297 | if$ 298 | } 299 | { 300 | TypeofLit empty$ 301 | {year empty$ 302 | { "empty year in " cite$ * warning$ } 303 | {year %wk 304 | } 305 | if$} 306 | 307 | {year empty$ 308 | { "empty year in " cite$ * warning$ } 309 | {year %wk 310 | "-" month * "" * * 311 | } 312 | if$ 313 | } 314 | if$ 315 | } 316 | if$ 317 | } 318 | 319 | FUNCTION {output.carticle.year.check} %wk 320 | {month empty$ 321 | { 322 | year empty$ 323 | { "empty year in " cite$ * warning$ } 324 | {year %wk 325 | } 326 | if$ 327 | } 328 | { 329 | TypeofLit empty$ 330 | {year empty$ 331 | { "empty year in " cite$ * warning$ } 332 | {year %wk 333 | } 334 | if$} 335 | 336 | {year empty$ 337 | { "empty year in " cite$ * warning$ } 338 | {year %wk 339 | "-" month * "" * * 340 | } 341 | if$ 342 | } 343 | if$ 344 | } 345 | if$ 346 | } 347 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 348 | 349 | FUNCTION {output.bibitem} 350 | { newline$ 351 | "\bibitem[" write$ 352 | label write$ 353 | "]{" write$ 354 | cite$ write$ 355 | "}" write$ 356 | newline$ 357 | "" 358 | before.all 'output.state := 359 | } 360 | 361 | FUNCTION {fin.entry} 362 | { add.period$ 363 | write$ 364 | newline$ 365 | } 366 | 367 | FUNCTION {new.block} 368 | { output.state before.all = 369 | 'skip$ 370 | { after.block 'output.state := } 371 | if$ 372 | } 373 | 374 | FUNCTION {new.sentence} 375 | { output.state after.block = 376 | 'skip$ 377 | { output.state before.all = 378 | 'skip$ 379 | { after.sentence 'output.state := } 380 | if$ 381 | } 382 | if$ 383 | } 384 | 385 | FUNCTION {not} 386 | { { #0 } 387 | { #1 } 388 | if$ 389 | } 390 | 391 | FUNCTION {and} 392 | { 'skip$ 393 | { pop$ #0 } 394 | if$ 395 | } 396 | 397 | FUNCTION {or} 398 | { { pop$ #1 } 399 | 'skip$ 400 | if$ 401 | } 402 | 403 | FUNCTION {new.block.checkb} 404 | { empty$ 405 | swap$ empty$ 406 | and 407 | 'skip$ 408 | 'new.block 409 | if$ 410 | } 411 | 412 | FUNCTION {field.or.null} 413 | { duplicate$ empty$ 414 | { pop$ "" } 415 | 'skip$ 416 | if$ 417 | } 418 | 419 | FUNCTION {boldface} 420 | { duplicate$ empty$ 421 | { pop$ "" } 422 | { "{\bf " swap$ * "}" * } 423 | if$ 424 | } 425 | 426 | %FUNCTION {emphasize} 427 | %{ duplicate$ empty$ 428 | % { pop$ "" } 429 | % { "{\em " swap$ * "}" * } 430 | % if$ 431 | %} 432 | 433 | 434 | %%%%%%%%%%%%%%%%%%% 435 | Function{upcase} 436 | { duplicate$ empty$ 437 | { pop$ "" } 438 | { "u" change.case$ } 439 | if$ 440 | } 441 | 442 | FUNCTION {capitalize} 443 | { "u" change.case$ "t" change.case$ } 444 | 445 | FUNCTION {bib.name.font} 446 | { skip$ } 447 | FUNCTION {bib.fname.font} 448 | { bib.name.font } 449 | %%%%%%%%%%%%%%%%%%%% 450 | 451 | %%%%%%%%%%%%%%%%%%%%%%% 452 | 453 | INTEGERS { nameptr namesleft numnames } 454 | STRINGS { nameetal } 455 | 456 | % debug code, print cuurent top of the stack but not "pop" it 457 | FUNCTION {.print.top} {duplicate$ "top is: " swap$ * top$} 458 | 459 | % pops tow strings and push the formated name string. The first string it pops 460 | % is the "et al" string. The second string it pops is the name string which 461 | % need to be formated. 462 | % 463 | % This is the base function of format.names and format.cnames. You won't need 464 | % to call this function directly in most cases. 465 | FUNCTION {.format.names} 466 | { 467 | 'nameetal := 468 | 's := 469 | s num.names$ 'numnames := 470 | % debug code 471 | %"" top$ 472 | %"got name: " s * " got etal: " * nameetal * " num of names: " * numnames int.to.str$ * top$ 473 | 474 | % push the first person 475 | % There will always be at last one person, right? 476 | s #1 "{ll}{ f.}" format.name$ 477 | #2 'nameptr := 478 | numnames #1 - 'namesleft := 479 | 480 | { namesleft #0 > } 481 | { 482 | nameptr #4 = numnames #3 > and 483 | s nameptr "{ll}" format.name$ "others" = or 484 | { "others" 't := 485 | #1 'namesleft := } 486 | { s nameptr "{ll}{ f.}" format.name$ 't := } 487 | if$ 488 | 489 | t "others" = 490 | { nameetal * 't :=} 491 | { ", " * t * 't := } 492 | if$ 493 | 494 | t 495 | 496 | nameptr #1 + 'nameptr := 497 | namesleft #1 - 'namesleft := 498 | } 499 | while$ 500 | % debug code 501 | % "whole top" top$ 502 | % .print.top 503 | } 504 | 505 | FUNCTION {format.names} {", et al" .format.names} 506 | 507 | FUNCTION {format.cnames} {",等" .format.names} 508 | 509 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 510 | %不加大写的名字 511 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 512 | 513 | FUNCTION {format.normal.names} 514 | { 's := 515 | #1 'nameptr := 516 | s num.names$ 'numnames := 517 | numnames 'namesleft := 518 | { namesleft #0 > } 519 | { s nameptr "{ll}{ f.}" 520 | format.name$ 521 | remove.dots 522 | 't := 523 | nameptr #1 > 524 | { 525 | nameptr #3 526 | #1 + = 527 | numnames #3 528 | > and 529 | { "others" 't := 530 | #1 'namesleft := } 531 | 'skip$ 532 | if$ 533 | namesleft #1 > 534 | { ", " * t * } 535 | { numnames #2 > 536 | { "" * } 537 | 'skip$ 538 | if$ 539 | s nameptr "{ll}" format.name$ duplicate$ "others" = 540 | { 't := } 541 | { pop$ } 542 | if$ 543 | t "others" = 544 | { ", et al" * } 545 | {", " * t * } 546 | if$ 547 | } 548 | if$ 549 | } 550 | 't 551 | if$ 552 | nameptr #1 + 'nameptr := 553 | namesleft #1 - 'namesleft := 554 | } 555 | while$ 556 | } 557 | 558 | 559 | FUNCTION {format.normal.cnames} %wk 560 | { 's := 561 | #1 'nameptr := 562 | s num.names$ 'numnames := 563 | numnames 'namesleft := 564 | { namesleft #0 > } 565 | { s nameptr "{ll}{ f.}" format.name$ 566 | remove.dots 567 | 't := 568 | nameptr #1 > 569 | { 570 | nameptr #3 571 | #1 + = 572 | numnames #3 573 | > and 574 | { "others" 't := 575 | #1 'namesleft := } 576 | 'skip$ 577 | if$ 578 | namesleft #1 > 579 | { ", " * t * } 580 | { numnames #2 > 581 | { "" * } 582 | 'skip$ 583 | if$ 584 | s nameptr "{ll}" format.name$ duplicate$ "others" = 585 | { 't := } 586 | { pop$ } 587 | if$ 588 | t "others" = 589 | { ",等" * } 590 | {", " * t * } 591 | if$ 592 | } 593 | if$ 594 | } 595 | 't 596 | if$ 597 | nameptr #1 + 'nameptr := 598 | namesleft #1 - 'namesleft := 599 | } 600 | while$ 601 | } 602 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 603 | 604 | FUNCTION {format.authors} 605 | { author empty$ 606 | { "" } 607 | {normalauthor empty$ 608 | {author format.names } 609 | {normalauthor format.normal.names} 610 | if$ 611 | } 612 | if$ 613 | } 614 | 615 | FUNCTION {format.cauthors} %wk 616 | { author empty$ 617 | { "" } 618 | {normalauthor empty$ 619 | {author format.cnames } 620 | {normalauthor format.normal.cnames} 621 | if$ 622 | } 623 | if$ 624 | } 625 | 626 | FUNCTION {format.key} 627 | { empty$ 628 | { key field.or.null } 629 | { "" } 630 | if$ 631 | } 632 | 633 | FUNCTION {format.editors} 634 | { editor empty$ 635 | { "" } 636 | {normaleditor empty$ 637 | {editor format.names } 638 | {normaleditor format.normal.names} 639 | if$ 640 | editor num.names$ #1 > % Use ODWE abbrevs. 641 | { "" * } % to avoid 642 | { "" * } % ambiguity between 643 | if$ % "editor" and 644 | } % "edition". 645 | if$ 646 | } 647 | 648 | FUNCTION {format.ceditors} %wk 本函数 649 | { editor empty$ 650 | { "" } 651 | { 652 | normaleditor empty$ 653 | {editor * "" * format.cnames } 654 | {normaleditor * "" * format.normal.cnames} 655 | if$ 656 | } 657 | if$ 658 | } 659 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 660 | FUNCTION {format.title} % Nothing needs 661 | { title empty$ % doing here in 662 | { "" } % authordate1.bst 663 | { title } % or 664 | if$ % authordate3.bst. 665 | } 666 | 667 | FUNCTION {format.ctitle} %wk % Nothing needs 668 | { title empty$ % doing here in 669 | { "" } % authordate1.bst 670 | {title} % or 671 | if$ % authordate3.bst. 672 | } 673 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 674 | 675 | 676 | FUNCTION {format.article.title} % Nothing needs 677 | {title empty$ % doing here in 678 | { "" } % authordate1.bst 679 | { 680 | typeoflit empty$ 681 | {format.title "[J]" * title output.check} 682 | {format.title title output.check} 683 | if$ 684 | } 685 | if$ 686 | TypeofLit empty$ 687 | {""} 688 | { "[" TypeofLit * "]" * * } 689 | if$ 690 | % authordate3.bst. 691 | } 692 | 693 | 694 | FUNCTION {format.carticle.title} % Nothing needs 695 | {title empty$ % doing here in 696 | { "" } % authordate1.bst 697 | { 698 | typeoflit empty$ 699 | {format.title "[J]" * title output.check} 700 | {format.title title output.check} 701 | if$ 702 | } 703 | if$ 704 | 705 | TypeofLit empty$ 706 | {""} 707 | { "[" TypeofLit * "]" * * } 708 | if$ 709 | % authordate3.bst. 710 | } 711 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 712 | FUNCTION {format.book.title} % Nothing needs 713 | {title empty$ % doing here in 714 | { "" } % authordate1.bst 715 | { 716 | typeoflit empty$ 717 | {format.title "[M]" * title output.check} 718 | {format.title title output.check} 719 | if$ 720 | } 721 | if$ 722 | TypeofLit empty$ 723 | {""} 724 | { "[" TypeofLit * "]" * * } 725 | if$ 726 | % authordate3.bst. 727 | } 728 | 729 | 730 | FUNCTION {format.cbook.title} %wk % Nothing needs 731 | {title empty$ % doing here in 732 | { "" } % authordate1.bst 733 | { 734 | typeoflit empty$ 735 | {format.title "[M]" * title output.check} 736 | {format.title title output.check} 737 | if$ 738 | } 739 | if$ 740 | TypeofLit empty$ 741 | {""} 742 | { "[" TypeofLit * "]" * * } 743 | if$ 744 | % authordate3.bst. 745 | } 746 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 747 | FUNCTION {format.misc.title} %wk % Nothing needs 748 | { 749 | patentid empty$ 750 | {%没有专利号应该是其它类型文献,直接标准输出 751 | title empty$ % doing here in 752 | { "" } % authordate1.bst 753 | { 754 | typeoflit empty$ 755 | {format.title "[缺文献类型标志代码]." * title output.check} 756 | {format.title title output.check} 757 | if$ 758 | } 759 | if$ 760 | TypeofLit empty$ 761 | {""} 762 | { "[" TypeofLit * "]." * * } 763 | if$ 764 | } 765 | {%有专利号 766 | country empty$ 767 | { 768 | title empty$ % doing here in 769 | { "" } % authordate1.bst 770 | { 771 | typeoflit empty$ 772 | {format.title "[缺文献类型标志代码]." * title output.check} 773 | {format.title title output.check} 774 | if$ 775 | } 776 | if$ 777 | TypeofLit empty$ 778 | {""} 779 | { "[" TypeofLit * "]." * * } 780 | if$ 781 | "" patentid * "" * * 782 | } 783 | {%有专利号,有国家 784 | title empty$ % doing here in 785 | { "" } % authordate1.bst 786 | { 787 | typeoflit empty$ 788 | {format.title "[缺文献类型标志代码]." * title output.check} 789 | {format.title title output.check} 790 | if$ 791 | } 792 | if$ 793 | 794 | ":" country * "," * * 795 | "" patentid * "" * * 796 | TypeofLit empty$ 797 | {""} 798 | { "[" TypeofLit * "]." * * } 799 | if$ 800 | 801 | } 802 | if$ 803 | } 804 | if$ 805 | 806 | } 807 | 808 | 809 | FUNCTION {format.cmisc.title} %wk % Nothing needs 810 | { 811 | patentid empty$ 812 | {%没有专利号应该是其它类型文献,直接标准输出 813 | title empty$ % doing here in 814 | { "" } % authordate1.bst 815 | { 816 | typeoflit empty$ 817 | {format.title "[缺文献类型标志代码]." * title output.check} 818 | {format.title title output.check} 819 | if$ 820 | } 821 | if$ 822 | TypeofLit empty$ 823 | {""} 824 | { "[" TypeofLit * "]." * * } 825 | if$ 826 | } 827 | {%有专利号 828 | country empty$ 829 | { 830 | title empty$ % doing here in 831 | { "" } % authordate1.bst 832 | { 833 | typeoflit empty$ 834 | {format.title "[缺文献类型标志代码]." * title output.check} 835 | {format.title title output.check} 836 | if$ 837 | } 838 | if$ 839 | TypeofLit empty$ 840 | {""} 841 | { "[" TypeofLit * "]." * * } 842 | if$ 843 | "" patentid * "" * * 844 | } 845 | {%有专利号,有国家 846 | title empty$ % doing here in 847 | { "" } % authordate1.bst 848 | { 849 | typeoflit empty$ 850 | {format.title "[缺文献类型标志代码]." * title output.check} 851 | {format.title title output.check} 852 | if$ 853 | } 854 | if$ 855 | 856 | ":" country * "," * * 857 | "" patentid * "" * * 858 | TypeofLit empty$ 859 | {""} 860 | { "[" TypeofLit * "]." * * } 861 | if$ 862 | 863 | } 864 | if$ 865 | } 866 | if$ 867 | 868 | } 869 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 870 | 871 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 872 | 873 | FUNCTION {format.proceedings.title} % Nothing needs 874 | {title empty$ % doing here in 875 | { "" } % authordate1.bst 876 | { 877 | typeoflit empty$ 878 | {format.title "[C]" * title output.check} 879 | {format.title title output.check} 880 | if$ 881 | } 882 | if$ 883 | 884 | TypeofLit empty$ 885 | {""} 886 | { "[" TypeofLit * "]" * * } 887 | if$ 888 | % authordate3.bst. 889 | } 890 | 891 | 892 | FUNCTION {format.cproceedings.title} % Nothing needs 893 | {title empty$ % doing here in 894 | { "" } % authordate1.bst 895 | { 896 | typeoflit empty$ 897 | {format.title "[C]" * title output.check} 898 | {format.title title output.check} 899 | if$ 900 | } 901 | if$ 902 | 903 | TypeofLit empty$ 904 | {""} 905 | { "[" TypeofLit * "]" * * } 906 | if$ 907 | % authordate3.bst. 908 | } 909 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 910 | FUNCTION {format.incollection.title} % Nothing needs 911 | {title empty$ % doing here in 912 | { "" } % authordate1.bst 913 | { 914 | typeoflit empty$ 915 | {format.title "[M]. " * title output.check} 916 | {format.title "" * title output.check} 917 | if$ 918 | } 919 | if$ 920 | 921 | TypeofLit empty$ 922 | {""} 923 | { "[" TypeofLit * "]. " * * } 924 | if$ 925 | % authordate3.bst. 926 | } 927 | 928 | 929 | FUNCTION {format.cincollection.title} % Nothing needs 930 | {title empty$ % doing here in 931 | { "" } % authordate1.bst 932 | { 933 | typeoflit empty$ 934 | {format.title "[M]. " * title output.check} 935 | {format.title "" * title output.check} 936 | if$ 937 | } 938 | if$ 939 | 940 | TypeofLit empty$ 941 | {""} 942 | { "[" TypeofLit * "]. " * * } 943 | if$ 944 | % authordate3.bst. 945 | } 946 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% 947 | FUNCTION {format.inproceedings.title} % Nothing needs 948 | {title empty$ % doing here in 949 | { "" } % authordate1.bst 950 | { 951 | typeoflit empty$ 952 | {format.title "[A]" * title output.check} 953 | {format.title "" * title output.check} 954 | if$ 955 | } 956 | if$ 957 | 958 | TypeofLit empty$ 959 | {""} 960 | { "[" TypeofLit * "]. " * * } 961 | if$ 962 | % authordate3.bst. 963 | } 964 | 965 | 966 | FUNCTION {format.cinproceedings.title} % Nothing needs 967 | {title empty$ % doing here in 968 | { "" } % authordate1.bst 969 | { 970 | typeoflit empty$ 971 | {format.title "[A]" * title output.check} 972 | {format.title "" * title output.check} 973 | if$ 974 | } 975 | if$ 976 | 977 | TypeofLit empty$ 978 | {""} 979 | { "[" TypeofLit * "]. " * * } 980 | if$ 981 | % authordate3.bst. 982 | } 983 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%% 984 | 985 | FUNCTION {n.dashify} 986 | { 't := 987 | "" 988 | { t empty$ not } 989 | { t #1 #1 substring$ "-" = 990 | { t #1 #2 substring$ "--" = not 991 | { "--" * 992 | t #2 global.max$ substring$ 't := 993 | } 994 | { { t #1 #1 substring$ "-" = } 995 | { "-" * 996 | t #2 global.max$ substring$ 't := 997 | } 998 | while$ 999 | } 1000 | if$ 1001 | } 1002 | { t #1 #1 substring$ * 1003 | t #2 global.max$ substring$ 't := 1004 | } 1005 | if$ 1006 | } 1007 | while$ 1008 | } 1009 | 1010 | FUNCTION {format.btitle} 1011 | { title empty$ 1012 | { "" } % Don't change case 1013 | {booktitle} % in 1014 | if$ % authordate1.bst 1015 | } % or 1016 | 1017 | FUNCTION {format.ptitle} 1018 | { title empty$ 1019 | { "" } 1020 | {booktitle "[C]" * add.period$} 1021 | if$ 1022 | } 1023 | 1024 | FUNCTION {format.cbtitle} %wk % Nothing needs 1025 | { title empty$ % doing here in 1026 | { "" } % authordate1.bst 1027 | {booktitle} % or 1028 | if$ % authordate3.bst. 1029 | } 1030 | % authordate3.bst. 1031 | FUNCTION {tie.or.space.connect} 1032 | { duplicate$ text.length$ #3 < 1033 | { "~" } 1034 | { " " } 1035 | if$ 1036 | swap$ * * 1037 | } 1038 | 1039 | FUNCTION {either.or.check} 1040 | { empty$ 1041 | 'pop$ 1042 | { "can't use both " swap$ * " fields in " * cite$ * warning$ } 1043 | if$ 1044 | } 1045 | 1046 | INTEGERS { multiresult } 1047 | 1048 | FUNCTION {multi.page.check} 1049 | { 't := 1050 | #0 'multiresult := 1051 | { multiresult not 1052 | t empty$ not 1053 | and 1054 | } 1055 | { t #1 #1 substring$ 1056 | duplicate$ "-" = 1057 | swap$ duplicate$ "," = 1058 | swap$ "+" = 1059 | or or 1060 | { #1 'multiresult := } 1061 | { t #2 global.max$ substring$ 't := } 1062 | if$ 1063 | } 1064 | while$ 1065 | multiresult 1066 | } 1067 | 1068 | FUNCTION {format.numberinseries} 1069 | { number empty$ 1070 | { "" } 1071 | { number multi.page.check 1072 | { ", nos. " number n.dashify tie.or.space.connect } 1073 | { ", no. " number tie.or.space.connect } 1074 | if$ 1075 | } 1076 | if$ 1077 | } 1078 | 1079 | FUNCTION {format.cnumberinseries} %wk 1080 | { number empty$ 1081 | { "" } 1082 | { number multi.page.check 1083 | { ", 第" number n.dashify tie.or.space.connect * "期"} %wk 1084 | { ", 第" number tie.or.space.connect * "期"} %wk 1085 | if$ 1086 | } 1087 | if$ 1088 | } 1089 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1090 | FUNCTION {booklike.series.volume.number} % Chicago, pages 1091 | { series empty$ % 450-451. 1092 | { volume empty$ 1093 | { " " } 1094 | { " Vol. " volume * } 1095 | if$ 1096 | } 1097 | { 1098 | volume empty$ 1099 | { number empty$ 1100 | { series } 1101 | { series format.numberinseries * } 1102 | if$ 1103 | } 1104 | { number empty$ 1105 | { series ", vol. " volume * * } 1106 | { series ", vol. " * volume * format.numberinseries * } 1107 | if$ 1108 | } 1109 | if$ 1110 | } 1111 | if$ 1112 | } 1113 | 1114 | FUNCTION {cbooklike.series.volume.number.pages} %wk加入页码 ??? % Chicago, pages %wk 1115 | { series empty$ % 450-451. 1116 | { volume empty$ 1117 | { pages empty$ 1118 | 'skip$ 1119 | { duplicate$ empty$ 1120 | { pop$ format.pages } 1121 | { ":" * pages n.dashify * "" *} %wk 改为第页 1122 | if$ 1123 | } 1124 | if$} 1125 | { "卷" volume * } 1126 | if$ 1127 | } 1128 | { 1129 | volume empty$ 1130 | { number empty$ 1131 | { series } 1132 | { series format.numberinseries * } 1133 | if$ 1134 | } 1135 | { number empty$ 1136 | { series ",第" volume * "卷" * * } 1137 | { series "卷" * volume * format.cnumberinseries * } 1138 | if$ 1139 | } 1140 | if$ 1141 | } 1142 | if$ 1143 | } 1144 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1145 | FUNCTION {incollectionlike.series.volume.number.pages} %wk 1146 | { series empty$ 1147 | { volume empty$ 1148 | { pages empty$ 1149 | 'skip$ 1150 | { duplicate$ empty$ 1151 | { pop$ format.pages } 1152 | { ":" * pages n.dashify * "" *} %wk 改为第页 1153 | if$ 1154 | } 1155 | if$} 1156 | { "," volume * "" * * 1157 | pages empty$ 1158 | 'skip$ 1159 | { duplicate$ empty$ 1160 | { pop$ format.pages } 1161 | { ":" * pages n.dashify * "" *} %wk 改为第页 1162 | if$ 1163 | } 1164 | if$} 1165 | if$ 1166 | } 1167 | { new.block 1168 | volume empty$ 1169 | { number empty$ 1170 | { series } 1171 | { series format.numberinseries * } 1172 | if$ 1173 | } 1174 | { number empty$ 1175 | { series ", vol. " volume * * } 1176 | { series ", vol. " * volume * format.numberinseries * } 1177 | if$ 1178 | } 1179 | if$ 1180 | } 1181 | if$ 1182 | } 1183 | 1184 | FUNCTION {cincollectionlike.series.volume.number.pages} %wk 1185 | { series empty$ 1186 | { volume empty$ 1187 | { pages empty$ 1188 | 'skip$ 1189 | { duplicate$ empty$ 1190 | { pop$ format.pages } 1191 | { ":" * pages n.dashify * "" *} %wk 改为第页 1192 | if$ 1193 | } 1194 | if$} 1195 | { ",第" volume * "卷" * * 1196 | pages empty$ 1197 | 'skip$ 1198 | { duplicate$ empty$ 1199 | { pop$ format.pages } 1200 | { ":" * pages n.dashify * "" *} %wk 改为第页 1201 | if$ 1202 | } 1203 | if$} 1204 | if$ 1205 | } 1206 | { new.block 1207 | volume empty$ 1208 | { number empty$ 1209 | { series } 1210 | { series format.numberinseries * } 1211 | if$ 1212 | } 1213 | { number empty$ 1214 | { series ", vol. " volume * * } 1215 | { series ", vol. " * volume * format.numberinseries * } 1216 | if$ 1217 | } 1218 | if$ 1219 | } 1220 | if$ 1221 | } 1222 | 1223 | 1224 | FUNCTION {format.TypeofLit} %wk 完全改写 1225 | { TypeofLit empty$ 1226 | { "" } 1227 | {"[" TypeofLit * "]" *} 1228 | if$ 1229 | } 1230 | 1231 | 1232 | FUNCTION {format.edition} 1233 | { edition empty$ 1234 | { 1235 | translator empty$ 1236 | { "" } 1237 | {"" translator * ",translation" * } 1238 | if$ 1239 | } 1240 | { 1241 | translator empty$ 1242 | {edition} 1243 | {translator output 1244 | ",translation." edition * "" * *} 1245 | if$ 1246 | } 1247 | if$ 1248 | } 1249 | 1250 | 1251 | FUNCTION {format.cedition} %wk 完全改写 1252 | { edition empty$ 1253 | { 1254 | translator empty$ 1255 | { "" } 1256 | {"" translator format.cnames * ",译" *} 1257 | if$ 1258 | } 1259 | { 1260 | translator empty$ 1261 | {edition} 1262 | {translator format.cnames output 1263 | ",译." edition * "" * *} 1264 | if$ 1265 | } 1266 | if$ 1267 | } 1268 | 1269 | 1270 | 1271 | 1272 | FUNCTION {format.ctranslator} %wk 完全改写 1273 | { translator empty$ 1274 | { "" } 1275 | {format.cnames ",译" * "translator" output.check} 1276 | if$ 1277 | } 1278 | 1279 | FUNCTION {format.pages} 1280 | { pages empty$ 1281 | { "" } 1282 | { pages multi.page.check 1283 | { ":" pages n.dashify tie.or.space.connect * } 1284 | { ":" pages tie.or.space.connect * } 1285 | if$ 1286 | } 1287 | if$ 1288 | } 1289 | 1290 | FUNCTION {format.pagesinbook} % By the time the 1291 | { pages empty$ % reader has read 1292 | { "" } % address, pub'r, 1293 | { pages multi.page.check % note (where the 1294 | { ":" pages n.dashify tie.or.space.connect } % note may end with 1295 | { ":" pages tie.or.space.connect } % numbers), s/he 1296 | if$ % may not recognise 1297 | } % a number-range as 1298 | if$ % meaning pages. 1299 | } % Avoid ambiguity 1300 | % (Butcher, p.181). 1301 | 1302 | FUNCTION {format.cpagesinbook} % By the time the %wk 1303 | { pages empty$ % reader has read 1304 | { "" } % address, pub'r, 1305 | { pages multi.page.check % note (where the 1306 | { ":" * pages n.dashify tie.or.space.connect * "" } % note may end with 1307 | { ":" * "Page " pages tie.or.space.connect * ""} % numbers), s/he 1308 | if$ % may not recognise 1309 | } % a number-range as 1310 | if$ % meaning pages. 1311 | } % Avoid ambiguity 1312 | 1313 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1314 | FUNCTION {format.vol.num.date.pages} %wk 1315 | {volume empty$ %wk 被重新改过 1316 | 'skip$ %wk 被重新改过 1317 | {volume %wk 被重新改过 1318 | } %wk 被重新改过 1319 | if$ %wk 被重新改过 1320 | number empty$ %wk 被重新改过 1321 | 'skip$ %wk 被重新改过 1322 | { "(" number * ")" * * %wk 被重新改过 1323 | volume empty$ %wk 被重新改过 1324 | { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过 1325 | 'skip$ %wk 被重新改过 1326 | if$ %wk 被重新改过 1327 | } %wk 被重新改过 1328 | if$ %wk 被重新改过 1329 | pages empty$ 1330 | 'skip$ 1331 | { duplicate$ empty$ 1332 | { pop$ format.pages } 1333 | { ":" * pages n.dashify * "" *} %wk 改为第页 1334 | if$ 1335 | } 1336 | if$ 1337 | } 1338 | 1339 | 1340 | FUNCTION {format.cvol.num.date.pages} %wk 1341 | {volume empty$ %wk 被重新改过 1342 | 'skip$ %wk 被重新改过 1343 | {volume %wk 被重新改过 1344 | } %wk 被重新改过 1345 | if$ %wk 被重新改过 1346 | number empty$ %wk 被重新改过 1347 | 'skip$ %wk 被重新改过 1348 | { "(" number * ")" * * %wk 被重新改过 1349 | volume empty$ %wk 被重新改过 1350 | { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过 1351 | 'skip$ %wk 被重新改过 1352 | if$ %wk 被重新改过 1353 | } %wk 被重新改过 1354 | if$ %wk 被重新改过 1355 | pages empty$ 1356 | 'skip$ 1357 | { duplicate$ empty$ 1358 | { pop$ format.pages } 1359 | { ":" * pages n.dashify * "" *} %wk 改为第页 1360 | if$ 1361 | } 1362 | if$ 1363 | } 1364 | 1365 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1366 | FUNCTION {format.article.vol.num.date.pages} %wk 1367 | { 1368 | volume empty$ %wk 被重新改过 1369 | 'skip$ %wk 被重新改过 1370 | {volume %wk 被重新改过 1371 | } %wk 被重新改过 1372 | if$ %wk 被重新改过 1373 | number empty$ %wk 被重新改过 1374 | 'skip$ %wk 被重新改过 1375 | { "(" number * ")" * * %wk 被重新改过 1376 | volume empty$ %wk 被重新改过 1377 | { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过 1378 | 'skip$ %wk 被重新改过 1379 | if$ %wk 被重新改过 1380 | } %wk 被重新改过 1381 | if$ %wk 被重新改过 1382 | pages empty$ 1383 | 'skip$ 1384 | { duplicate$ empty$ 1385 | { pop$ format.pages } 1386 | { ":" * pages n.dashify * "" *} %wk 改为第页 1387 | if$ 1388 | } 1389 | if$ 1390 | } 1391 | 1392 | 1393 | 1394 | FUNCTION {format.carticle.vol.num.date.pages} %wk 1395 | { 1396 | volume empty$ %wk 被重新改过 1397 | 'skip$ %wk 被重新改过 1398 | {volume %wk 被重新改过 1399 | } %wk 被重新改过 1400 | if$ %wk 被重新改过 1401 | number empty$ %wk 被重新改过 1402 | 'skip$ %wk 被重新改过 1403 | { "(" number * ")" * * %wk 被重新改过 1404 | volume empty$ %wk 被重新改过 1405 | { "there's a number but no volume in " cite$ * warning$ } %wk 被重新改过 1406 | 'skip$ %wk 被重新改过 1407 | if$ %wk 被重新改过 1408 | } %wk 被重新改过 1409 | if$ %wk 被重新改过 1410 | pages empty$ 1411 | 'skip$ 1412 | { duplicate$ empty$ 1413 | { pop$ format.pages } 1414 | { ":" * pages n.dashify * "" *} %wk 改为第页 1415 | if$ 1416 | } 1417 | if$ 1418 | } 1419 | 1420 | 1421 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1422 | FUNCTION {format.book.continue.vol.num} %wk 1423 | { 1424 | startyear empty$ 1425 | 'skip$ 1426 | {"." startyear * "" * * 1427 | startvolume empty$ %wk 被重新改过 1428 | 'skip$ %wk 被重新改过 1429 | {"," startvolume * "" * *} %wk 被重新改过 1430 | if$ 1431 | %wk 被重新改过 1432 | startnumber empty$ %wk 被重新改过 1433 | 'skip$ %wk 被重新改过 1434 | { "(" startnumber * ")-" * * } %wk 被重新改过 1435 | if$ %wk 被重新改过 1436 | } %wk 被重新改过 1437 | if$ 1438 | %wk 被重新改过 1439 | endyear empty$ 1440 | 'skip$ 1441 | {"" endyear * "" * * 1442 | endvolume empty$ %wk 被重新改过 1443 | 'skip$ %wk 被重新改过 1444 | {"," endvolume * "" * *} %wk 被重新改过 1445 | if$ 1446 | %wk 被重新改过 1447 | endnumber empty$ %wk 被重新改过 1448 | 'skip$ %wk 被重新改过 1449 | { "(" endnumber * ")" * * } %wk 被重新改过 1450 | if$ %wk 被重新改过 1451 | } %wk 被重新改过 1452 | if$ 1453 | } 1454 | 1455 | 1456 | 1457 | 1458 | FUNCTION {format.cbook.continue.vol.num} %wk 1459 | { 1460 | startyear empty$ 1461 | 'skip$ 1462 | {"." startyear * "" * * 1463 | startvolume empty$ %wk 被重新改过 1464 | 'skip$ %wk 被重新改过 1465 | {"," startvolume * "" * *} %wk 被重新改过 1466 | if$ 1467 | %wk 被重新改过 1468 | startnumber empty$ %wk 被重新改过 1469 | 'skip$ %wk 被重新改过 1470 | { "(" startnumber * ")-" * * } %wk 被重新改过 1471 | if$ %wk 被重新改过 1472 | } %wk 被重新改过 1473 | if$ 1474 | %wk 被重新改过 1475 | endyear empty$ 1476 | 'skip$ 1477 | {"" endyear * "" * * 1478 | endvolume empty$ %wk 被重新改过 1479 | 'skip$ %wk 被重新改过 1480 | {"," endvolume * "" * *} %wk 被重新改过 1481 | if$ 1482 | %wk 被重新改过 1483 | endnumber empty$ %wk 被重新改过 1484 | 'skip$ %wk 被重新改过 1485 | { "(" endnumber * ")" * * } %wk 被重新改过 1486 | if$ %wk 被重新改过 1487 | } %wk 被重新改过 1488 | if$ 1489 | } 1490 | 1491 | 1492 | 1493 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1494 | FUNCTION {format.date.modifydate.citedate} %wk 1495 | { 1496 | date empty$ %wk 被重新改过 1497 | 'skip$ %wk 被重新改过 1498 | {date %wk 被重新改过 1499 | } %wk 被重新改过 1500 | if$ %wk 被重新改过 1501 | 1502 | modifydate empty$ %wk 被重新改过 1503 | 'skip$ %wk 被重新改过 1504 | { "(" modifydate * ")" * * %wk 被重新改过 1505 | date empty$ %wk 被重新改过 1506 | { "" cite$ * warning$ } %wk 被重新改过 1507 | 'skip$ %wk 被重新改过 1508 | if$ %wk 被重新改过 1509 | } %wk 被重新改过 1510 | if$ 1511 | 1512 | citedate empty$ %wk 被重新改过 1513 | 'skip$ %wk 被重新改过 1514 | { "[" citedate * "]" * * %wk 被重新改过 1515 | date empty$ %wk 被重新改过 1516 | { "" cite$ * warning$ } %wk 被重新改过 1517 | 'skip$ %wk 被重新改过 1518 | if$ %wk 被重新改过 1519 | } %wk 被重新改过 1520 | if$ 1521 | } 1522 | 1523 | 1524 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1525 | FUNCTION {format.chapter.pages.inbook} 1526 | { chapter empty$ 1527 | 'format.pagesinbook 1528 | { type empty$ 1529 | { "Chap." } 1530 | { type } 1531 | if$ 1532 | chapter tie.or.space.connect 1533 | pages empty$ 1534 | 'skip$ 1535 | { ", " * format.pagesinbook "l" change.case$ * } 1536 | if$ 1537 | } 1538 | if$ 1539 | } 1540 | 1541 | FUNCTION {format.cchapter.pages.inbook} 1542 | {chapter empty$ %wk 被重新改过 1543 | 'skip$ %wk 被重新改过 1544 | { ",第" chapter * "章" * * %wk 被重新改过 1545 | } %wk 被重新改过 1546 | if$ %wk 被重新改过 1547 | pages empty$ 1548 | 'skip$ 1549 | { duplicate$ empty$ 1550 | { pop$ format.pages } 1551 | { ":" * pages n.dashify * "" *} %wk 改为第页 1552 | if$ 1553 | } 1554 | if$ 1555 | } 1556 | 1557 | 1558 | 1559 | FUNCTION {format.chapter.pages.incoll} 1560 | { chapter empty$ 1561 | { pages empty$ 1562 | { "In " } 1563 | { "{\em " format.pagesinbook " of:} " * * } 1564 | if$ 1565 | } 1566 | { type empty$ 1567 | { "{\em Chap. " chapter * } 1568 | { "{\em " type * " " * chapter * } 1569 | if$ 1570 | pages empty$ 1571 | { " of:} " * } 1572 | { ", " * format.pagesinbook "l" change.case$ " of:} " * * } 1573 | if$ 1574 | } 1575 | if$ 1576 | } 1577 | 1578 | FUNCTION {format.cchapter.pages.incoll} %wk 1579 | { chapter empty$ 1580 | { pages empty$ 1581 | { "" } 1582 | { "第" format.pagesinbook "章" * * } 1583 | if$ 1584 | } 1585 | { type empty$ 1586 | { "第" chapter * "章" * * } 1587 | { "" type * "" * chapter * } 1588 | if$ 1589 | pages empty$ 1590 | { "" * } 1591 | { ":" * format.pagesinbook "l" change.case$ "" * * } 1592 | if$ 1593 | } 1594 | if$ 1595 | } 1596 | 1597 | FUNCTION {format.in.ed.booktitle} % Achieves effect %wk 1598 | { booktitle empty$ % shown in 16.51 1599 | { "" } % of Chicago, at 1600 | { editor empty$ % expense of not 1601 | { 1602 | format.ptitle "booktitle" output.check 1603 | } 1604 | { 1605 | normalauthor empty$ %用于正常显示 1606 | { 1607 | normaleditor empty$ %用于正常显示 1608 | {format.editors "author and editor" output.check} %用于正常显示, 1609 | {format.editors "author and normaleditor" output.check} %用于正常显示 1610 | if$ %用于正常显示 1611 | } %用于正常显示 1612 | { 1613 | normaleditor empty$ %用于正常显示 1614 | {format.editors "normalauthor and editor" output.check} %用于正常显示 1615 | {format.editors "normalauthor and normaleditor" output.check} %用于正常显示 1616 | if$ %用于正常显示 1617 | 1618 | } %用于正常显示 1619 | if$ %用于正常显示 1620 | editor format.key output 1621 | %new.block 1622 | format.ptitle "booktitle" output.check 1623 | } 1624 | if$ % 4.4 of BS 1629. 1625 | } 1626 | if$ % Don't change 1627 | } % case. 1628 | 1629 | 1630 | FUNCTION {format.in.ced.booktitle} % Achieves effect %wk 1631 | { booktitle empty$ % shown in 16.51 1632 | { "" } % of Chicago, at 1633 | { editor empty$ % expense of not 1634 | {"" * booktitle * "" * 1635 | new.block 1636 | } 1637 | {new.block 1638 | normalauthor empty$ %用于正常显示 1639 | { 1640 | normaleditor empty$ %用于正常显示 1641 | {format.ceditors "author and editor" output.check} %用于正常显示, 1642 | {format.ceditors "author and normaleditor" output.check} %用于正常显示 1643 | if$ %用于正常显示 1644 | } %用于正常显示 1645 | { 1646 | normaleditor empty$ %用于正常显示 1647 | {format.ceditors "normalauthor and editor" output.check} %用于正常显示 1648 | {format.ceditors "normalauthor and normaleditor" output.check} %用于正常显示 1649 | if$ %用于正常显示 1650 | 1651 | } %用于正常显示 1652 | if$ %用于正常显示 1653 | editor format.key output 1654 | new.block 1655 | format.cbtitle "booktitle" output.check 1656 | } 1657 | if$ % 4.4 of BS 1629. 1658 | } 1659 | if$ % Don't change 1660 | } % case. 1661 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%55 1662 | FUNCTION {format.in.proceedings.booktitle} % Achieves effect %wk 1663 | { booktitle empty$ % shown in 16.51 1664 | { "" } % of Chicago, at 1665 | {format.btitle "booktitle" output.check } 1666 | if$ % Don't change 1667 | } % case. 1668 | 1669 | 1670 | FUNCTION {format.in.cproceedings.booktitle} % Achieves effect %wk 1671 | { booktitle empty$ % shown in 16.51 1672 | { "" } % of Chicago, at 1673 | { format.cbtitle "booktitle" output.check } 1674 | if$ % 4.4 of BS 1629. 1675 | % Don't change 1676 | } 1677 | 1678 | 1679 | FUNCTION {format.thesis.type} 1680 | { type empty$ 1681 | 'skip$ 1682 | { pop$ 1683 | type % Don't change 1684 | } % case. 1685 | if$ 1686 | } 1687 | 1688 | FUNCTION {format.tr.number} 1689 | { type empty$ 1690 | { "Tech. rept." } % ODWE abbrevs. 1691 | 'type 1692 | if$ 1693 | number empty$ 1694 | { } % Whatever was 1695 | { number tie.or.space.connect } % having its case 1696 | if$ % changed, leave 1697 | } % it alone. 1698 | 1699 | FUNCTION {format.addr.pub} 1700 | { publisher empty$ 1701 | {address empty$ 1702 | { ".[S.l.]: [s.n.] " *} 1703 | { address ": [s.n.] " * } 1704 | if$ 1705 | } 1706 | { address empty$ 1707 | { ".[S.l.]: " * } 1708 | { address ": " * } 1709 | if$ 1710 | publisher * 1711 | } 1712 | 1713 | if$ 1714 | } 1715 | 1716 | FUNCTION {format.caddr.pub} 1717 | {publisher empty$ 1718 | {address empty$ 1719 | { ".[出版地不详]:[出版者不详]" *} 1720 | { address ":[出版者不详]" * } 1721 | if$ 1722 | } 1723 | { address empty$ 1724 | { ".[出版地不详]:" * } 1725 | { address ": " * } 1726 | if$ 1727 | publisher * 1728 | } 1729 | 1730 | if$ 1731 | } 1732 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1733 | FUNCTION {format.addr.institution} 1734 | { institution empty$ 1735 | {address empty$ 1736 | { ".[S.l.]: [s.n.] " *} 1737 | { address ": [s.n.] " * } 1738 | if$ 1739 | } 1740 | { address empty$ 1741 | { ".[S.l.]: " * } 1742 | { address ": " * } 1743 | if$ 1744 | institution * 1745 | } 1746 | 1747 | if$ 1748 | } 1749 | 1750 | FUNCTION {format.caddr.institution} 1751 | {institution empty$ 1752 | {address empty$ 1753 | { ".[地址不详]:[机构不详]" *} 1754 | { address ":[机构不详]" * } 1755 | if$ 1756 | } 1757 | { address empty$ 1758 | { ".[地址不详]:" * } 1759 | { address ": " * } 1760 | if$ 1761 | institution * 1762 | } 1763 | 1764 | if$ 1765 | } 1766 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1767 | FUNCTION {format.school.pub} 1768 | { school empty$ 1769 | {address empty$ 1770 | { "[S.l.]: [s.n.] " } 1771 | { address ": [s.n.] " * } 1772 | if$ 1773 | } 1774 | { address empty$ 1775 | { ".[S.l.]: " * } 1776 | { address ": " * } 1777 | if$ 1778 | school * 1779 | } 1780 | 1781 | if$ 1782 | } 1783 | 1784 | FUNCTION {format.cschool.pub} 1785 | {school empty$ 1786 | {address empty$ 1787 | { "[地址不详]:[学校不详]" } 1788 | { address ":[学校不详]" * } 1789 | if$ 1790 | } 1791 | { address empty$ 1792 | { ".[学校不详]:" * } 1793 | { address ": " * } 1794 | if$ 1795 | school * 1796 | } 1797 | 1798 | if$ 1799 | } 1800 | 1801 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1802 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1803 | FUNCTION {format.inproceedings.addr.pub} 1804 | { 1805 | TypeofLit empty$ 1806 | {publisher empty$ 1807 | {address empty$ 1808 | { ".[S.l.]: [s.n.] " } 1809 | { address ": [s.n.] " * } 1810 | if$ 1811 | } 1812 | { address empty$ 1813 | { ".[S.l.]: " * } 1814 | { address ": " * } 1815 | if$ 1816 | publisher * 1817 | } 1818 | 1819 | if$} 1820 | { "" } 1821 | if$ 1822 | } 1823 | 1824 | FUNCTION {format.cinproceedings.addr.pub} 1825 | { 1826 | TypeofLit empty$ 1827 | {publisher empty$ 1828 | {address empty$ 1829 | { ".[出版地不详]:[出版者不详]" } 1830 | { address ":[出版者不详]" * } 1831 | if$ 1832 | } 1833 | { address empty$ 1834 | { ".[出版地不详]:" * } 1835 | { address ": " * } 1836 | if$ 1837 | publisher * 1838 | } 1839 | 1840 | if$} 1841 | { ""} 1842 | if$ 1843 | 1844 | } 1845 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1846 | FUNCTION {format.misc.addr.pub} 1847 | { publisher empty$ 1848 | {address empty$ 1849 | { "" } 1850 | { address ": [s.n.] " * } 1851 | if$ 1852 | } 1853 | { address empty$ 1854 | { "[S.l.]: " * } 1855 | { address ": " * } 1856 | if$ 1857 | publisher * 1858 | } 1859 | 1860 | if$ 1861 | } 1862 | 1863 | FUNCTION {format.cmisc.addr.pub} 1864 | {publisher empty$ 1865 | {address empty$ 1866 | { "" } 1867 | { address ":[出版者不详]" * } 1868 | if$ 1869 | } 1870 | { address empty$ 1871 | { "[出版地不详]:" * } 1872 | { address ": " * } 1873 | if$ 1874 | publisher * 1875 | } 1876 | 1877 | if$ 1878 | } 1879 | 1880 | 1881 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 1882 | 1883 | 1884 | FUNCTION {format.addr.pub.org} % If there's an 1885 | { address empty$ % an organization 1886 | { "[S.l.]:" * publisher * ", for " * organization * } % and a publisher 1887 | { address ": " * publisher * ", for " * organization * } % too. 1888 | if$ 1889 | } 1890 | 1891 | FUNCTION {format.addr.inst} 1892 | { address empty$ 1893 | { institution empty$ 1894 | { "[S.l.]" } 1895 | { "[S.l.]" * institution *} 1896 | if$ 1897 | } 1898 | { institution empty$ 1899 | { "" } 1900 | { institution ", " * } 1901 | if$ 1902 | address * 1903 | } 1904 | if$ 1905 | } 1906 | 1907 | FUNCTION {format.addr.org} 1908 | { address empty$ 1909 | { organization empty$ 1910 | { "" } 1911 | { organization } 1912 | if$ 1913 | } 1914 | { organization empty$ 1915 | { "" } 1916 | { organization ", " * } 1917 | if$ 1918 | address * 1919 | } 1920 | if$ 1921 | } 1922 | 1923 | FUNCTION {format.article.crossref} 1924 | { "In " 1925 | " \cite{" * crossref * "}" * 1926 | } 1927 | 1928 | FUNCTION {format.book.crossref} 1929 | { volume empty$ 1930 | { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ 1931 | "In " 1932 | } 1933 | { " Vol." volume tie.or.space.connect 1934 | " of " * 1935 | } 1936 | if$ 1937 | "\cite{" * crossref * "}" * 1938 | } 1939 | 1940 | FUNCTION {format.incoll.inproc.crossref} 1941 | { "In " 1942 | " \cite{" * crossref * "}" * 1943 | } 1944 | 1945 | 1946 | FUNCTION {article} 1947 | {language empty$ 1948 | { output.bibitem 1949 | format.authors "author" output.check 1950 | author format.key output 1951 | new.block 1952 | format.article.title output 1953 | new.block 1954 | crossref missing$ 1955 | { journal % Don't change 1956 | "journal" output.check % case. 1957 | output.article.year.check output 1958 | format.article.vol.num.date.pages output 1959 | format.date.modifydate.citedate output 1960 | } 1961 | { format.article.crossref output.nonnull 1962 | format.pages output 1963 | } 1964 | if$ 1965 | new.block 1966 | format.url output 1967 | new.block 1968 | note output 1969 | 1970 | fin.entry 1971 | } 1972 | 1973 | %FUNCTION {carticle} %wk 本函数 1974 | { output.bibitem 1975 | format.cauthors "author" output.check 1976 | author format.key output 1977 | new.block 1978 | format.carticle.title output 1979 | new.block 1980 | crossref missing$ 1981 | {journal % Don't change %wk 1982 | "journal" output.check % case. 1983 | output.carticle.year.check output %wk 1984 | format.carticle.vol.num.date.pages output %wk 1985 | format.date.modifydate.citedate output 1986 | new.block 1987 | } 1988 | { format.article.crossref output.nonnull 1989 | format.pages output 1990 | } 1991 | if$ 1992 | new.block 1993 | format.url output 1994 | new.block 1995 | note output 1996 | fin.entry 1997 | } 1998 | if$ 1999 | } 2000 | 2001 | FUNCTION {book} 2002 | {language empty$ 2003 | { output.bibitem 2004 | author empty$ 2005 | { format.editors "author and editor" output.check 2006 | editor format.key output 2007 | } 2008 | { format.authors output.nonnull 2009 | crossref missing$ 2010 | { "author and editor" editor either.or.check } 2011 | 'skip$ 2012 | if$ 2013 | } 2014 | if$ 2015 | new.block 2016 | format.book.title output 2017 | new.block 2018 | crossref missing$ 2019 | { format.edition output 2020 | new.block 2021 | format.book.continue.vol.num ouput 2022 | booklike.series.volume.number output 2023 | new.block 2024 | format.addr.pub "publisher" output.check 2025 | output.continue.year.check ouput 2026 | format.date.modifydate.citedate output 2027 | format.pages output 2028 | } 2029 | { format.book.crossref output.nonnull 2030 | } 2031 | if$ 2032 | new.block 2033 | format.url output 2034 | new.block 2035 | note output 2036 | fin.entry 2037 | } 2038 | 2039 | %FUNCTION {cbook} %wk 2040 | { output.bibitem 2041 | author empty$ 2042 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2043 | editor format.key output 2044 | } 2045 | { format.cauthors output.nonnull 2046 | crossref missing$ 2047 | {"author and editor" editor either.or.check } 2048 | 'skip$ 2049 | if$ 2050 | } 2051 | if$ 2052 | new.block 2053 | format.cbook.title output %wk 2054 | new.block 2055 | crossref missing$ 2056 | { 2057 | format.cedition output %wk edition->cedition 2058 | new.block 2059 | format.cbook.continue.vol.num ouput 2060 | new.block 2061 | format.caddr.pub "publisher" output.check 2062 | output.continue.cyear.check ouput %wk 2063 | cbooklike.series.volume.number.pages output 2064 | format.date.modifydate.citedate output 2065 | } 2066 | { format.book.crossref output.nonnull 2067 | } 2068 | if$ 2069 | new.block 2070 | format.url output 2071 | new.block 2072 | note output 2073 | fin.entry 2074 | } 2075 | if$ 2076 | } 2077 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2078 | %未处理 2079 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2080 | FUNCTION {booklet} 2081 | {language empty$ 2082 | { output.bibitem 2083 | format.authors output 2084 | author format.key output 2085 | output.year.month.check 2086 | new.block 2087 | format.btitle "title" output.check 2088 | new.block 2089 | howpublished output 2090 | address output 2091 | output.year.check 2092 | new.block 2093 | format.url output 2094 | new.block 2095 | note output 2096 | fin.entry 2097 | } 2098 | 2099 | %FUNCTION {cbooklet} %wk 2100 | { output.bibitem 2101 | format.cauthors output %wk 2102 | author format.key output 2103 | format.btitle "title" output.check %wk 2104 | new.block 2105 | howpublished output 2106 | address output 2107 | output.cyear.month.check %wk 2108 | new.block 2109 | format.url output 2110 | new.block 2111 | note output 2112 | fin.entry 2113 | } 2114 | if$ 2115 | } 2116 | 2117 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2118 | FUNCTION {inbook} 2119 | {language empty$ 2120 | { output.bibitem 2121 | author empty$ 2122 | { format.editors "author and editor" output.check 2123 | editor format.key output 2124 | } 2125 | { format.authors output.nonnull 2126 | crossref missing$ 2127 | { "author and editor" editor either.or.check } 2128 | 'skip$ 2129 | if$ 2130 | } 2131 | if$ 2132 | new.block 2133 | format.book.title output 2134 | new.block 2135 | crossref missing$ 2136 | { format.edition output 2137 | booklike.series.volume.number output 2138 | new.block 2139 | format.addr.pub "publisher" output.check 2140 | output.year.check output 2141 | format.date.modifydate.citedate output 2142 | format.pages output 2143 | } 2144 | { format.book.crossref output.nonnull 2145 | } 2146 | if$ 2147 | new.block 2148 | format.url output 2149 | new.block 2150 | note output 2151 | fin.entry 2152 | } 2153 | 2154 | %FUNCTION {cinbook} %wk 2155 | { output.bibitem 2156 | author empty$ 2157 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2158 | editor format.key output 2159 | } 2160 | { format.cauthors output.nonnull 2161 | crossref missing$ 2162 | {"author and editor" editor either.or.check } 2163 | 'skip$ 2164 | if$ 2165 | } 2166 | if$ 2167 | new.block 2168 | format.cbook.title output %wk 2169 | new.block 2170 | crossref missing$ 2171 | { 2172 | format.cedition output %wk edition->cedition 2173 | new.block 2174 | format.caddr.pub "publisher" output.check 2175 | output.cyear.check %wk 2176 | cbooklike.series.volume.number.pages output 2177 | format.date.modifydate.citedate output 2178 | } 2179 | { format.book.crossref output.nonnull 2180 | } 2181 | if$ 2182 | new.block 2183 | format.url output 2184 | new.block 2185 | note output 2186 | fin.entry 2187 | } 2188 | if$ 2189 | } 2190 | 2191 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2192 | FUNCTION {incollection} %wk 2193 | {language empty$ 2194 | { output.bibitem 2195 | author empty$ 2196 | { format.editors "editor" output.check %wk format.editors->format.ceditors 2197 | editor format.key output } 2198 | { format.authors "author" output.check %wk 2199 | author format.key output } 2200 | if$ 2201 | new.block 2202 | format.incollection.title output 2203 | crossref missing$ % Chapter and/or 2204 | { 2205 | format.in.ed.booktitle output % page numbers can 2206 | format.edition output % come out via this %wk edition->cedition 2207 | new.block 2208 | format.addr.pub "publisher" output.check 2209 | output.year.check 2210 | incollectionlike.series.volume.number.pages output % route, too. 2211 | format.date.modifydate.citedate output 2212 | } 2213 | { format.incoll.inproc.crossref output.nonnull 2214 | new.block 2215 | } 2216 | if$ 2217 | 2218 | format.url output 2219 | new.block 2220 | note output 2221 | fin.entry 2222 | } 2223 | 2224 | %FUNCTION {cincollection} %wk 2225 | { output.bibitem 2226 | author empty$ 2227 | { format.ceditors "editor" output.check %wk format.editors->format.ceditors 2228 | editor format.key output } 2229 | { format.cauthors "author" output.check %wk 2230 | author format.key output } 2231 | if$ 2232 | new.block 2233 | format.cincollection.title output 2234 | crossref missing$ % Chapter and/or 2235 | { format.in.ced.booktitle output % page numbers can 2236 | format.cedition output % come out via this %wk edition->cedition 2237 | new.block 2238 | format.caddr.pub "publisher" output.check 2239 | output.cyear.check output 2240 | cincollectionlike.series.volume.number.pages output % route, too. 2241 | format.date.modifydate.citedate output 2242 | } 2243 | { format.incoll.inproc.crossref output.nonnull 2244 | new.block 2245 | } 2246 | if$ 2247 | new.block 2248 | format.url output 2249 | new.block 2250 | note output 2251 | fin.entry 2252 | } 2253 | if$ 2254 | } 2255 | 2256 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2257 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2258 | %图书book和 2259 | %会议录inproceedings(会议conference与inproceedings一样), 2260 | %文献类型代码[C] 2261 | %硕士学位论文mastersthesis, 2262 | %文献类型代码[D] 2263 | %博士学位论文phdthesis, 2264 | %文献类型代码[D] 2265 | %技术报告techreport的类型是一样的, 2266 | %文献类型代码[R] 2267 | % 2268 | %因此我们直接拷贝book的相关内容即可。 2269 | %原始部分可以参考authordate1.bst。 2270 | % 2271 | %利用misc作为电子文献[EB/OL]所使用的类型 2272 | %存在的问题:无法正常调用url,只能利用note来生成。 2273 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2274 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2275 | FUNCTION {inproceedings} %wk 改自incollection类型 2276 | {language empty$ 2277 | { output.bibitem 2278 | author empty$ 2279 | { format.editors "editor" output.check %wk format.editors->format.ceditors 2280 | editor format.key output } 2281 | { format.authors "author" output.check %wk 2282 | author format.key output } 2283 | if$ 2284 | new.block 2285 | format.inproceedings.title output 2286 | new.block 2287 | crossref missing$ % Chapter and/or 2288 | { 2289 | format.in.ed.booktitle output % page numbers can 2290 | new.block 2291 | format.edition output % come out via this %wk edition->cedition 2292 | format.inproceedings.addr.pub "publisher" output.check 2293 | output.year.check 2294 | incollectionlike.series.volume.number.pages output % route, too. 2295 | format.date.modifydate.citedate output 2296 | } 2297 | { format.incoll.inproc.crossref output.nonnull 2298 | new.block 2299 | } 2300 | if$ 2301 | format.url output 2302 | new.block 2303 | note output 2304 | fin.entry 2305 | } 2306 | 2307 | %FUNCTION {cinproceedings} %wk 改自incollection类型 2308 | { output.bibitem 2309 | author empty$ 2310 | { format.ceditors "editor" output.check %wk format.editors->format.ceditors 2311 | editor format.key output } 2312 | { format.cauthors "author" output.check %wk 2313 | author format.key output } 2314 | if$ 2315 | new.block 2316 | format.cinproceedings.title output 2317 | crossref missing$ % Chapter and/or 2318 | { format.in.ced.booktitle output % page numbers can 2319 | format.cedition output % come out via this %wk edition->cedition 2320 | new.block 2321 | format.cinproceedings.addr.pub "publisher" output.check 2322 | output.cyear.check 2323 | cincollectionlike.series.volume.number.pages output % route, too. 2324 | format.date.modifydate.citedate output 2325 | } 2326 | { format.incoll.inproc.crossref output.nonnull 2327 | new.block 2328 | } 2329 | if$ 2330 | new.block 2331 | format.url output 2332 | new.block 2333 | note output 2334 | fin.entry 2335 | } 2336 | if$ 2337 | } 2338 | 2339 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2340 | FUNCTION {conference} { inproceedings } 2341 | %FUNCTION {cconference} { cinproceedings } 2342 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2343 | FUNCTION {TECHREPORT} %wk 改自book类型 2344 | {language empty$ 2345 | { output.bibitem 2346 | author empty$ 2347 | { format.editors "author and editor" output.check 2348 | editor format.key output 2349 | } 2350 | { format.authors output.nonnull 2351 | crossref missing$ 2352 | { "author and editor" editor either.or.check } 2353 | 'skip$ 2354 | if$ 2355 | } 2356 | if$ 2357 | new.block 2358 | format.title "[R]" * "title" output.check 2359 | new.block 2360 | crossref missing$ 2361 | { format.edition output 2362 | booklike.series.volume.number output 2363 | new.block 2364 | format.addr.institution "publisher" output.check 2365 | output.year.check output 2366 | format.pages output 2367 | } 2368 | { format.book.crossref output.nonnull 2369 | } 2370 | if$ 2371 | new.block 2372 | format.url output 2373 | new.block 2374 | note output 2375 | fin.entry 2376 | } 2377 | 2378 | %FUNCTION {cTECHREPORT} %wk 改自book类型 2379 | { output.bibitem 2380 | author empty$ 2381 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2382 | editor format.key output 2383 | } 2384 | { format.cauthors output.nonnull 2385 | crossref missing$ 2386 | {"author and editor" editor either.or.check } 2387 | 'skip$ 2388 | if$ 2389 | } 2390 | if$ 2391 | new.block 2392 | format.ctitle "[R]" * "title" output.check %wk 2393 | new.block 2394 | crossref missing$ 2395 | { 2396 | format.cedition output %wk edition->cedition 2397 | new.block 2398 | format.caddr.institution "publisher" output.check 2399 | output.cyear.check %wk 2400 | cbooklike.series.volume.number.pages output 2401 | } 2402 | { format.book.crossref output.nonnull 2403 | } 2404 | if$ 2405 | new.block 2406 | format.url output 2407 | new.block 2408 | note output 2409 | fin.entry 2410 | } 2411 | if$ 2412 | } 2413 | 2414 | 2415 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2416 | FUNCTION {mastersthesis} %wk 改自book类型 2417 | {language empty$ 2418 | { output.bibitem 2419 | author empty$ 2420 | { format.editors "author and editor" output.check 2421 | editor format.key output 2422 | } 2423 | { format.authors output.nonnull 2424 | crossref missing$ 2425 | { "author and editor" editor either.or.check } 2426 | 'skip$ 2427 | if$ 2428 | } 2429 | if$ 2430 | new.block 2431 | format.title "[D]" * "title" output.check 2432 | new.block 2433 | crossref missing$ 2434 | { format.edition output 2435 | booklike.series.volume.number output 2436 | new.block 2437 | % format.addr.pub "publisher" output.check 2438 | format.school.pub "publisher" output.check 2439 | output.year.check output 2440 | format.pages output 2441 | } 2442 | { format.book.crossref output.nonnull 2443 | } 2444 | if$ 2445 | new.block 2446 | format.url output 2447 | new.block 2448 | note output 2449 | fin.entry 2450 | } 2451 | 2452 | %FUNCTION {cmastersthesis} %wk 改自book类型 2453 | { output.bibitem 2454 | author empty$ 2455 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2456 | editor format.key output 2457 | } 2458 | { format.cauthors output.nonnull 2459 | crossref missing$ 2460 | {"author and editor" editor either.or.check } 2461 | 'skip$ 2462 | if$ 2463 | } 2464 | if$ 2465 | new.block 2466 | format.ctitle "[D]" * "title" output.check %wk 2467 | new.block 2468 | crossref missing$ 2469 | { 2470 | format.cedition output %wk edition->cedition 2471 | new.block 2472 | % format.caddr.pub "publisher" output.check 2473 | format.cschool.pub "publisher" output.check 2474 | output.cyear.check %wk 2475 | cbooklike.series.volume.number.pages output 2476 | } 2477 | { format.book.crossref output.nonnull 2478 | } 2479 | if$ 2480 | new.block 2481 | format.url output 2482 | new.block 2483 | note output 2484 | fin.entry 2485 | } 2486 | if$ 2487 | } 2488 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2489 | FUNCTION {phdthesis} %wk 改自book类型 2490 | {language empty$ 2491 | { output.bibitem 2492 | author empty$ 2493 | { format.editors "author and editor" output.check 2494 | editor format.key output 2495 | } 2496 | { format.authors output.nonnull 2497 | crossref missing$ 2498 | { "author and editor" editor either.or.check } 2499 | 'skip$ 2500 | if$ 2501 | } 2502 | if$ 2503 | new.block 2504 | format.title "[D]" * "title" output.check 2505 | new.block 2506 | crossref missing$ 2507 | { format.edition output 2508 | booklike.series.volume.number output 2509 | new.block 2510 | % format.addr.pub "publisher" output.check 2511 | format.school.pub "publisher" output.check 2512 | output.year.check output 2513 | format.pages output 2514 | } 2515 | { format.book.crossref output.nonnull 2516 | } 2517 | if$ 2518 | new.block 2519 | format.url output 2520 | new.block 2521 | note output 2522 | fin.entry 2523 | } 2524 | 2525 | %FUNCTION {cphdthesis} %wk 改自book类型 2526 | { output.bibitem 2527 | author empty$ 2528 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2529 | editor format.key output 2530 | } 2531 | { format.cauthors output.nonnull 2532 | crossref missing$ 2533 | {"author and editor" editor either.or.check } 2534 | 'skip$ 2535 | if$ 2536 | } 2537 | if$ 2538 | new.block 2539 | format.ctitle "[D]" * "title" output.check %wk 2540 | new.block 2541 | crossref missing$ 2542 | { 2543 | format.cedition output %wk edition->cedition 2544 | new.block 2545 | % format.caddr.pub "publisher" output.check 2546 | format.cschool.pub "publisher" output.check 2547 | output.cyear.check %wk 2548 | cbooklike.series.volume.number.pages output 2549 | } 2550 | { format.book.crossref output.nonnull 2551 | } 2552 | if$ 2553 | new.block 2554 | format.url output 2555 | new.block 2556 | note output 2557 | fin.entry 2558 | } 2559 | if$ 2560 | } 2561 | 2562 | 2563 | 2564 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2565 | FUNCTION {proceedings} %改自book类型 2566 | {language empty$ 2567 | { output.bibitem 2568 | author empty$ 2569 | { format.editors "author and editor" output.check 2570 | editor format.key output 2571 | } 2572 | { format.authors output.nonnull 2573 | crossref missing$ 2574 | { "author and editor" editor either.or.check } 2575 | 'skip$ 2576 | if$ 2577 | } 2578 | if$ 2579 | new.block 2580 | format.conference.title output 2581 | new.block 2582 | crossref missing$ 2583 | { format.edition output 2584 | booklike.series.volume.number output 2585 | new.block 2586 | format.addr.pub "publisher" output.check 2587 | output.year.check output 2588 | format.date.modifydate.citedate output 2589 | format.pages output 2590 | } 2591 | { format.book.crossref output.nonnull 2592 | } 2593 | if$ 2594 | new.block 2595 | format.url output 2596 | new.block 2597 | note output 2598 | fin.entry 2599 | } 2600 | 2601 | %FUNCTION {cproceedings} %改自book类型 2602 | { output.bibitem 2603 | author empty$ 2604 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2605 | editor format.key output 2606 | } 2607 | { format.cauthors output.nonnull 2608 | crossref missing$ 2609 | {"author and editor" editor either.or.check } 2610 | 'skip$ 2611 | if$ 2612 | } 2613 | if$ 2614 | new.block 2615 | format.cconference.title output %wk 2616 | new.block 2617 | crossref missing$ 2618 | { 2619 | format.cedition output %wk edition->cedition 2620 | new.block 2621 | format.caddr.pub "publisher" output.check 2622 | output.cyear.check %wk 2623 | cbooklike.series.volume.number.pages output 2624 | format.date.modifydate.citedate output 2625 | } 2626 | { format.book.crossref output.nonnull 2627 | } 2628 | if$ 2629 | new.block 2630 | format.url output 2631 | new.block 2632 | note output 2633 | fin.entry 2634 | } 2635 | if$ 2636 | } 2637 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2638 | 2639 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2640 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2641 | FUNCTION {manual} %改自book类型 2642 | {language empty$ 2643 | { output.bibitem 2644 | author empty$ 2645 | { format.editors "author and editor" output.check 2646 | editor format.key output 2647 | } 2648 | { format.authors output.nonnull 2649 | crossref missing$ 2650 | { "author and editor" editor either.or.check } 2651 | 'skip$ 2652 | if$ 2653 | } 2654 | if$ 2655 | new.block 2656 | format.btitle "[H]" * "title" output.check 2657 | new.block 2658 | crossref missing$ 2659 | { format.edition output 2660 | booklike.series.volume.number output 2661 | new.block 2662 | format.addr.pub "publisher" output.check 2663 | output.year.check output 2664 | format.pages output 2665 | } 2666 | { format.book.crossref output.nonnull 2667 | } 2668 | if$ 2669 | new.block 2670 | format.url output 2671 | new.block 2672 | note output 2673 | fin.entry 2674 | } 2675 | 2676 | %FUNCTION {cmanual} %wk 2677 | { output.bibitem 2678 | author empty$ 2679 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2680 | editor format.key output 2681 | } 2682 | { format.cauthors output.nonnull 2683 | crossref missing$ 2684 | {"author and editor" editor either.or.check } 2685 | 'skip$ 2686 | if$ 2687 | } 2688 | if$ 2689 | new.block 2690 | format.ctitle "[H]" * "title" output.check %wk 2691 | new.block 2692 | crossref missing$ 2693 | { format.cedition output %wk edition->cedition 2694 | new.block 2695 | format.caddr.pub "publisher" output.check 2696 | output.cyear.check %wk 2697 | cbooklike.series.volume.number.pages output 2698 | } 2699 | { format.book.crossref output.nonnull 2700 | } 2701 | if$ 2702 | new.block 2703 | note output 2704 | fin.entry 2705 | } 2706 | if$ 2707 | } 2708 | 2709 | 2710 | 2711 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2712 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2713 | FUNCTION {misc} %作为非常规文献的格式,可靠性低,应该仔细检查,改自book类型 2714 | {language empty$ 2715 | { output.bibitem 2716 | author empty$ 2717 | { format.editors "author and editor" output.check 2718 | editor format.key output 2719 | } 2720 | { format.authors output.nonnull 2721 | crossref missing$ 2722 | { "author and editor" editor either.or.check } 2723 | 'skip$ 2724 | if$ 2725 | } 2726 | if$ 2727 | new.block 2728 | format.misc.title output 2729 | new.block 2730 | crossref missing$ 2731 | { format.edition output 2732 | booklike.series.volume.number output 2733 | new.block 2734 | format.misc.addr.pub "publisher" output.check 2735 | % output.year.check output 2736 | format.date.modifydate.citedate output 2737 | % format.pages output 2738 | } 2739 | { format.book.crossref output.nonnull 2740 | } 2741 | if$ 2742 | new.block 2743 | format.url output 2744 | new.block 2745 | note output 2746 | fin.entry 2747 | } 2748 | 2749 | %FUNCTION {cmisc} %作为非常规文献的格式,可靠性低,应该仔细检查,改自book类型 2750 | { output.bibitem 2751 | author empty$ 2752 | { format.ceditors "author and editor" output.check %wk format.editors->format.ceditors 2753 | editor format.key output 2754 | } 2755 | { format.cauthors output.nonnull 2756 | crossref missing$ 2757 | {"author and editor" editor either.or.check } 2758 | 'skip$ 2759 | if$ 2760 | } 2761 | if$ 2762 | new.block 2763 | format.cmisc.title output %wk 2764 | 2765 | new.block 2766 | crossref missing$ 2767 | { 2768 | format.cedition output %wk edition->cedition 2769 | new.block 2770 | format.cmisc.addr.pub "publisher" output.check 2771 | % output.cyear.check %wk 2772 | % cbooklike.series.volume.number.pages output 2773 | format.date.modifydate.citedate output 2774 | } 2775 | { format.book.crossref output.nonnull 2776 | } 2777 | if$ 2778 | new.block 2779 | format.url output 2780 | new.block 2781 | note output 2782 | fin.entry 2783 | } 2784 | if$ 2785 | } 2786 | 2787 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2788 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 2789 | 2790 | FUNCTION {unpublished} 2791 | {language empty$ 2792 | { output.bibitem 2793 | format.authors "author" output.check 2794 | author format.key output 2795 | output.year.month.check 2796 | new.block 2797 | format.btitle "title" output.check 2798 | new.block 2799 | note "note" output.check 2800 | fin.entry 2801 | } 2802 | 2803 | %FUNCTION {cunpublished} %wk 2804 | { output.bibitem 2805 | format.cauthors "author" output.check %wk 2806 | author format.key output 2807 | output.cyear.month.check %wk 2808 | new.block 2809 | format.ctitle "title" output.check %wk 2810 | new.block 2811 | note "note" output.check 2812 | fin.entry 2813 | } 2814 | if$ 2815 | } 2816 | 2817 | FUNCTION {default.type} { book } %wk 因为主要是基于book类型,因此将缺省类型由misc改为book 2818 | 2819 | MACRO {jan} {"Jan."} % ODWE, "months", & 2820 | % Chicago, p. 383. 2821 | MACRO {feb} {"Feb."} 2822 | 2823 | MACRO {mar} {"Mar."} 2824 | 2825 | MACRO {apr} {"Apr."} 2826 | 2827 | MACRO {may} {"May"} 2828 | 2829 | MACRO {jun} {"June"} 2830 | 2831 | MACRO {jul} {"July"} 2832 | 2833 | MACRO {aug} {"Aug."} 2834 | 2835 | MACRO {sep} {"Sept."} 2836 | 2837 | MACRO {oct} {"Oct."} 2838 | 2839 | MACRO {nov} {"Nov."} 2840 | 2841 | MACRO {dec} {"Dec."} 2842 | 2843 | MACRO {acmcs} {"ACM Computing Surveys"} 2844 | 2845 | MACRO {acta} {"Acta Informatica"} 2846 | 2847 | MACRO {cacm} {"Communications of the ACM"} 2848 | 2849 | MACRO {ibmjrd} {"IBM Journal of Research and Development"} 2850 | 2851 | MACRO {ibmsj} {"IBM Systems Journal"} 2852 | 2853 | MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 2854 | 2855 | MACRO {ieeetc} {"IEEE Transactions on Computers"} 2856 | 2857 | MACRO {ieeetcad} 2858 | {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 2859 | 2860 | MACRO {ipl} {"Information Processing Letters"} 2861 | 2862 | MACRO {jacm} {"Journal of the ACM"} 2863 | 2864 | MACRO {jcss} {"Journal of Computer and System Sciences"} 2865 | 2866 | MACRO {scp} {"Science of Computer Programming"} 2867 | 2868 | MACRO {sicomp} {"SIAM Journal on Computing"} 2869 | 2870 | MACRO {tocs} {"ACM Transactions on Computer Systems"} 2871 | 2872 | MACRO {tods} {"ACM Transactions on Database Systems"} 2873 | 2874 | MACRO {tog} {"ACM Transactions on Graphics"} 2875 | 2876 | MACRO {toms} {"ACM Transactions on Mathematical Software"} 2877 | 2878 | MACRO {toois} {"ACM Transactions on Office Information Systems"} 2879 | 2880 | MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 2881 | 2882 | MACRO {tcs} {"Theoretical Computer Science"} 2883 | 2884 | READ 2885 | 2886 | FUNCTION {sortify} 2887 | { purify$ 2888 | "l" change.case$ 2889 | } 2890 | 2891 | INTEGERS { len } 2892 | 2893 | FUNCTION {chop.word} 2894 | { 's := 2895 | 'len := 2896 | s #1 len substring$ = 2897 | { s len #1 + global.max$ substring$ } 2898 | 's 2899 | if$ 2900 | } 2901 | 2902 | FUNCTION {format.lab.names} %wk 2903 | { 's := 2904 | s #1 "{vv~}{ll}" format.name$ 2905 | s num.names$ duplicate$ 2906 | #2 > 2907 | { pop$ " et al." * } 2908 | { #2 < 2909 | 'skip$ 2910 | { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = 2911 | { " {\em et~al.}" * } 2912 | { " and " * s #2 "{vv~}{ll}" format.name$ * } %wk 2913 | if$ 2914 | } 2915 | if$ 2916 | } 2917 | if$ 2918 | } 2919 | 2920 | FUNCTION {format.lab.cnames} %wk 2921 | { 's := 2922 | s #1 "{vv~}{ll}" format.name$ 2923 | s num.names$ duplicate$ 2924 | #2 > 2925 | { pop$ "~等" * } 2926 | { #2 < 2927 | 'skip$ 2928 | { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = 2929 | { " {\em et~al.}" * } 2930 | { "和" * s #2 "{vv~}{ll}" format.name$ * } %wk 2931 | if$ 2932 | } 2933 | if$ 2934 | } 2935 | if$ 2936 | } 2937 | 2938 | FUNCTION {author.key.label} 2939 | { author empty$ 2940 | { key empty$ 2941 | { cite$ #1 #3 substring$ } 2942 | 'key 2943 | if$ 2944 | } 2945 | % {author format.lab.names } 2946 | {language empty$ 2947 | {author format.lab.names} 2948 | {author format.lab.cnames} 2949 | if$} 2950 | 2951 | if$ 2952 | } 2953 | 2954 | FUNCTION {author.editor.key.label} 2955 | { author empty$ 2956 | { editor empty$ 2957 | { key empty$ 2958 | { cite$ #1 #3 substring$ } 2959 | 'key 2960 | if$ 2961 | } 2962 | % { editor format.lab.names } 2963 | {language empty$ 2964 | {editor format.lab.names} 2965 | {editor format.lab.cnames} 2966 | if$} 2967 | 2968 | if$ 2969 | } 2970 | % { author format.lab.names } 2971 | {language empty$ 2972 | {author format.lab.names} 2973 | {author format.lab.cnames} 2974 | if$} 2975 | 2976 | if$ 2977 | } 2978 | 2979 | FUNCTION {editor.key.label} 2980 | { editor empty$ 2981 | { key empty$ 2982 | { cite$ #1 #3 substring$ } 2983 | 'key 2984 | if$ 2985 | } 2986 | % { editor format.lab.names } 2987 | {language empty$ 2988 | {editor format.lab.names} 2989 | {editor format.lab.cnames} 2990 | if$} 2991 | 2992 | if$ 2993 | } 2994 | 2995 | FUNCTION {author.key.organization.label} 2996 | { author empty$ 2997 | { key empty$ 2998 | { organization empty$ 2999 | { cite$ #1 #3 substring$ } 3000 | { "The " #4 organization chop.word #3 text.prefix$ } 3001 | if$ 3002 | } 3003 | 'key 3004 | if$ 3005 | } 3006 | { author format.lab.names } 3007 | if$ 3008 | } 3009 | 3010 | FUNCTION {editor.key.organization.label} 3011 | { editor empty$ 3012 | { key empty$ 3013 | { organization empty$ 3014 | { cite$ #1 #3 substring$ } 3015 | { "The " #4 organization chop.word #3 text.prefix$ } 3016 | if$ 3017 | } 3018 | 'key 3019 | if$ 3020 | } 3021 | { editor format.lab.names } 3022 | if$ 3023 | } 3024 | 3025 | FUNCTION {calc.short.authors} 3026 | { type$ "book" = 3027 | type$ "inbook" = 3028 | or 3029 | 'author.editor.key.label 3030 | { type$ "proceedings" = 3031 | 'editor.key.organization.label 3032 | { type$ "manual" = 3033 | 'author.key.organization.label 3034 | 'author.key.label 3035 | if$ 3036 | } 3037 | if$ 3038 | } 3039 | if$ 3040 | 'short.list := 3041 | } 3042 | 3043 | FUNCTION {calc.label} 3044 | { calc.short.authors 3045 | short.list 3046 | "(" 3047 | * 3048 | year duplicate$ empty$ 3049 | short.list key field.or.null = or 3050 | { pop$ ""} 3051 | 'skip$ 3052 | if$ 3053 | * ")" * 3054 | 'label := 3055 | } 3056 | 3057 | INTEGERS { seq.num } 3058 | 3059 | FUNCTION {init.seq} 3060 | { #0 'seq.num :=} 3061 | 3062 | EXECUTE {init.seq} 3063 | 3064 | FUNCTION {int.to.fix} 3065 | { "000000000" swap$ int.to.str$ * 3066 | #-1 #10 substring$ 3067 | } 3068 | 3069 | 3070 | FUNCTION {presort} 3071 | { calc.label 3072 | label sortify 3073 | " " 3074 | * 3075 | seq.num #1 + 'seq.num := 3076 | seq.num int.to.fix 3077 | 'sort.label := 3078 | sort.label * 3079 | #1 entry.max$ substring$ 3080 | 'sort.key$ := 3081 | } 3082 | 3083 | ITERATE {presort} 3084 | 3085 | SORT 3086 | 3087 | STRINGS { longest.label last.label next.extra } 3088 | 3089 | INTEGERS { longest.label.width last.extra.num number.label } 3090 | 3091 | FUNCTION {initialize.longest.label} 3092 | { "" 'longest.label := 3093 | #0 int.to.chr$ 'last.label := 3094 | "" 'next.extra := 3095 | #0 'longest.label.width := 3096 | #0 'last.extra.num := 3097 | #0 'number.label := 3098 | } 3099 | 3100 | FUNCTION {forward.pass} 3101 | { last.label label = 3102 | { last.extra.num #1 + 'last.extra.num := 3103 | last.extra.num int.to.chr$ 'extra.label := 3104 | } 3105 | { "a" chr.to.int$ 'last.extra.num := 3106 | "" 'extra.label := 3107 | label 'last.label := 3108 | } 3109 | if$ 3110 | number.label #1 + 'number.label := 3111 | } 3112 | 3113 | FUNCTION {reverse.pass} 3114 | { next.extra "b" = 3115 | { "a" 'extra.label := } 3116 | 'skip$ 3117 | if$ 3118 | extra.label 'next.extra := 3119 | extra.label 3120 | duplicate$ empty$ 3121 | 'skip$ 3122 | { "{\natexlab{" swap$ * "}}" * } 3123 | if$ 3124 | 'extra.label := 3125 | label extra.label * 'label := 3126 | } 3127 | 3128 | EXECUTE {initialize.longest.label} 3129 | 3130 | ITERATE {forward.pass} 3131 | 3132 | REVERSE {reverse.pass} 3133 | 3134 | FUNCTION {bib.sort.order} 3135 | { sort.label 'sort.key$ := 3136 | } 3137 | 3138 | ITERATE {bib.sort.order} 3139 | 3140 | SORT 3141 | 3142 | FUNCTION {begin.bib} 3143 | { preamble$ empty$ 3144 | 'skip$ 3145 | { preamble$ write$ newline$ } 3146 | if$ 3147 | "\begin{thebibliography}{" number.label int.to.str$ * "}" * 3148 | write$ newline$ 3149 | "\providecommand{\natexlab}[1]{#1}" 3150 | write$ newline$ 3151 | "\providecommand{\url}[1]{\texttt{#1}}" 3152 | write$ newline$ 3153 | "\expandafter\ifx\csname urlstyle\endcsname\relax" 3154 | write$ newline$ 3155 | " \providecommand{\doi}[1]{doi: #1}\else" 3156 | write$ newline$ 3157 | " \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi" 3158 | write$ newline$ 3159 | } 3160 | 3161 | EXECUTE {begin.bib} 3162 | 3163 | EXECUTE {init.state.consts} 3164 | 3165 | ITERATE {call.type$} 3166 | 3167 | FUNCTION {end.bib} 3168 | { newline$ 3169 | "\end{thebibliography}" write$ newline$ 3170 | } 3171 | 3172 | EXECUTE {end.bib} 3173 | 3174 | -------------------------------------------------------------------------------- /buaathesis.cls: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | %%%%% 'buaathesis.cls' BEGIN 3 | 4 | %%%%%%%%%% class clarification %%%%%%%%%% 5 | % 模板声明 6 | 7 | \NeedsTeXFormat{LaTeX2e}[2007/10/19] 8 | \ProvidesClass{buaathesis} 9 | [2012/07/06 v0.8 10 | The LaTeX template for thesis of BUAA] 11 | \typeout{Document Class `buaathesis' v0.8 by BHOSC (2012/07)} 12 | 13 | %%%%%%%%%% class options %%%%%%%%%% 14 | % 模板选项 15 | 16 | % 本模板自身包含五个选项 17 | % 前四个为对应学位类型,决定不同样式 18 | % 第五个为颜色选项,用于电子版的情况 19 | \newif\ifbuaa@bachelor\buaa@bachelorfalse 20 | \newif\ifbuaa@master\buaa@mastertrue 21 | \newif\ifbuaa@engineer\buaa@engineerfalse 22 | \newif\ifbuaa@doctor\buaa@doctorfalse 23 | \newif\ifbuaa@color\buaa@colorfalse 24 | \newif\ifbuaa@twoteacher\buaa@twoteacherfalse 25 | \DeclareOption{bachelor}{\buaa@bachelortrue} 26 | \DeclareOption{master}{\buaa@mastertrue} 27 | \DeclareOption{engineer}{\buaa@engineertrue} 28 | \DeclareOption{doctor}{\buaa@doctortrue} 29 | \DeclareOption{color}{\buaa@colortrue} 30 | \DeclareOption{twoteacher}{\buaa@twoteachertrue} 31 | % 其余选项传递给ctexbook 32 | \DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}} 33 | \ProcessOptions\relax 34 | % 引用ctexbook及基本设置 35 | \LoadClass[zihao=-4,a4paper]{ctexbook}[2007/10/19] 36 | 37 | %%%%%%%%%% global package %%%%%%%%%% 38 | % 全局通用宏包 39 | 40 | \RequirePackage{ifthen} 41 | 42 | %%%%%%%%%% font %%%%%%%%%% 43 | % 数学相关和字体设置 44 | 45 | \RequirePackage{amsmath,amssymb,amsfonts,mathrsfs,bm} 46 | \RequirePackage[amsmath,thmmarks,hyperref]{ntheorem} 47 | \RequirePackage{txfonts} 48 | 49 | % 主要字体为Times New Roman和宋体 50 | % 模板某些标题需要华文行楷和32号字 51 | \setmainfont{Times New Roman} 52 | % 不需要设置CJKmainfont,ctex 宏包已经很好的处理了 53 | % 不仅设置了粗体为黑体,斜体为楷体,还兼容了winfonts和adobefonts 54 | % 直接设置反而会在只有adobefonts的情况下报错 55 | % \setCJKmainfont{宋体} 56 | \setCJKfamilyfont{hwxingkai}{STXingkai} 57 | \newcommand{\hwxingkai}{\CJKfamily{hwxingkai}} 58 | \newcommand{\xiaochuhao}{\fontsize{32pt}{\baselineskip}\selectfont} 59 | 60 | %%%%%%%%%% color %%%%%%%%%% 61 | % 颜色设置 62 | 63 | % 只用于电子版 64 | \RequirePackage{color} 65 | \definecolor{dkgreen}{rgb}{0,0.6,0} 66 | \definecolor{gray}{rgb}{0.5,0.5,0.5} 67 | \definecolor{mauve}{rgb}{0.58,0,0.82} 68 | 69 | %%%%%%%%%% page margin %%%%%%%%%% 70 | % 页面边距 71 | 72 | \RequirePackage{geometry} 73 | \newgeometry{ 74 | top=30mm, bottom=25mm, left=30mm, right=20mm, 75 | headsep=5mm, includefoot 76 | } 77 | \savegeometry{bachelorgeometry} 78 | \newgeometry{ 79 | top=25mm, bottom=25mm, left=30mm, right=20mm, 80 | headsep=5mm, headheight=10mm, footskip=10mm, 81 | } 82 | \savegeometry{mastergeometry} 83 | 84 | \ifbuaa@bachelor 85 | \loadgeometry{bachelorgeometry} 86 | \else 87 | \loadgeometry{mastergeometry} 88 | \fi 89 | 90 | %%%%%%%%%% space %%%%%%%%%% 91 | % 其他间距 92 | 93 | \renewcommand{\baselinestretch}{1.5} 94 | \setlength{\parindent}{2em} 95 | \setlength{\floatsep}{3pt plus 3pt minus 2pt} % 图形之间或图形与正文之间的距离 96 | \setlength{\abovecaptionskip}{10pt plus 1pt minus 1pt} % 图形中的图与标题之间的距离 97 | \setlength{\belowcaptionskip}{3pt plus 1pt minus 2pt} % 表格中的表与标题之间的距离 98 | 99 | %%%%%%%%%% header & footer %%%%%%%%%% 100 | % 页眉页脚 101 | 102 | \RequirePackage{fancyhdr} 103 | \fancypagestyle{frontmatter}{ 104 | \renewcommand{\headrulewidth}{0pt} 105 | \renewcommand{\footrulewidth}{0pt} 106 | \fancyhf{} 107 | \fancyfoot[C]{\thepage} 108 | } 109 | \fancypagestyle{mainmatter}{ 110 | \fancyhead{} 111 | \fancyfoot{} 112 | \ifbuaa@bachelor 113 | \fancyhead[C]{ 114 | \includegraphics[width=37bp]{figure/buaamark.eps}\hfill 115 | \raisebox{2ex}{\heiti\zihao{4}\buaa@university 毕业设计(论文)}\hfill 116 | \raisebox{2ex}{\songti\zihao{5}第\quad\thepage\quad 页} 117 | } 118 | \else 119 | \if@twoside 120 | \fancyhead[CO]{\zihao{-5}\songti 121 | \buaa@university\buaa@headdegree 学位论文\vspace{1.5mm} 122 | } 123 | \fancyhead[CE]{\zihao{-5}\songti\leftmark\vspace{1.5mm}} 124 | \else 125 | \fancyhead[C]{\zihao{-5}\songti 126 | \ifthenelse{\isodd{\value{page}}} 127 | {\buaa@university\buaa@headdegree 学位论文} 128 | {\leftmark} 129 | \vspace{1.5mm} 130 | } 131 | \fi 132 | \fancyfoot[C]{\zihao{5}\thepage} 133 | \fi 134 | 135 | \renewcommand{\headrulewidth}{0.5bp} % 页眉线宽度 136 | } 137 | 138 | \fancypagestyle{plain}{ 139 | \pagestyle{fancy} 140 | } 141 | 142 | %%%%%%%%%% title %%%%%%%%%% 143 | % 标题 144 | 145 | % 汉化 146 | \renewcommand{\contentsname}{\heiti\zihao{-2}\bfseries 目\qquad 录} 147 | \renewcommand\listfigurename{\heiti\zihao{-2}\bfseries 插\ 图\ 目\ 录} 148 | \renewcommand\listtablename{\heiti\zihao{-2}\bfseries 表\ 格\ 目\ 录} 149 | \renewcommand\bibname{参\ 考\ 文\ 献} 150 | \renewcommand{\figurename}{图} 151 | \renewcommand{\tablename}{表} 152 | 153 | % 格式 154 | \ctexset{ 155 | chapter={ 156 | format={\centering\zihao{3}\heiti}, 157 | nameformat={}, 158 | aftername={\quad}, 159 | titleformat={}, 160 | beforeskip={-.5\baselineskip}, 161 | afterskip={\baselineskip}, 162 | }, 163 | section={ 164 | aftername={\quad}, 165 | beforeskip={.5\baselineskip}, 166 | afterskip={.5\baselineskip}, 167 | }, 168 | subsection={ 169 | format={\zihao{-4}\heiti}, 170 | aftername={\quad}, 171 | beforeskip={.5\baselineskip}, 172 | afterskip={.5\baselineskip}, 173 | }, 174 | } 175 | 176 | \ifbuaa@bachelor 177 | \ctexset{ 178 | chapter={ 179 | name={,}, 180 | number={\arabic{chapter}}, 181 | }, 182 | section={ 183 | format={\zihao{-4}\heiti}, 184 | }, 185 | } 186 | \else 187 | \ctexset{ 188 | chapter={ 189 | name={第,章}, 190 | number={\chinese{chapter}}, 191 | }, 192 | section={ 193 | format={\zihao{4}\heiti}, 194 | }, 195 | } 196 | \fi 197 | 198 | %%%%%%%%%% contents %%%%%%%%%% 199 | % 目录 200 | 201 | \RequirePackage{titletoc} 202 | \ifbuaa@bachelor 203 | \titlecontents{chapter}[0pt]{\heiti\zihao{-4}}{\thecontentslabel\ }{} 204 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage} 205 | \titlecontents{section}[2em]{\vspace{0.1\baselineskip}\songti\zihao{-4}}{\thecontentslabel\ }{} 206 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage} 207 | \titlecontents{subsection}[4em]{\vspace{0.1\baselineskip}\songti\zihao{-4}}{\thecontentslabel\ }{} 208 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage} 209 | \else 210 | \titlecontents{chapter}[0pt]{\vspace{-0.25\baselineskip}\heiti\zihao{4}}{\thecontentslabel\ }{} 211 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}{\zihao{-4}\contentspage}}[\vspace{0.07\baselineskip}] 212 | \titlecontents{section}[2em]{\songti\zihao{-4}}{\thecontentslabel\ }{} 213 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}{\zihao{-4}\contentspage}}[\vspace{0.1\baselineskip}] 214 | \titlecontents{subsection}[4em]{\vspace{-0.2\baselineskip}\heiti\zihao{5}}{\thecontentslabel\ }{} 215 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}{\zihao{-4}\contentspage}}[\vspace{0.1\baselineskip}] 216 | \fi 217 | 218 | % 取消图片、表格目录中的章节空格 219 | \newcommand*{\noaddvspace}{\renewcommand*{\addvspace}[1]{}} 220 | \addtocontents{lof}{\protect\noaddvspace} 221 | \addtocontents{lot}{\protect\noaddvspace} 222 | 223 | %表目录图目录的格式设置 224 | %表目录与图目录数字前增加“表”与“图”字,并且使目录行间距与section行间距一致 225 | 226 | \titlecontents{figure}[0pt]{\vspace{0.15\baselineskip}\songti\zihao{-4}}{\makebox[3em][l]{图~\thecontentslabel\quad}}{} 227 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage}[\vspace{0.15\baselineskip}] 228 | 229 | \titlecontents{table}[0pt]{\vspace{0.15\baselineskip}\songti\zihao{-4}}{\makebox[3em][l]{表~\thecontentslabel\quad}}{} 230 | {\hspace{.5em}\titlerule*[4pt]{$\cdot$}\contentspage}[\vspace{0.15\baselineskip}] 231 | 232 | %%%%%%%%%% cross reference %%%%%%%%%% 233 | % 交叉引用 234 | 235 | \RequirePackage[xetex,unicode]{hyperref} 236 | \ifbuaa@color 237 | \hypersetup{colorlinks} 238 | \else 239 | \hypersetup{hidelinks} 240 | \fi 241 | \hypersetup{ 242 | bookmarksnumbered, 243 | bookmarksopen, 244 | pdftitle={BUAA thesis}, 245 | pdfauthor={BHOSC}, 246 | pdfsubject={北航毕业设计论文}, 247 | pdfcreator={LaTeXed~By~BHOSC} 248 | } 249 | 250 | %%%%%%%%%% reference %%%%%%%%%% 251 | % 参考文献 252 | 253 | \bibliographystyle{buaathesis} % 参考文献格式 254 | \RequirePackage[sort&compress]{natbib} 255 | \bibpunct{[}{]}{,}{n}{}{} 256 | \setlength{\bibsep}{0pt} 257 | \newcommand{\upcite}[1]{\textsuperscript{\cite{#1}}} 258 | 259 | %%%%%%%%%% table %%%%%%%%%% 260 | % 表格 261 | 262 | % 设置三线表格的上下边为粗实线 263 | \RequirePackage{booktabs} 264 | 265 | % 长表格 266 | \RequirePackage{longtable} 267 | 268 | % 表格中的行合并 269 | \RequirePackage{multirow} 270 | 271 | % 重定义table/tabular/tabularx环境,使表格内为5号字 272 | % TODO(huxuan): 支持 longtable 273 | \let\oldtable\table 274 | \let\endoldtable\endtable 275 | \renewenvironment{table}[1][h!] 276 | {\renewcommand{\arraystretch}{1.5} 277 | \oldtable[#1]\zihao{5}} 278 | {\renewcommand{\arraystretch}{1} 279 | \endoldtable} 280 | 281 | \let\oldtabular\tabular 282 | \let\endoldtabular\endtabular 283 | \renewenvironment{tabular}[1][h!] 284 | {\renewcommand{\arraystretch}{1.5} 285 | \oldtabular[#1]\zihao{5}} 286 | {\renewcommand{\arraystretch}{1} 287 | \endoldtabular} 288 | 289 | \RequirePackage{tabularx} 290 | \let\oldtabularx\tabularx 291 | \let\endoldtabularx\endtabularx 292 | \renewenvironment{tabularx}[2] 293 | {\renewcommand{\arraystretch}{1.5} 294 | \zihao{5}\oldtabularx{#1}{#2}} 295 | {\renewcommand{\arraystretch}{1} 296 | \endoldtabularx} 297 | 298 | 299 | \RequirePackage{array} 300 | 301 | %%%%%%%%%% picture %%%%%%%%%% 302 | % 图片 303 | 304 | \RequirePackage{graphicx} 305 | \DeclareGraphicsExtensions{.eps,.ps,.jpg,.bmp} 306 | \graphicspath{{figure/}} 307 | \RequirePackage{pifont} % “秘级”后的五角星 308 | \RequirePackage{subfigure} 309 | 310 | %%%%%%%%%% list %%%%%%%%%% 311 | % 列表 312 | 313 | \RequirePackage{enumitem} 314 | \setlist{noitemsep} 315 | \setlist[1,2]{labelindent=\parindent} 316 | \setlist[enumerate,1]{label=\arabic*、} 317 | \setlist[enumerate,2]{label=(\arabic*)} 318 | \setlist{ 319 | topsep=0pt, 320 | itemsep=0pt, 321 | partopsep=0pt, 322 | parsep=\parskip, 323 | } 324 | 325 | %%%%%%%%%% code %%%%%%%%%% 326 | % 代码 327 | 328 | % Listing 的设置请参考 http://en.wikibooks.org/wiki/LaTeX/Packages/Listings 329 | \RequirePackage{listings} 330 | \lstset{ 331 | backgroundcolor=\color{white}, 332 | basicstyle=\zihao{5}\ttfamily, 333 | columns=flexible, 334 | breakatwhitespace=false, 335 | breaklines=true, 336 | captionpos=b, 337 | frame=single, 338 | numbers=left, 339 | numbersep=5pt, 340 | showspaces=false, 341 | showstringspaces=false, 342 | showtabs=false, 343 | stepnumber=1, 344 | rulecolor=\color{black}, 345 | tabsize=2, 346 | texcl=true, 347 | title=\lstname, 348 | escapeinside={\%*}{*)}, 349 | extendedchars=false, 350 | mathescape=true, 351 | xleftmargin=3em, 352 | xrightmargin=3em, 353 | } 354 | \ifbuaa@color 355 | \lstset{ 356 | numberstyle=\color{gray}, 357 | keywordstyle=\color{blue}, 358 | commentstyle=\color{dkgreen}, 359 | stringstyle=\color{mauve}, 360 | } 361 | \else 362 | \lstset{ 363 | numberstyle=\color{black}, 364 | keywordstyle=\color{black}, 365 | commentstyle=\color{black}, 366 | stringstyle=\color{black}, 367 | } 368 | \fi 369 | 370 | % 重命名Listings标题头 371 | \renewcommand{\lstlistingname}{代码} 372 | 373 | %%%%%%%%%% theorem %%%%%%%%%% 374 | % 定理 375 | 376 | \theoremsymbol{\ensuremath{\square}} 377 | \newtheorem*{proof}{证明} 378 | \theoremstyle{plain} 379 | \theoremsymbol{} 380 | \theoremseparator{:} 381 | \newtheorem{assumption}{假设}[chapter] 382 | \newtheorem{definition}{定义}[chapter] 383 | \newtheorem{proposition}{命题}[chapter] 384 | \newtheorem{lemma}{引理}[chapter] 385 | \newtheorem{theorem}{定理}[chapter] 386 | \newtheorem{axiom}{公理}[chapter] 387 | \newtheorem{corollary}{推论}[chapter] 388 | \newtheorem{exercise}{练习}[chapter] 389 | \newtheorem{example}{例}[chapter] 390 | \newtheorem{remark}{注释}[chapter] 391 | \newtheorem{problem}{问题}[chapter] 392 | \newtheorem{conjecture}{猜想}[chapter] 393 | 394 | %%%%%%%%%% file directory %%%%%%%%%% 395 | % 文件目录 396 | 397 | \RequirePackage{dirtree} 398 | \ifbuaa@color 399 | \renewcommand*\DTstylecomment{\ttfamily\color{dkgreen}} 400 | \renewcommand*\DTstyle{\ttfamily\color{red}} 401 | \fi 402 | 403 | %%%%%%%%%% caption %%%%%%%%%% 404 | % 图表标题 405 | 406 | \RequirePackage{caption} 407 | \DeclareCaptionFormat{bachelorfigure}{\songti\zihao{5}{#1\textrm{#2}#3}} 408 | \DeclareCaptionFormat{bachelortable}{\heiti\bf\zihao{5}{#1\textrm{#2}#3}} 409 | \DeclareCaptionFormat{bachelorlstlisting}{\songti\bf\zihao{5}{#1\textrm{#2}#3}} 410 | \DeclareCaptionFormat{masterfigure}{\bf\songti\zihao{5}{#1\textrm{#2}#3}} 411 | \DeclareCaptionFormat{mastertable}{\bf\songti\zihao{5}{#1\textrm{#2}#3}} 412 | \DeclareCaptionFormat{masterlstlisting}{\bf\songti\zihao{5}{#1\textrm{#2}#3}} 413 | \ifbuaa@bachelor 414 | \captionsetup[figure]{format=bachelorfigure,labelsep=quad} 415 | \captionsetup[table]{format=bachelortable,labelsep=quad} 416 | \captionsetup[lstlisting]{format=bachelorlstlisting,labelsep=quad} 417 | \renewcommand{\thefigure}{\arabic{chapter}.\arabic{figure}} 418 | \renewcommand{\thetable}{\arabic{chapter}.\arabic{table}} 419 | \renewcommand{\theequation}{\arabic{chapter}.\arabic{equation}} 420 | \else 421 | \RequirePackage{remreset} 422 | \@removefromreset{table}{chapter} 423 | \@removefromreset{figure}{chapter} 424 | %使图表的标号与章节无关 425 | \captionsetup[figure]{format=masterfigure,labelsep=quad} 426 | \captionsetup[table]{format=mastertable,labelsep=quad} 427 | \captionsetup[lstlisting]{format=masterlstlisting,labelsep=quad} 428 | \renewcommand{\thefigure}{\arabic{figure}} 429 | \renewcommand{\thetable}{\arabic{table}} 430 | \renewcommand{\theequation}{\arabic{chapter}.\arabic{equation}} 431 | \fi 432 | 433 | % Fix subfigure reference bug 434 | \let\p@subfigure=\thefigure 435 | 436 | % 图片表格标题命令,主要用于混排 437 | \newcommand\figcaption{\def\@captype{figure}\caption} 438 | \newcommand\tabcaption{\def\@captype{table}\caption} 439 | 440 | %%%%%%%%%% other settings %%%%%%%%%% 441 | % 杂项 442 | 443 | % 设置<附录>的图表编号与当前附录章号关联 444 | \newcommand{\rmrelation}{ 445 | % 图、表、公式编号随 chapter 清零 446 | \@addtoreset{figure}{chapter} 447 | \@addtoreset{table}{chapter} 448 | \@addtoreset{equation}{chapter} 449 | %图、表、公式编号章节关联 450 | \renewcommand{\thefigure}{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@figure} 451 | \renewcommand{\thetable}{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@table} 452 | \renewcommand{\theequation}{\ifnum \c@chapter>\z@ \thechapter.\fi \@arabic\c@equation} 453 | } 454 | 455 | \let\oldappendix\appendix 456 | \renewcommand{\appendix}{ 457 | \oldappendix\rmrelation 458 | } 459 | 460 | 461 | % 下划线 462 | \RequirePackage{ulem} 463 | 464 | % 设置行距 465 | \RequirePackage{setspace} 466 | 467 | % 正文前的页码设置位大写罗马数字 468 | \renewcommand{\frontmatter}{ 469 | \cleardoublepage 470 | \@mainmatterfalse 471 | \ifbuaa@bachelor 472 | \pagenumbering{Roman} 473 | \else 474 | \pagenumbering{roman} 475 | \fi 476 | } 477 | 478 | % 保证偶数页结束章节 479 | \newcommand{\clearemptydoublepage}{% 480 | \clearpage 481 | \if@twoside 482 | \ifodd 483 | \c@page 484 | \else 485 | \hbox{}\thispagestyle{empty}\newpage 486 | \if@twocolumn 487 | \hbox{}\newpage 488 | \fi 489 | \fi 490 | \fi 491 | } 492 | 493 | %%%%%%%%%% index %%%%%%%%%% 494 | % 首页 495 | 496 | % 本科生首页的右上角和底部的填写内容居中 497 | % cvrtc : CoVer - Right - Top - Center 498 | % cvcbc : CoVer - Center - Bottom - Center 499 | \newcommand{\ulinecvrtc}[1]{\uline{\makebox[9em][c]{\bf #1}}} 500 | \newcommand{\ulinecvcbc}[1]{\uline{\makebox[14em][c]{#1}}} 501 | 502 | % 中文首页 503 | \newcommand{\titlech}{ 504 | \ifbuaa@bachelor 505 | \begin{titlepage} 506 | % 第二个()里的参数表示左移35pt,下移55pt 507 | \begin{picture}(0,0)(35,55) 508 | \includegraphics[width=90pt]{figure/buaamark.eps} 509 | \end{picture} 510 | \hfill 511 | \raisebox{-.2cm}[0pt][0pt]{ 512 | \zihao{5}\heiti 513 | \begin{tabular}{c} 514 | 单位代码~\ulinecvrtc{\bf\buaa@unicode}\\[.1ex] 515 | 学\qquad 号~\ulinecvrtc{\bf\buaa@studentID}\\[.1ex] 516 | 分~~类~~号~\ulinecvrtc{\bf\buaa@category}\\ 517 | \end{tabular} 518 | } 519 | \vskip 95bp 520 | \begin{center} 521 | \includegraphics[width=360bp]{figure/buaaname.eps} 522 | \vskip 45bp 523 | \centerline{\zihao{-0}\heiti 毕业设计(论文)} 524 | ~~\\ 525 | \vspace*{\stretch{4}} 526 | \begin{minipage}[h]{.8\textwidth} 527 | \centering{\heiti\zihao{2}\buaa@thesistitle} 528 | \end{minipage} 529 | \vskip 20bp 530 | \begin{minipage}[h]{.75\textwidth} 531 | \centering{\heiti\zihao{3}\buaa@thesissubtitle} 532 | \end{minipage} 533 | \vspace*{\stretch{3}} 534 | ~~\\ 535 | { 536 | \zihao{-3}\heiti 537 | \ifbuaa@twoteacher 538 | \begin{tabular}{cc} 539 | 学~~~院~~~名~~~称~~&\ulinecvcbc{\buaa@school 学院}\\[.4ex] 540 | 专~~~业~~~名~~~称~~&\ulinecvcbc{\buaa@major 专业}\\[.4ex] 541 | 学~~~生~~~姓~~~名~~&\ulinecvcbc{\buaa@thesisauthor}\\[.4ex] 542 | 指~~~导~~~教~~~师~~&\ulinecvcbc{\buaa@teacher \quad \buaa@subteacher}\\ 543 | \end{tabular} 544 | \else 545 | \begin{tabular}{cc} 546 | 学~~~院~~~名~~~称~~&\ulinecvcbc{\buaa@school 学院}\\[.4ex] 547 | 专~~~业~~~名~~~称~~&\ulinecvcbc{\buaa@major 专业}\\[.4ex] 548 | 学~~~生~~~姓~~~名~~&\ulinecvcbc{\buaa@thesisauthor}\\[.4ex] 549 | 指~~~导~~~教~~~师~~&\ulinecvcbc{\buaa@teacher}\\ 550 | \end{tabular} 551 | \fi 552 | } 553 | \vskip 60bp 554 | \centerline{\heiti\zihao{-3}\buaa@thesisdateyear ~~年~~\buaa@thesisdatemonth ~~月} 555 | \end{center} 556 | \end{titlepage} 557 | \else 558 | \begin{titlepage} 559 | \begin{center} 560 | \begin{spacing}{1.5} 561 | { 562 | \zihao{5}\heiti 563 | \begin{flushleft} 564 | 中图分类号:\buaa@category \\ 565 | %中图分类号:\buaa@category\hfill 密级\ding{73}~~\buaa@mibao \\ % 保密论文时用此行代码替换上行代码即可 566 | 论\,\,文\,\,编\,\,号:\buaa@thesisID\\ 567 | \end{flushleft} 568 | } 569 | \vskip 80bp 570 | \includegraphics[width=.5\textwidth]{figure/buaaname.jpg} 571 | \vskip 30bp 572 | \centerline{\zihao{0}\ziju{0.2}\hwxingkai\buaa@degree 论文} 573 | ~~\\ 574 | %\vskip 100bp 575 | \vspace*{\stretch{5}} 576 | \begin{minipage}[h]{.85\textwidth} 577 | \begin{spacing}{3} 578 | % actually, it should be 1.5, but I think 3 will be prefect. 579 | \centering{\xiaochuhao\songti \buaa@thesistitle} 580 | \end{spacing} 581 | \end{minipage} 582 | %\vspace{5bp} 583 | % the space between title and subtitle, however, it seems doesn't work. 584 | \begin{minipage}[h]{.75\textwidth} 585 | \begin{spacing}{1.5} 586 | \centering{\heiti\zihao{3}\buaa@thesissubtitle} 587 | \end{spacing} 588 | \end{minipage} 589 | \vspace*{\stretch{4}} 590 | ~~\\ 591 | %\vskip 80bp 592 | { 593 | \heiti\zihao{4}\ziju{0.2} 594 | \ifbuaa@twoteacher 595 | \begin{tabular}[b]{ll} 596 | 作~~者~~姓~~名~~ & \buaa@thesisauthor\\[.3ex] 597 | 学~~科~~专~~业~~ & \buaa@major\\[.3ex] 598 | 指~~导~~教~~师~~ & \buaa@teacher\quad\buaa@teacherdegree\\[.3ex] 599 | ~~ & \buaa@subteacher\quad\buaa@subteacherdegree\\[.3ex] 600 | 培~~养~~院~~系~~ & \buaa@school 学院\\ 601 | \end{tabular} 602 | \else 603 | \begin{tabular}[b]{ll} 604 | 作~~者~~姓~~名~~ & \buaa@thesisauthor\\[.4ex] 605 | 学~~科~~专~~业~~ & \buaa@major\\[.4ex] 606 | 指~~导~~教~~师~~ & \buaa@teacher \quad\buaa@teacherdegree\\[.4ex] 607 | 培~~养~~院~~系~~ & \buaa@school 学院\\ 608 | \end{tabular} 609 | \fi 610 | } 611 | \end{spacing} 612 | \end{center} 613 | \end{titlepage} 614 | \fi 615 | } 616 | 617 | % 英文首页 618 | \newcommand{\titleeng}{ 619 | \clearemptydoublepage 620 | \thispagestyle{empty} 621 | \vspace*{\stretch{1}} 622 | \begin{center} 623 | \begin{minipage}[h]{.8\textwidth} 624 | \begin{spacing}{2} 625 | \centering{\zihao{-2}\textbf{\buaa@thesistitleeng}} 626 | \end{spacing} 627 | \end{minipage} 628 | \vskip 20bp 629 | \begin{minipage}[h]{.75\textwidth} 630 | \centering{\zihao{-3}\buaa@thesissubtitleeng} 631 | \end{minipage} 632 | \vspace*{\stretch{1}} 633 | ~~\\ 634 | {\zihao{4}A Dissertation Submitted for the Degree of \buaa@degreeeng}\\ 635 | \vskip 110bp 636 | \begin{center} 637 | \zihao{-3} 638 | \ifbuaa@twoteacher 639 | \begin{tabular}{rl} 640 | \textbf{Candidate:\ }&\textbf{\buaa@thesisauthoreng}\\[0.5ex] 641 | \textbf{Supervisor:\ }&\textbf{\buaa@teacherdegreeeng ~~\buaa@teachereng}\\ 642 | ~~ & \textbf{\buaa@subteacherdegreeeng ~~\buaa@subteachereng}\\ 643 | \end{tabular} 644 | \else 645 | \begin{tabular}{rl} 646 | \textbf{Candidate:\ }&\textbf{\buaa@thesisauthoreng}\\[0.5ex] 647 | \textbf{Supervisor:\ }&\textbf{\buaa@teacherdegreeeng ~~\buaa@teachereng}\\ 648 | \end{tabular} 649 | \fi 650 | \end{center} 651 | \vskip 125bp 652 | \zihao{3}{ 653 | \buaa@schooleng \\[1.8ex] 654 | \buaa@universityeng , Beijing, China} 655 | \end{center} 656 | } 657 | 658 | %%%%%%%%%% abstract %%%%%%%%%% 659 | % 摘要 660 | 661 | % 中文摘要 662 | \newenvironment{cabstract}{% 663 | \newpage 664 | \vspace*{2bp} 665 | \ifbuaa@bachelor 666 | \begin{center} 667 | \begin{minipage}[h]{.75\textwidth} 668 | \centering{\zihao{3}\heiti\buaa@thesistitle} 669 | \end{minipage} 670 | \begin{minipage}[h]{.8\textwidth} 671 | \begin{flushright} 672 | {\zihao{3}\heiti\buaa@thesissubtitle} 673 | \end{flushright} 674 | % subtitle should be flush right? 675 | \end{minipage} 676 | \end{center} 677 | %\vskip 10bp 678 | \begin{flushright} 679 | \ifbuaa@twoteacher 680 | {\begin{tabular}{cl} 681 | 学\qquad 生:&\buaa@thesisauthor\\ 682 | 指导教师:&\buaa@teacher\\ 683 | ~~ & \buaa@subteacher\\ 684 | % I don't know is this corrent and properly. 685 | \end{tabular}} 686 | \else 687 | {\begin{tabular}{cl} 688 | 学\qquad 生:&\buaa@thesisauthor\\ 689 | 指导教师:&\buaa@teacher\\ 690 | \end{tabular}} 691 | \fi 692 | \end{flushright} 693 | \fi 694 | \centerline{\heiti\zihao{3} 摘~~~~要} 695 | \ifbuaa@bachelor 696 | \vskip 10bp 697 | \par 698 | \else 699 | \vspace{5ex} 700 | \fi 701 | \setlength{\parindent}{24bp} 702 | }{% 703 | \vskip 21bp 704 | \ifbuaa@bachelor 705 | \noindent 706 | \fi 707 | {\heiti\zihao{-4} 关键词:}\buaa@ckeyword 708 | } 709 | 710 | % 英文摘要 711 | \newenvironment{eabstract}{% 712 | \newpage 713 | \vspace*{2bp} 714 | \ifbuaa@bachelor 715 | \begin{center} 716 | \begin{minipage}[h]{.75\textwidth} 717 | \centering{\bf\zihao{3}\buaa@thesistitleeng} 718 | \end{minipage} 719 | \begin{minipage}[h]{.8\textwidth} 720 | \begin{flushright} 721 | {\zihao{3}\heiti\buaa@thesissubtitleeng} 722 | \end{flushright} 723 | % subtitle should be flushright? 724 | \end{minipage} 725 | \end{center} 726 | \vskip 10bp 727 | \begin{flushright} 728 | \ifbuaa@twoteacher 729 | {\begin{tabular}{rl} 730 | Author:\ &\buaa@thesisauthoreng\\ 731 | Tutor:\ &\buaa@teachereng\\ 732 | ~~ & \buaa@subteachereng\\ 733 | \end{tabular}} 734 | \else 735 | {\begin{tabular}{rl} 736 | Author:\ &\buaa@thesisauthoreng\\ 737 | Tutor:\ &\buaa@teachereng\\ 738 | \end{tabular}} 739 | \fi 740 | \end{flushright} 741 | \fi 742 | \centerline{\bf\zihao{3} Abstract} 743 | \ifbuaa@bachelor 744 | \vskip 10bp 745 | \par 746 | \else 747 | \vspace{5ex} 748 | \fi 749 | \setlength{\parindent}{24bp} 750 | }{% 751 | \vskip 21bp 752 | \ifbuaa@bachelor 753 | \noindent 754 | \fi 755 | {\bf\zihao{-4} Key words: }\buaa@ekeyword 756 | } 757 | 758 | %%%%%%%%%% announce %%%%%%%%%% 759 | % 本科生声明页 760 | 761 | \newcommand{\announce}{% 762 | \clearemptydoublepage 763 | \thispagestyle{empty} 764 | \vspace*{54bp} 765 | \centerline{\bf\zihao{-2}\songti 本人声明} 766 | \vskip 27bp 767 | \zihao{4}我声明,本论文及其研究工作是由本人在导师指导下独立完成的,在完成论文时所利用的一 768 | 切资料均已在参考文献中列出。\par 769 | \vskip 63bp 770 | \zihao{-4} 771 | \hfill 772 | \begin{tabular}{cl} 773 | 作者:&\buaa@thesisauthor\\ 774 | 签字:&~~~~\\ 775 | 时间:& \buaa@thesisdateyear~年~\buaa@thesisdatemonth ~月 776 | \end{tabular} 777 | } 778 | 779 | %%%%%%%%%% assign %%%%%%%%%% 780 | % 本科生任务书 781 | 782 | % 文字左对齐的下划线 783 | \newcommand{\ulinel}[2][]{\uline{\makebox[#1\textwidth][l]{#2}}} 784 | % 文字居中的下划线 785 | \newcommand{\ulinec}[2][]{\uline{\makebox[#1\textwidth][c]{#2}}} 786 | % 任务书条目序号 787 | \newcounter{assign} 788 | % 原始资料及设计要求 789 | \def\buaa@bachelor@assign@req@one{} 790 | \def\buaa@bachelor@assign@req@two{} 791 | \def\buaa@bachelor@assign@req@three{} 792 | \def\buaa@bachelor@assign@req@four{} 793 | \def\buaa@bachelor@assign@req@five{} 794 | \newcommand{\assignReq}[5]{ 795 | \def\buaa@bachelor@assign@req@one{#1} 796 | \def\buaa@bachelor@assign@req@two{#2} 797 | \def\buaa@bachelor@assign@req@three{#3} 798 | \def\buaa@bachelor@assign@req@four{#4} 799 | \def\buaa@bachelor@assign@req@five{#5} 800 | } 801 | % 工作内容 802 | \def\buaa@bachelor@assign@work@one{} 803 | \def\buaa@bachelor@assign@work@two{} 804 | \def\buaa@bachelor@assign@work@three{} 805 | \def\buaa@bachelor@assign@work@four{} 806 | \def\buaa@bachelor@assign@work@five{} 807 | \def\buaa@bachelor@assign@work@six{} 808 | \newcommand{\assignWork}[6]{ 809 | \def\buaa@bachelor@assign@work@one{#1} 810 | \def\buaa@bachelor@assign@work@two{#2} 811 | \def\buaa@bachelor@assign@work@three{#3} 812 | \def\buaa@bachelor@assign@work@four{#4} 813 | \def\buaa@bachelor@assign@work@five{#5} 814 | \def\buaa@bachelor@assign@work@six{#6} 815 | } 816 | % 参考文献 817 | \def\buaa@bachelor@assign@ref@one{} 818 | \def\buaa@bachelor@assign@ref@two{} 819 | \def\buaa@bachelor@assign@ref@three{} 820 | \def\buaa@bachelor@assign@ref@four{} 821 | \def\buaa@bachelor@assign@ref@five{} 822 | \def\buaa@bachelor@assign@ref@six{} 823 | \def\buaa@bachelor@assign@ref@seven{} 824 | \def\buaa@bachelor@assign@ref@eight{} 825 | \newcommand{\assignRef}[8]{ 826 | \def\buaa@bachelor@assign@ref@one{#1} 827 | \def\buaa@bachelor@assign@ref@two{#2} 828 | \def\buaa@bachelor@assign@ref@three{#3} 829 | \def\buaa@bachelor@assign@ref@four{#4} 830 | \def\buaa@bachelor@assign@ref@five{#5} 831 | \def\buaa@bachelor@assign@ref@six{#6} 832 | \def\buaa@bachelor@assign@ref@seven{#7} 833 | \def\buaa@bachelor@assign@ref@eight{#8} 834 | } 835 | % 任务书 836 | \def\buaa@bachelor@assign{ 837 | \newpage 838 | \thispagestyle{empty} 839 | \parindent=0pt 840 | \songti 841 | { 842 | \zihao{2} 843 | { 844 | \renewcommand{\CJKglue}{\hskip 1pt} 845 | \centerline{\hwxingkai{北京航空航天大学}} 846 | } 847 | { 848 | \renewcommand{\CJKglue}{\hskip 1.2pt} 849 | \centerline{本科生毕业设计(论文)任务书} 850 | } 851 | } 852 | { 853 | \linespread{2} 854 | \zihao{4} 855 | \stepcounter{assign} 856 | \Roman{assign}、毕业设计(论文)题目: \\[2.5ex] 857 | \ulinel{\buaa@thesistitle} 858 | \ulinel{\buaa@thesissubtitle} 859 | \ulinel{} 860 | \stepcounter{assign} 861 | \Roman{assign}、毕业设计(论文)使用的原始资料(数据)及设计技术要求: \\[2.5ex] 862 | \ulinel{\buaa@bachelor@assign@req@one} 863 | \ulinel{\buaa@bachelor@assign@req@two} 864 | \ulinel{\buaa@bachelor@assign@req@three} 865 | \ulinel{\buaa@bachelor@assign@req@four} 866 | \ulinel{\buaa@bachelor@assign@req@five} 867 | \stepcounter{assign} 868 | \Roman{assign}、毕业设计(论文)工作内容: \\[2.5ex] 869 | \ulinel{\buaa@bachelor@assign@work@one} 870 | \ulinel{\buaa@bachelor@assign@work@two} 871 | \ulinel{\buaa@bachelor@assign@work@three} 872 | \ulinel{\buaa@bachelor@assign@work@four} 873 | \ulinel{\buaa@bachelor@assign@work@five} 874 | \newpage 875 | \thispagestyle{empty} 876 | \begin{spacing}{1.9} 877 | \zihao{4} 878 | \stepcounter{assign} 879 | \Roman{assign}、主要参考资料: \\[1.5ex] 880 | \ulinel{\buaa@bachelor@assign@ref@one} 881 | \ulinel{\buaa@bachelor@assign@ref@two} 882 | \ulinel{\buaa@bachelor@assign@ref@three} 883 | \ulinel{\buaa@bachelor@assign@ref@four} 884 | \ulinel{\buaa@bachelor@assign@ref@five} 885 | \ulinel{\buaa@bachelor@assign@ref@six} 886 | \ulinec[.28]{\buaa@school}学院\ulinec[.28]{\buaa@major}~专业类~\ulinec[.15]{\buaa@class}班 \\ 887 | 学生\ulinec[.3]{\buaa@thesisauthor} \\ 888 | 毕业设计(论文)时间:~~\ulinec[.1]{\buaa@thesisbeginyear}年\ulinec[.06]{\buaa@thesisbeginmonth}月\ulinec[.06]{\buaa@thesisbeginday}日至\ulinec[.1]{\buaa@thesisendyear}年\ulinec[.06]{\buaa@thesisendmonth}月\ulinec[.06]{\buaa@thesisendday}日 \\ 889 | 答辩时间:\ulinec[.16]{\buaa@defenseyear}年\ulinec[.08]{\buaa@defensemonth}月\ulinec[.08]{\buaa@defenseday}日 \\ 890 | 成\qquad 绩:\ulinec[.3]{} \\ 891 | 指导教师:\ulinec[.3]{} \\ 892 | 兼职教师或答疑教师(并指出所负责部分):\\ 893 | \ulinel{} 894 | \ulinel{} 895 | \ulinec[.28]{}系(教研室) 主任(签字):\ulinec[.28]{} \\ 896 | \vfill 897 | 注:任务书应该附在已完成的毕业设计(论文)的首页。 898 | \end{spacing} 899 | } 900 | \parindent=2\ccwd 901 | \linespread{1.5} 902 | } 903 | 904 | %%%%%%%%%% nominate %%%%%%%%%% 905 | % 研究生提名页 906 | 907 | \newcommand{\timingye}{% 908 | \clearemptydoublepage 909 | \thispagestyle{empty} 910 | \begin{flushleft} 911 | {\zihao{5}\heiti\bfseries 912 | 中图分类号:\buaa@category\\ 913 | 论\,\,文\,\,编\,\,号:\buaa@thesisID\\} 914 | \end{flushleft} 915 | \begin{center} 916 | \vskip 130bp 917 | {\zihao{-2}\heiti{\ziju{1.3}\buaa@degree 论文}} 918 | \vskip 120bp 919 | \begin{minipage}[h]{.85\textwidth} 920 | \zihao{-1}\heiti\centering{\buaa@thesistitle} 921 | \end{minipage} 922 | 923 | \vskip 130bp 924 | 925 | \begin{spacing}{2.2} 926 | {\zihao{-4}\songti 927 | \begin{tabular}[b]{llll} 928 | \makebox[6em][s]{作者姓名\hfill} & \buaa@thesisauthor& 申请学位级别 & \buaa@appdegree \\ 929 | 指导教师姓名 & \makebox[9em][s]{\buaa@teacher\quad\buaa@subteacher\hfill} & 职\qquad 称 & \buaa@teacherdegree \\ 930 | \makebox[6em][s]{学科专业\hfill} & \buaa@major & 931 | \makebox[6em][s]{研究方向\hfill} & \buaa@direction \\ 932 | \makebox[6em][s]{学习时间自\hfill} &\buaa@thesisbeginyear~~年~~\buaa@thesisbeginmonth~~月~~\buaa@thesisbeginday~~日\qquad & 933 | \makebox[6em][s]{\hfill 起至\hfill} & \buaa@thesisendyear~~年~~\buaa@thesisendmonth~~月~~\buaa@thesisendday~~日止\qquad\\ 934 | 论文提交日期 &\buaa@commityear~~年~~\buaa@commitmonth~~月~~\buaa@commitday~~日\qquad & 论文答辩日期& \buaa@defenseyear~~年~~\buaa@defensemonth~~月~~\buaa@defenseday~~日~\qquad\\ 935 | 学位授予单位 & \buaa@university &学位授予日期 &\buaa@awardyear~~年~~\buaa@awardmonth~~月~~\buaa@awardday~~日~\qquad\\ 936 | \end{tabular}} 937 | \end{spacing} 938 | \end{center} 939 | } 940 | 941 | %%%%%%%%%% creation and use %%%%%%%%%% 942 | % 研究生独创性声明和授权书 943 | 944 | \newcommand{\creationanduse}{% 945 | \clearemptydoublepage 946 | \thispagestyle{empty} 947 | \vspace*{50bp} 948 | \centerline{\zihao{3}\heiti 关于学位论文的独创性声明} 949 | \zihao{-4}\songti 950 | ~~\par 951 | 本人郑重声明:所呈交的论文是本人在指导教师指导下独立进行研究工作所取得的成果, 952 | 论文中有关资料和数据是实事求是的。尽我所知,除文中已经加以标注和致谢外, 953 | 本论文不包含其他人已经发表或撰写的研究成果,也不包含本人或他人为获得北京航空航天大学 954 | 或其它教育机构的学位或学历证书而使用过的材料。与我一同工作的同志对研究所做的任何贡献 955 | 均已在论文中作出了明确的说明。\par 956 | 若有不实之处,本人愿意承担相关法律责任。\par 957 | ~~\\ 958 | {\zihao{5}学位论文作者签名:\uline{\hspace{6em}}\hspace{8em}日期:\hspace{7ex}年\hspace{5ex}月\hspace{5ex}日} 959 | \vskip130bp 960 | \centerline{\zihao{3}\heiti 学位论文使用授权书} 961 | ~~\par 962 | 本人完全同意北京航空航天大学有权使用本学位论文(包括但不限于其印刷版和电子版), 963 | 使用方式包括但不限于:保留学位论文,按规定向国家有关部门(机构)送交学位论文, 964 | 以学术交流为目的赠送和交换学位论文,允许学位论文被查阅、借阅和复印,将学位论文的全部 965 | 或部分内容编入有关数据库进行检索,采用影印、缩印或其他复制手段保存学位论文。\par 966 | 保密学位论文在解密后的使用授权同上。\par 967 | ~~\\ 968 | {\zihao{5} 969 | 学位论文作者签名:\uline{\hspace{6em}}\hspace{8em}日期:\hspace{7ex}年\hspace{5ex}月\hspace{5ex}日\\ 970 | 指导教师签名:\uline{\hspace{8em}}\hspace{8em}日期:\hspace{7ex}年\hspace{5ex}月\hspace{5ex}日} 971 | } 972 | 973 | %%%%%%%%%% denotation %%%%%%%%%% 974 | % 符号对照表 975 | 976 | \newenvironment{denotation} 977 | { 978 | \chapter*{主要符号对照表\markboth{主要符号对照表}{}} % no tocline 979 | \begin{list}{}% 980 | { 981 | \zihao{-4} 982 | \renewcommand\makelabel[1]{##1\hfil} 983 | \setlength{\labelwidth}{2.5cm} % 标签盒子宽度 984 | \setlength{\labelsep}{0.5cm} % 标签与列表文本距离 985 | \setlength{\itemindent}{0cm} % 标签缩进量 986 | \setlength{\leftmargin}{10em} % 左边界 987 | \setlength{\rightmargin}{0cm} 988 | \setlength{\parsep}{0cm} % 段落间距 989 | \setlength{\itemsep}{0cm} % 标签间距 990 | \setlength{\listparindent}{0cm} % 段落缩进量 991 | \setlength{\topsep}{0cm} % 标签与上文的间距 992 | } 993 | } 994 | {\end{list}} 995 | 996 | %%%%%%%%%% settings for custom pages %%%%%%%%%% 997 | % 首页重定义 998 | 999 | \renewcommand{\maketitle}{% 1000 | \titlech 1001 | \ifbuaa@bachelor 1002 | \pagestyle{empty} 1003 | \buaa@bachelor@assign %本科生论文任务书 1004 | \announce %本科生声明 1005 | \pagestyle{fancy} 1006 | \frontmatter 1007 | \else 1008 | \titleeng %研究生英文封面 1009 | \timingye %研究生题名页 1010 | \creationanduse %研究生独创性声明和使用授权书 1011 | \clearemptydoublepage 1012 | \frontmatter 1013 | \fi 1014 | \songti 1015 | \zihao{-4} 1016 | } 1017 | 1018 | %%%%%%%%%% common user info %%%%%%%%%% 1019 | % 用户信息 1020 | 1021 | % 学校名称 1022 | \def\buaa@university{北京航空航天大学} 1023 | \def\buaa@universityeng{Beihang University} 1024 | \newcommand{\university}[2]{% 1025 | \def\buaa@university{#1} 1026 | \def\buaa@universityeng{#2} 1027 | } 1028 | % 学院 1029 | \def\buaa@school{} 1030 | \def\buaa@schooleng{} 1031 | \newcommand{\school}[2]{% 1032 | \def\buaa@school{#1} 1033 | \def\buaa@schooleng{#2} 1034 | } 1035 | % 专业 1036 | \def\buaa@major{} 1037 | \def\buaa@majoreng{} 1038 | \newcommand{\major}[2]{% 1039 | \def\buaa@major{#1} 1040 | \def\buaa@majoreng{#2} 1041 | } 1042 | % 论文标题和副标题 1043 | \def\buaa@thesistitle{} 1044 | \def\buaa@thesissubtitle{} 1045 | \def\buaa@thesistitleeng{} 1046 | \def\buaa@thesissubtitleeng{} 1047 | \newcommand{\thesistitle}[4]{% 1048 | \def\buaa@thesistitle{#1} 1049 | \def\buaa@thesissubtitle{#2} 1050 | \def\buaa@thesistitleeng{#3} 1051 | \def\buaa@thesissubtitleeng{#4} 1052 | } 1053 | % 作者 1054 | \def\buaa@thesisauthor{} 1055 | \def\buaa@thesisauthoreng{} 1056 | \newcommand{\thesisauthor}[2]{% 1057 | \def\buaa@thesisauthor{#1} 1058 | \def\buaa@thesisauthoreng{#2} 1059 | } 1060 | % 指导老师 1061 | \def\buaa@teacher{} 1062 | \def\buaa@teachereng{} 1063 | \newcommand{\teacher}[2]{% 1064 | \def\buaa@teacher{#1} 1065 | \def\buaa@teachereng{#2} 1066 | } 1067 | % 副指导老师 1068 | \def\buaa@subteacher{} 1069 | \def\buaa@subteachereng{} 1070 | \newcommand{\subteacher}[2]{% 1071 | \def\buaa@subteacher{#1} 1072 | \def\buaa@subteachereng{#2} 1073 | } 1074 | % 分类号 1075 | \def\buaa@category{} 1076 | \newcommand{\category}[1]{% 1077 | \def\buaa@category{#1} 1078 | } 1079 | % 论文开始时间 1080 | \def\buaa@thesisbeginyear{} 1081 | \def\buaa@thesisbeginmonth{} 1082 | \def\buaa@thesisbeginday{} 1083 | \newcommand{\thesisbegin}[3]{% 1084 | \def\buaa@thesisbeginyear{#1} 1085 | \def\buaa@thesisbeginmonth{#2} 1086 | \def\buaa@thesisbeginday{#3} 1087 | } 1088 | % 论文结束时间 1089 | \def\buaa@thesisendyear{} 1090 | \def\buaa@thesisendmonth{} 1091 | \def\buaa@thesisendday{} 1092 | \newcommand{\thesisend}[3]{% 1093 | \def\buaa@thesisendyear{#1} 1094 | \def\buaa@thesisendmonth{#2} 1095 | \def\buaa@thesisendday{#3} 1096 | } 1097 | % 答辩时间 1098 | \def\buaa@defenseyear{} 1099 | \def\buaa@defensemonth{} 1100 | \def\buaa@defenseday{} 1101 | \newcommand{\defense}[3]{% 1102 | \def\buaa@defenseyear{#1} 1103 | \def\buaa@defensemonth{#2} 1104 | \def\buaa@defenseday{#3} 1105 | } 1106 | % 中文摘要关键字 1107 | \def\buaa@ckeyword{} 1108 | \newcommand{\ckeyword}[1]{% 1109 | \def\buaa@ckeyword{#1}} 1110 | % 英文摘要关键字 1111 | \def\buaa@ekeyword{} 1112 | \newcommand{\ekeyword}[1]{% 1113 | \def\buaa@ekeyword{#1}} 1114 | % 学位 1115 | \def\buaa@degree{} % 中文首页和题名页 1116 | \def\buaa@degreeeng{} % 英文首页 1117 | \def\buaa@headdegree{} % 页眉页脚 1118 | \newcommand{\degree}[3]{% 1119 | \def\buaa@degree{#1} 1120 | \def\buaa@degreeeng{#2} 1121 | \def\buaa@headdegree{#3} 1122 | } 1123 | \ifbuaa@doctor 1124 | \degree{博士学位}{Doctor of Philosophy}{博士} 1125 | \else 1126 | \ifbuaa@engineer 1127 | \degree{专业硕士学位}{Master}{硕士} 1128 | \else 1129 | \ifbuaa@bachelor 1130 | \degree{学士学位}{Bachelor}{学士} 1131 | \else 1132 | \degree{硕士学位}{Master}{硕士} 1133 | \fi 1134 | \fi 1135 | \fi 1136 | 1137 | %%%%%%%%%% bachelor user info %%%%%%%%%% 1138 | % 本科生信息 1139 | 1140 | % 班级 1141 | \def\buaa@class{} 1142 | \newcommand{\class}[1]{% 1143 | \def\buaa@class{#1} 1144 | } 1145 | % 单位代码 1146 | \def\buaa@unicode{1006} 1147 | \newcommand{\unicode}[1]{% 1148 | \def\buaa@unicode{#1} 1149 | } 1150 | % 学号 1151 | \def\buaa@studentID{} 1152 | \newcommand{\studentID}[1]{% 1153 | \def\buaa@studentID{#1} 1154 | } 1155 | % 论文时间 1156 | \def\buaa@thesisdateyear{} 1157 | \def\buaa@thesisdatemonth{} 1158 | \newcommand{\thesisdate}[2]{% 1159 | \def\buaa@thesisdateyear{#1} 1160 | \def\buaa@thesisdatemonth{#2} 1161 | } 1162 | 1163 | %%%%%%%%%% master user info %%%%%%%%%% 1164 | % 研究生信息 1165 | 1166 | % 保密等级 1167 | \def\buaa@mibao{} 1168 | \newcommand{\mibao}[1]{% 1169 | \def\buaa@mibao{#1} 1170 | } 1171 | % 研究方向 1172 | \def\buaa@direction{} 1173 | \newcommand{\direction}[1]{ 1174 | \def\buaa@direction{#1} 1175 | } 1176 | % 导师职称 1177 | \def\buaa@teacherdegree{} 1178 | \def\buaa@teacherdegreeeng{} 1179 | \newcommand{\teacherdegree}[2]{% 1180 | \def\buaa@teacherdegree{#1} 1181 | \def\buaa@teacherdegreeeng{#2} 1182 | } 1183 | % 副导师职称 1184 | \def\buaa@subteacherdegree{} 1185 | \def\buaa@subteacherdegreeeng{} 1186 | \newcommand{\subteacherdegree}[2]{% 1187 | \def\buaa@subteacherdegree{#1} 1188 | \def\buaa@subteacherdegreeeng{#2} 1189 | } 1190 | % 申请学位级别(题名页) 1191 | \def\buaa@appdegree{} 1192 | \newcommand{\applydegree}[1]{% 1193 | \def\buaa@appdegree{#1} 1194 | } 1195 | % 论文编号 1196 | \def\buaa@thesisID{} 1197 | \newcommand{\thesisID}[1]{% 1198 | \def\buaa@thesisID{#1} 1199 | } 1200 | % 论文提交时间 1201 | \def\buaa@commityear{} 1202 | \def\buaa@commitmonth{} 1203 | \def\buaa@commitday{} 1204 | \newcommand{\commit}[3]{% 1205 | \def\buaa@commityear{#1} 1206 | \def\buaa@commitmonth{#2} 1207 | \def\buaa@commitday{#3} 1208 | } 1209 | % 授予学位时间 1210 | \def\buaa@awardyear{} 1211 | \def\buaa@awardmonth{} 1212 | \def\buaa@awardday{} 1213 | \newcommand{\award}[3]{% 1214 | \def\buaa@awardyear{#1} 1215 | \def\buaa@awardmonth{#2} 1216 | \def\buaa@awardday{#3} 1217 | } 1218 | 1219 | %%%%% 'buaathesis.cls' %%%%% END 1220 | -------------------------------------------------------------------------------- /data/abstract.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | 3 | % 中英文摘要 4 | \begin{cabstract} 5 | 本篇文档主要介绍{\bf 北航毕业设计论文\LaTeX{}模板}使用和相关软件环境的安装配置, 6 | 以及本模板所遵循的开源协议等。 7 | \end{cabstract} 8 | 9 | \begin{eabstract} 10 | Here is the Abstract in English. And this is a test sentence, just for 11 | a test to see how the buaathesis works. You can just ignore this.\par 12 | This is another pargraph. 13 | \end{eabstract} -------------------------------------------------------------------------------- /data/appendix1-faq.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{常见问题} 3 | \label{chapter-faq} 4 | \begin{enumerate} 5 | \item 本模板如何使用? 6 | \label{faq-howtouse} 7 | \begin{itemize} 8 | \item 按照第2章的要求,先下载和安装相应的软件,推荐使用\TeX{}Live2012或更新的版本; 9 | \item 下载cls文件; 10 | \item 使用tex的编辑器或其他编辑器,编写论文,注意保存为UTF-8编码; 11 | \item xelatex编译。 12 | \end{itemize} 13 | 注意:\TeX{}Live2012的ISO镜像在\href{http://buaabt.cn/showtopic-214948.aspx}{未来花园BT站}上 14 | 有相应的种子可下载,亦可从TUG的\href{http://www.tug.org/texlive/acquire-iso.html}{官方网站}上下载。 15 | \item Windows下的msmake.bat如何使用? 16 | \label{faq-msmake} 17 | \begin{itemize} 18 | \item 使用Windows的CMD命令行,进入到msmake.bat所在目录; 19 | \item 键入~msmake~后会显示相应的帮助文件; 20 | \item 按照所显示的相关信息再键入相应命令即可。 21 | \end{itemize} 22 | 注意:由于此批处理文件为编者自行编写,学识有限,代码有许多不如人意之处, 23 | 如对此批处理文件有问题可直接邮件联系我(mrpeng000@gmail.com)即可。 24 | \item 使用TexLive如何更新? 25 | \label{faq-texliveupdate} 26 | TUG官方推荐\TeX{}Live通过镜像站进行更新,具体步骤为: 27 | \begin{itemize} 28 | \item 在“开始”目录下的TeXLive2012文件夹下,找到有TeX Live Manage程序; 29 | \item 在菜单“tlmgr”下选择“载入其他仓库”,选择最近的仓库即可(如果是北航校内用户并能够 30 | 访问到\href{http://mirror.buaa.edu.cn/}{北航开源镜像站}的话,可以在仓库地址中 31 | 输入\texttt{http://mirror.buaa.edu.cn/CTAN/systems/texlive/tlnet/}); 32 | \item 按照目录选择更新。 33 | \end{itemize} 34 | \end{enumerate} 35 | -------------------------------------------------------------------------------- /data/appendix2-contactus.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{联系我们} 3 | -------------------------------------------------------------------------------- /data/bachelor/acknowledgement.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter*{致谢} 3 | \addcontentsline{toc}{chapter}{致谢} 4 | 感谢国家 5 | \cleardoublepage 6 | -------------------------------------------------------------------------------- /data/bachelor/assign.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | % 任务书中的信息 3 | %% 原始资料及设计要求 4 | \assignReq 5 | {原始资料及设计要求第一行} 6 | {原始资料及设计要求第二行} 7 | {原始资料及设计要求第三行} 8 | {原始资料及设计要求第四行} 9 | {原始资料及设计要求第五行} 10 | %% 工作内容 11 | \assignWork 12 | {工作内容第一行} 13 | {工作内容第二行} 14 | {工作内容第三行} 15 | {工作内容第四行} 16 | {工作内容第五行} 17 | {工作内容第六行} 18 | %% 参考文献 19 | \assignRef 20 | {参考文献第一行} 21 | {参考文献第二行} 22 | {参考文献第三行} 23 | {参考文献第四行} 24 | {参考文献第五行} 25 | {参考文献第六行} 26 | {参考文献第七行} 27 | {参考文献第八行} 28 | -------------------------------------------------------------------------------- /data/bachelor/bachelor_info.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | 3 | % 班级 4 | \class{XXXX} 5 | 6 | % 学号 7 | \studentID{XXXXXXXX} 8 | 9 | % 单位代码 10 | \unicode{10006} 11 | 12 | % 论文时间,用于首页 13 | \thesisdate{2012}{06} 14 | -------------------------------------------------------------------------------- /data/bibs.bib: -------------------------------------------------------------------------------- 1 | This file was created with JabRef 2.1 beta 2. 2 | Encoding: GB2312 3 | 4 | @book{kottwitz2011latex, 5 | title={LaTeX Beginner's Guide}, 6 | author={Kottwitz, S.}, 7 | isbn={9781847199867}, 8 | url={http://books.google.com.hk/books?id=rB1Cb62dVnUC}, 9 | year={2011}, 10 | publisher={Packt Publishing} 11 | } 12 | 13 | @ARTICLE{idlemem, 14 | author = {A. Acharya and S. Setia}, 15 | title = {Availability and Utility of Idle Memory in Workstation Clusters}, 16 | journal = {ACM SIGMETRICS Performance Evaluation Review}, 17 | year = {1999} 18 | } 19 | %期刊文章 20 | 21 | @TECHREPORT{sigsegv, 22 | author = {E. A. Anderson and J. M. Neefe}, 23 | title = {An Exploration of Network RAM}, 24 | institution = {UC Berkley}, 25 | year = {1994}, 26 | number = {CSD-98-1000}, 27 | month = dec 28 | } 29 | %技术报告? 30 | 31 | @ARTICLE{Myrinet, 32 | author = {N.J. Boden and D. Cohen and R.E. Felderman and A.E. Kulawik and C. 33 | L. Seitz and J.N. Seizovic and W. Su}, 34 | title = {Myrinet: A Gigabit-per-Second Local Area Network}, 35 | journal = {IEEE Micro}, 36 | year = {1995}, 37 | volume = {15}, 38 | pages = {29--36}, 39 | number = {1} 40 | } 41 | %期刊文章 42 | 43 | @BOOK{ulk3rd, 44 | title = {Understanding the Linux Kernel}, 45 | publisher = {O'{\MakeUppercase{R}}eilly}, 46 | year = {2005}, 47 | author = {Daniel P. Bovet and Marco Cesati}, 48 | edition = {3rd}, 49 | booktitle = {Understanding the Linux Kernel}, 50 | isbn = {0-596-00565-2} 51 | } 52 | %书籍 53 | 54 | @BOOK{ldd3rd, 55 | title = {Linux Device Drivers}, 56 | publisher = {O'{\MakeUppercase{R}}eilly}, 57 | year = {2005}, 58 | author = {Jonathan Corbet and Alessandro Rubini and Greg Kroah-Hartman}, 59 | edition = {3rd}, 60 | booktitle = {Linux Device Drivers} 61 | } 62 | %书籍 63 | 64 | @ARTICLE{GMM, 65 | author = {M. J. Feeley and W. E. Morgan and F. H. Pighin and A. R. Karlin and 66 | H. M. Levy and C. A. Thekkath}, 67 | title = {Implementing Global Memory Management in a Workstation Cluster}, 68 | journal = {ACM SIGOPS Operating Systems Review}, 69 | year = {1995}, 70 | pages = {201--212} 71 | } 72 | %期刊文章 73 | 74 | @ARTICLE{nrd, 75 | author = {M. D. Flouris and E. P. Markatos}, 76 | title = {The Network RamDisk: Using Remote Memory on Heterogeneous NOWs}, 77 | journal = {Cluster Computing}, 78 | year = {1999}, 79 | volume = {2}, 80 | pages = {281--293}, 81 | number = {4} 82 | } 83 | %期刊文章 84 | 85 | @INPROCEEDINGS{1992GMM, 86 | author = {M. J. Frankling and M. J. Carey and M. Livny}, 87 | title = {Globla memory management in client-server DBMS architectures}, 88 | booktitle = {Proceeding of the 18th VLDB Conference}, 89 | year = {1992}, 90 | month = aug 91 | } 92 | %会议论文? 93 | 94 | @INPROCEEDINGS{iSCSIIOprof, 95 | author = {Jizhong Han and Dan Zhou and Xubin He and Jinzhu Gao}, 96 | title = {I/{\MakeUppercase{O}} Profiling for Distributed IP Storage Systems}, 97 | booktitle = {Proceeding of The Second International Conference on Embedded Software 98 | and Systems}, 99 | year = {2005}, 100 | month = dec 101 | } 102 | 103 | @INPROCEEDINGS{icache1, 104 | author = {X. He and Q. Yang and M. Zhang}, 105 | title = {A Caching Strategy to Improve iSCSI Performance}, 106 | booktitle = {Proceeding of Local Computer Networks}, 107 | year = {2002} 108 | } 109 | 110 | @MASTERSTHESIS{NFS, 111 | author = {M. R. Hines and M. Lewandowski and K. Gopalan}, 112 | title = {Anemone: Adaptive Network Memory Engine}, 113 | school = {Florida State University}, 114 | year = {2003} 115 | } 116 | %硕士论文 117 | 118 | @INPROCEEDINGS{memserver, 119 | author = {L. Iftode and K. Li and K. Petersen}, 120 | title = {Memory Servers for Multicomputers}, 121 | booktitle = {Proceeding of the IEEE Spring COMPCON 93}, 122 | year = {1993}, 123 | pages = {538-547}, 124 | month = feb 125 | } 126 | 127 | @INPROCEEDINGS{dodo, 128 | author = {S. Koussih and A. Acharyam, S. Setia}, 129 | title = {Dodo:A User-level System for Exploiting Idle Memory in Workstation 130 | Clusters}, 131 | booktitle = {Proceeding of the Eighth IEEE International Symposium on High Performance 132 | Distributed Computing}, 133 | year = {1999} 134 | } 135 | 136 | @ARTICLE{HPBD, 137 | author = {S. Liang and R. Notonha and D. K. Panda}, 138 | title = {Swapping to Remote Memory over InfiniBand: An Approach using a High 139 | Performance Network Block Device}, 140 | journal = {IEEE Cluster Computing}, 141 | year = {2005}, 142 | month = sep 143 | } 144 | %期刊文章 145 | 146 | @BOOK{lkd2nd, 147 | title = {Linux Kernel Development}, 148 | publisher = {Sams Publishing}, 149 | year = {2005}, 150 | author = {Robert Love}, 151 | edition = {2nd}, 152 | booktitle = {Linux Kernel Development}, 153 | isbn = {0-672-32720-1} 154 | } 155 | %书籍 156 | 157 | @INPROCEEDINGS{rrmp, 158 | author = {E. P. Markatos and G. Dramitions}, 159 | title = {Implementation of a Reliable Remote Memory Pager}, 160 | booktitle = {Proceeding of the 1996 Usenix Technical Conference}, 161 | year = {1996} 162 | } 163 | 164 | @OTHER{stream, 165 | author = {John McCalpin}, 166 | etype = {CP}, 167 | howpublished = {http://www.streambench.org}, 168 | title = {Streambenchmark}, 169 | url = {http://www.streambench.org} 170 | } 171 | %其他 172 | 173 | @INPROCEEDINGS{Nswap, 174 | author = {T. Newhall and S. Finney and K. Ganchevm and M. Spiegel}, 175 | title = {Nswap:A Network Swapping Module for Linux Clusters}, 176 | booktitle = {Proceeding of Euro-Par'03 International Conference on Parallel and 177 | Distributed Computing}, 178 | year = {2003}, 179 | address = {Klagenfurt, Austria}, 180 | month = aug 181 | } 182 | 183 | @INPROCEEDINGS{manager, 184 | author = {J. Oleszkiewicz and L. Xiao and Y. Liu}, 185 | title = {Parallel Network RAM: Effectively Utilizing Global Cluster memory 186 | for Large Data-Intensive Parallel Programs}, 187 | booktitle = {Proceeding of International Conference on Parallel Proceeding}, 188 | year = {2004}, 189 | pages = {577-592} 190 | } 191 | 192 | @ARTICLE{Quadrics, 193 | author = {Fabrizio Petrini and Eitan Frachtenberg and Adolfy Hoisie and Salvador 194 | Coll}, 195 | title = {Performance Evaluation of the Quadrics Interconnection Network}, 196 | journal = {Journal of Cluster Computing}, 197 | year = {2003}, 198 | volume = {6}, 199 | pages = {125--142}, 200 | number = {2}, 201 | month = apr 202 | } 203 | %期刊文章 204 | 205 | @INPROCEEDINGS{NBD, 206 | author = {Sun, H. Tang and M. Chen and J. Fan}, 207 | title = {A Scalable Dynamic Network Memory Service System}, 208 | booktitle = {Proceeding of High-Performance Computing in Asia-Pacific Region}, 209 | year = {2005} 210 | } 211 | 212 | @INPROCEEDINGS{VMA, 213 | author = {T. S. Trevisan and V. S. Costal and L. Whately and C. L. Amorim}, 214 | title = {Distributed Shared Memory in Kernel Mode}, 215 | booktitle = {Proceeding of Computer Architecture and High Performance Computing}, 216 | year = {2002} 217 | } 218 | 219 | @ARTICLE{bigmem, 220 | author = {L. Xiao and S. Chen and X. Zhang}, 221 | title = {Adaptive Memory Allocations in Clusters to Handle Unexpctedly Large 222 | Data-Intensive Jobs}, 223 | journal = {IEEE Transactions on Parallel and Distributed Systems}, 224 | year = {2004}, 225 | volume = {15}, 226 | pages = {577-592}, 227 | number = {6}, 228 | month = jun 229 | } 230 | %期刊文章 231 | 232 | @OTHER{IB, 233 | etype = {OL}, 234 | howpublished = {http://www.infinibandta.org/spec}, 235 | key = {ITA}, 236 | organization = {InfiniBand Trade Association}, 237 | title = {The InfiniBand Architecture}, 238 | url = {http://www.infinibandta.org/spec} 239 | } 240 | %其他 241 | -------------------------------------------------------------------------------- /data/chapter1-intro.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{简介} 3 | 4 | \section{项目说明} 5 | 6 | 欢迎使用北京航空航天大学毕业设计论文毕业设计论文\LaTeX{}模板, 7 | 本模板由北航开源俱乐部(BHOSC)维护,根据北京航空航天大学教务处的 8 | 本科生毕业设计论文要求和研究生毕业设计论文要求来编写的。 9 | 10 | 目前本模板支持本科、(学术/专业)硕士和博士研究生毕业设计论文要求规范。 11 | 12 | 本模板在编写过程中尽可能满足学校要求,但是由于原始规范主要针对Word。 13 | 和\LaTeX{}之间不可避免的差异加之编写者的水平限制,本模板很难做到完全一致。 14 | 我们十分欢迎北航的\LaTeX{}爱好者/专家参与到本模板的完善工作中, 15 | 希望本模板能够对各位同学的论文撰写工作提供便利, 16 | 感谢您对我们工作的信任以及任何可能的反馈和贡献。 17 | 如果您对开发和完善本模板\,BUAAthesis.cls\,有兴趣, 18 | 或者有任何想法和建议,请与我们联系! 19 | 20 | {\heiti 注意:}本模板在尽可能满足学校要求的同时,在细节处理上, 21 | 倾向于遵从\LaTeX{}排版规范,避免使用奇怪的宏包和编写者认为不规范的设置。 22 | 所以难免和学校提供的基于Word的样张存在细微差异,请谨慎使用! 23 | 24 | \section{相关信息} 25 | 26 | \subsection{模板维护及联系方式} 27 | \begin{tabular}{ll} 28 | \multicolumn{2}{l}{北航开源俱乐部 BeiHang OpenSource Club (BHOSC)} \\ 29 | GoogleGroup & \url{https://groups.google.com/d/forum/BHOSC/} \\ 30 | Github & \url{https://github.com/BHOSC/} \\ 31 | IRC & \#beihang-osc @ FreeNode 32 | \end{tabular} 33 | 34 | \subsection{代码托管及相关页面} 35 | \begin{itemize} 36 | \item 毕业设计论文模板代码 37 | \item[] \url{https://github.com/BHOSC/BUAAthesis/} 38 | % TODO(huxuan): Others pages related to BUAAthesis 39 | % \item 软件学院本科毕设答辩演示模板 40 | % \item[] \url{https://github.com/huxuan/latex\_buaasoft\_bachelor\_slide} 41 | % \item 研究生毕设综述报告和开题报告模板 42 | % \item[] \url{https://github.com/JosephPeng/ZongshuKaiti\} 43 | \end{itemize} 44 | 45 | \subsection{贡献者} 46 | \begin{tabularx}{\textwidth}{@{\hspace{2em}}ll} 47 | \href{https://github.com/JosephPeng/}{Joseph \footnote{目前的维护者}} & 48 | \href{mailto:pengyongbuaa@gmail.com}{pengyongbuaa@gmail.com} \\ 49 | \href{http://huxuan.org/}{huxuan \textsuperscript{1}} & 50 | \href{mailto:i@huxuan.org}{i@huxuan.org} \\ 51 | \end{tabularx} 52 | 53 | \subsection{项目协议} 54 | 本项目主要遵从以下两套协议 55 | \begin{itemize} 56 | \item \href{http://www.gnu.org/licenses/gpl.txt} 57 | {GNU General Public License (GPLv3)} 58 | \item \href{http://www.latex-project.org/lppl.txt} 59 | {\LaTeX{} Project Public License (LPPL)} 60 | \end{itemize} 61 | 使用前请认真阅读相关协议,详情请见项目代码根目录下的 LICENSE 文件 62 | 63 | \section{免责声明} 64 | 本模板为编写者依据北京航空航天大学研究生院及教务处出台的 65 | 《北京航空航天大学研究生撰写学位论文规定(2009年7月修订)》和 66 | 《本科生毕业设计(论文)撰写规范及要求》编写而成, 67 | 旨在方便北京航空航天大学毕业生撰写学位论文使用。 68 | 69 | 如前所述,本模板为北航开源俱乐部\LaTeX{}爱好者依据学校的要求规范编写, 70 | 研究生院及教务处只提供毕业论文的写作规范,目前并未提供官方\LaTeX{}模板, 71 | 也未授权第三方模板为官方模板,故此模板仅为论文规范的参考实现, 72 | 不保证格式能完全满足审查老师要求。任何由于使用本模板而引起的论文格式等问题, 73 | 以及造成的可能后果,均与本模板编写者无关。 74 | 75 | 任何组织或个人以本模板为基础进行修改、扩展而生成新模板,请严格遵守相关协议。 76 | 由于违反协议而引起的任何纠纷争端均与本模板编写者无关。 77 | 78 | \section{版本历史} 79 | \begin{itemize} 80 | \item[1.0] 2012/07/24 已完成大体功能,说明文档和细节方面还有待完善。 81 | % “a.b”为版本号,b为奇数时为内测版本,为偶数时为发行版。 82 | \end{itemize} 83 | -------------------------------------------------------------------------------- /data/chapter2-config.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{环境配置} 3 | 4 | \section{C\TeX{}套装 [Windows Only]} 5 | 6 | C\TeX{}套装是Windows下为中文优化的\LaTeX{}系统套件,主要基于MiKTeX系统, 7 | 集成了编辑器WinEdt和其他相关软件。整个系统封装在一个安装程序中, 8 | 安装方法与常规软件相同,无需任何配置,适合大部分Windows用户使用。 9 | 10 | \begin{description} 11 | \item[下载地址] \hfill 12 | \begin{description} 13 | \item[官方页面] 14 | \url{http://www.ctex.org/CTeXDownload} 15 | \item[清华镜像] 16 | \url{https://mirrors.tuna.tsinghua.edu.cn/ctex/unstable/} 17 | \item[中科大镜像] 18 | \url{http://mirrors.ustc.edu.cn/ctex/unstable/} 19 | \end{description} 20 | \item[安装方法] \hfill 21 | \begin{itemize} 22 | \item[] 与常规软件的安装方法类似 23 | \item[] 一直下一步稍加一些自定义(如安装路径)即可 24 | \item[] {\bf 注意:} 安装程序在某些情况下可能覆盖PATH环境变量,请在安装前注意备份PATH环境变量 25 | \end{itemize} 26 | \end{description} 27 | 28 | \section{\TeX{}Live [ Windows \& Linux ]} 29 | 30 | \TeX{}是自由软件,有很多发行版本,就像Linux的Ubuntu、Fedora等等。 31 | 每个发行版本都是一套工具集合,包括plain\TeX{},\LaTeX{},pdf\TeX{},dvips等。 32 | 其中比较流行的是\TeX{}Live,也包含在CTAN的开源镜像中, 33 | 目前的最新版本是\TeX{}Live 2016。 34 | 35 | 推荐通过下载ISO镜像文件的方式安装: 36 | \begin{description} 37 | \item[官方说明] 38 | \url{http://www.tug.org/texlive/acquire-iso.html} 39 | \item[下载地址] 官方地址会自动跳转寻找"最近"镜像,还有几个较快的教育网镜像 40 | \begin{description} 41 | \item[官方地址] 42 | \url{http://mirror.ctan.org/systems/texlive/Images/texlive2016.iso} 43 | \item[清华镜像] 44 | \url{http://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/} 45 | \item[中科大镜像] 46 | \url{https://mirrors.ustc.edu.cn/CTAN/systems/texlive/Images/} 47 | \end{description} 48 | \item[安装方法] \hfill 49 | \begin{enumerate} 50 | \item 通过虚拟光驱挂载镜像也可以直接打开或解压缩不过会比较慢 51 | \item 双击运行光盘镜像或者运行脚本 52 | \item[] Windows 用户可以直接双击运行\textsl{install-tl.bat} 53 | \item[] Linux 用户可以在终端下执行命令\textsl{./install-tl} 54 | \item 按照提示下一步即可,安装大致耗时10$\sim$20分钟,受机器配置影响。 55 | \end{enumerate} 56 | \end{description} 57 | 58 | 当然官方也提供了通过网络安装的方式,虽然通过可以通过镜像选择达到比较快的速度, 59 | 但是这里简便期间不再赘述,有兴趣的同学可以参考官方说明 60 | \url{http://www.tug.org/texlive/acquire-netinstall.html}。 61 | 62 | \section{Mac\TeX{} [ Mac ]} 63 | 64 | Mac\TeX{}是基于\TeX{}Live为Mac系统设计的套件。 65 | 66 | \begin{description} 67 | \item[官方网站] 68 | \url{http://tug.org/mactex/} 69 | \item[下载地址] 官方地址会自动跳转寻找"最近"镜像,还有几个较快的教育网镜像 70 | \begin{description} 71 | \item[官方地址] 72 | \url{http://mirror.ctan.org/systems/mac/mactex/MacTeX.pkg} 73 | \item[清华镜像] 74 | \url{http://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/mac/mactex/} 75 | \item[中科大镜像] 76 | \url{https://mirrors.ustc.edu.cn/CTAN/systems/mac/mactex/} 77 | \end{description} 78 | \item[安装方法] 同一般软件安装,下一步即可 79 | \end{description} 80 | 81 | \section{兼容性} 82 | 83 | 本模板依赖v2.0及以上版本的ctex包,\TeX{}Live 2015及以上版本、C\TeX{}2.9.3 可以正常使用。 84 | 对于低版本的\LaTeX{}发行版,需要使用包管理器升级ctex宏包。 85 | 86 | \section{安装字体 [ Linux ]} 87 | 88 | 北航的毕业设计论文要求使用Times New Roman和华文行楷这两种字体,在Linux系统上,这两种字 89 | 是没有预装在系统里的,因此Linux用户需要手动安装字体才能正常使用本模板。本节将以Ubuntu系统 90 | 为例演示字体的安装。 91 | 92 | 首先需要获取字体文件,Windows系统默认包含了Times New Roman和华文行楷这两种字体,可以从 93 | {\verb C:\Windows\Fonts\ }文件夹下将字体文件拷贝出来(显示为{\verb STXingkai }和 94 | {\verb Times New Roman }),当然,用户也可以从其他途径获取这两个字体文件。然后将字体文件 95 | 拷贝到Ubuntu的{\verb /usr/share/fonts }目录下,为了方便管理,可以在这些外部字体放在一个新 96 | 文件夹中: 97 | \begin{lstlisting}[ 98 | language={bash}, 99 | caption={拷贝字体文件}, 100 | label={copy-fonts}, 101 | ] 102 | sudo cp /usr/share/fonts/msfonts/ 103 | \end{lstlisting} 104 | 然后将字体文件的权限设置为644: 105 | \begin{lstlisting}[ 106 | language={bash}, 107 | caption={设置字体文件权限}, 108 | label={set-fonts-permission}, 109 | ] 110 | sudo chmod 644 /usr/share/fonts/msfonts/* 111 | \end{lstlisting} 112 | 接下来,进入到{\verb /usr/share/fonts/msfonts } 目录下,依次运行以下三个命令: 113 | \begin{lstlisting}[ 114 | language={bash}, 115 | caption={安装字体}, 116 | label={install-fonts}, 117 | ] 118 | sudo mkfontscale 119 | sudo mkfontdir 120 | sudo fc-cache -fv 121 | \end{lstlisting} 122 | 当看到命令行输出 123 | \begin{lstlisting}[ 124 | language={bash}, 125 | caption={正常输出结果}, 126 | label={install-font-success}, 127 | ] 128 | fc-cache: succeeded 129 | \end{lstlisting} 130 | 时,就完成了字体的安装。 131 | 132 | \section{关于编辑器} 133 | 134 | 以上介绍了三款\LaTeX{}套装,涵盖了主流的三大平台,除了C\TeX{}自带了WinEdt, 135 | 其余两款均需要自己选择编辑器,理论上任何文本编辑器都是可以使用的, 136 | 如Windows上的Notepad++,Linux/MacOS上的vim,emacs, 137 | 一方面要考虑对\LaTeX{}的支持,一方面还是自己的熟悉程度。 138 | 139 | 这里推荐一款大众化的编辑器\TeX{}maker,它是跨平台的,支持Windows、Linux和MacOS。 140 | 141 | \begin{description} 142 | \item[官方网站] 143 | \url{http://www.xm1math.net/texmaker/} 144 | \item[下载地址] 145 | \url{http://www.xm1math.net/texmaker/download.html} 146 | \item[相关说明] 147 | \begin{itemize} 148 | \item 安装同一般软件的安装 149 | \item 配置Xe\LaTeX{}的编译,选择菜单栏“选项”->“配置\TeX{}Maker”, 150 | \item[] 在“\LaTeX{}”一栏填写 151 | \texttt{xelatex -interaction=nonstopmode\%.tex} 152 | \end{itemize} 153 | \end{description} 154 | 155 | \section{关于编译} 156 | 157 | \LaTeX{}的文件是通过编译生成的,对于本模板和毕业设计论文而言, 158 | 需要经过代码\ref{code-compile}所示步骤(以sample-bachelor.tex为例): 159 | \begin{lstlisting}[ 160 | language={bash}, 161 | caption={编译步骤}, 162 | label={code-compile}, 163 | ] 164 | xelatex sample-bachelor.tex 165 | bibtex sample-bachelor.aux 166 | xelatex sample-bachelor.tex 167 | xelatex sample-bachelor.tex 168 | \end{lstlisting} 169 | 当然,我们在模板里也提供了编译的执行脚本。 170 | 171 | \subsection{批处理 [ Windows only ]} 172 | 173 | 进入cmd(Win+R,然后输入cmd),cd到BUAAthesis对应目录, 174 | 如{\verb D:\BUAAthesis\ },然后运行{\verb msmake }即可。 175 | 176 | \subsection{Makefile [ Windows(cygwin) / Linux / MacOS ]} 177 | 需要要你的命令行环境支持Make,cd到BUAAthesis相应目录, 178 | 目前支持如代码\ref{code-make}所示的功能: 179 | \begin{lstlisting}[ 180 | language={bash}, 181 | caption={make 命令}, 182 | label={code-make}, 183 | ] 184 | make bachelor # 编译本科生的\LaTeX{}(文件默认项,亦可直接输入make) 185 | make master # 编译研究生的\LaTeX{}文件 186 | make clean # 删除编译过程中生成的文件(除了pdf) 187 | make depclean # 删除编译过程中生成的文件(包括pdf) 188 | \end{lstlisting} 189 | -------------------------------------------------------------------------------- /data/chapter3-download.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{下载} 3 | 4 | \section{发行版本} 5 | 6 | 发行版本是本模板编写者会不定期更新打包的版本,适合大部分用户使用, 7 | 优点是相对较为稳定,下载和使用都更方便便捷, 8 | 缺点是可能不包含一些最新的更新,不过应该足够满足常规毕业设计论文撰写需求。 9 | 由于本模板仍在开发之中,我们将适时更新本说明文档及相关项目介绍和使用方法, 10 | 敬请关注后续进展。 11 | 12 | \section{开发版本} 13 | 14 | 开发版本是通过Git直接clone本模板托管在Github版本库中的最新代码, 15 | 适合有版本管理工具使用经验和对LaTeX使用较为熟练的用户。 16 | 优点是包含最新的模板代码, 17 | 缺点是稳定性无法保证,可能有一些小问题, 18 | 当然我们很欢迎您通过所有可能的方式将问题反馈给我们。 19 | 20 | \subsection{下载方法} 21 | 首先你需要打开准备存放毕业设计论文的目录, 22 | 通过命令\ref{code-git-clone}即可获取最新的模板代码, 23 | 需要注意的是这将在当前目录下新建一个名为BUAAthesis的文件夹。 24 | \begin{lstlisting}[ 25 | language={bash}, 26 | caption={git clone}, 27 | label={code-git-clone}, 28 | ] 29 | git clone git://github.com/BHOSC/BUAAthesis.git 30 | \end{lstlisting} 31 | 32 | \subsection{更新方法} 33 | 通过命令\ref{code-git-pull}即可实现模板代码的更新, 34 | 需要注意的是此处可能会出现冲突,相关处理方法将在后续说明。 35 | \begin{lstlisting}[ 36 | language={bash}, 37 | caption={git pull}, 38 | label={code-git-pull}, 39 | ] 40 | git pull origin master 41 | \end{lstlisting} 42 | 43 | \section{目录结构} 44 | 45 | 本模板项目完整的文件目录结构如下所示: 46 | 47 | { 48 | \dirtree{% 49 | .1 BUAAthesis/\DTcomment{根目录}. 50 | .2 buaathesis.cls\DTcomment{模板文件}. 51 | .2 buaathesis.bst\DTcomment{参考文献样式}. 52 | .2 sample-bachelor.tex\DTcomment{本科生示例文件}. 53 | .2 sample-master.tex\DTcomment{研究生示例文件}. 54 | .2 data/\DTcomment{数据文件夹}. 55 | .3 abstract.tex\DTcomment{中英文摘要}. 56 | .3 appendix1-faq.tex\DTcomment{附录1,常见问题}. 57 | .3 appendix2-contactus.tex\DTcomment{附录2,联系我们}. 58 | .3 bibs.bib\DTcomment{参考文献文件}. 59 | .3 chapter1-intro.tex. 60 | .3 chapter2-config.tex. 61 | .3 chapter3-download.tex. 62 | .3 chapter4-baisc.tex. 63 | .3 chapter5-usage.tex. 64 | .3 chapter6-implement.tex. 65 | .3 com\_info.tex\DTcomment{通用自定义信息}. 66 | .3 reference.tex\DTcomment{参考文献}. 67 | .3 bachelor/\DTcomment{本科生专属文件}. 68 | .4 assign.tex\DTcomment{任务书}. 69 | .4 bachelor\_info.tex\DTcomment{本科生专属信息}. 70 | .4 acknowledgement.tex\DTcomment{致谢页}. 71 | .3 master/\DTcomment{研究生专属文件}. 72 | .4 back1-achievement.tex\DTcomment{附页1,取得成绩}. 73 | .4 back2-acknowledgement.tex\DTcomment{附页2,致谢}. 74 | .4 back3-aboutauthor.tex\DTcomment{附页3,关于作者}. 75 | .4 denotation.tex\DTcomment{主要符号对照表}. 76 | .4 master\_info.tex\DTcomment{研究生专属信息}. 77 | .2 figure/\DTcomment{图片存放路径}. 78 | .3 buaamark.eps\DTcomment{北航Logo,用于页眉}. 79 | .3 buaaname.eps\DTcomment{北航校名,用于首页}. 80 | .3 fgbt.jpg\DTcomment{北航未来花园Logo,用于测试}. 81 | .2 Makefile\DTcomment{Linux下辅助脚本}. 82 | .2 msmake.bat\DTcomment{Windows下辅助脚本}. 83 | .2 README.md\DTcomment{Github项目说明}. 84 | .2 .gitignore\DTcomment{Git版本管理配置文件}. 85 | } 86 | } 87 | -------------------------------------------------------------------------------- /data/chapter4-basic.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{\LaTeX{}基础知识} 3 | \label{chapter-basic} 4 | 5 | 本章主要为常用示例,推荐入门用户参照本文档的相应代码进行编写, 6 | 编写过程中主要考虑论文写作过程中主要使用到的样式类型, 7 | 更全面的\LaTeX{}基础语法请常见推荐的入门文档。 8 | % TODO(huxuan): Add reference of recommended document 9 | 10 | \section{\LaTeX{}的优势} 11 | \label{sec-latex-advantage} 12 | 13 | \subsection{样式格式} 14 | \label{subsec-style} 15 | 16 | \LaTeX{}可以实现内容和格式的分离,使得专注内容和忽略格式成为可能。 17 | 结合已有的模版,用户可以利用最基本的文本编辑器完成复杂格式文档的书写。 18 | 19 | 你不需要关心整个论文中任何的标题、目录、正文等所有内容的字体、字号, 20 | 还有段落的首行缩进、段前段后的间隔,利用本模版即可完成所有的工作。 21 | 包括目录(包括表格目录等)本身以及所有章节、图表的序号均为自动生成, 22 | \LaTeX{}都会自动帮你完成其他工作,你需要做的只有一个---专注于你写的内容。 23 | 24 | \subsection{版本管理} 25 | \label{subsec-version-control} 26 | 27 | 用\LaTeX{}编写的文档都是纯文本文件,所以可以使用版本管理, 28 | 正如你现在所看到的说明文档,是和\LaTeX{}模版一起托管在了Github上。 29 | 至于版本管理及其好处不在此赘述,感兴趣的同学请自行了解。 30 | 31 | \section{字体} 32 | \label{sec-font} 33 | 34 | 毕设论文一般不应过多使用字体。模版也已经设置好默认字体:{\bf 宋体} 35 | 和{\bf Times New Roman}字体。如有需要特别强调的地方,可参考以下示例。 36 | \begin{itemize} 37 | \item {\heiti 床前明月光,疑是地上霜。举头望明月,低头思故乡。} 38 | \item {\bf 床前明月光,疑是地上霜。举头望明月,低头思故乡。} 39 | \item \textbf{To be, or not to be, that's a question.} 40 | \item \texttt{To be, or not to be, that's a question.} 41 | \end{itemize} 42 | 43 | \section{特殊符号} 44 | \label{sec-symbol} 45 | 46 | 由于\LaTeX{}命令需要用到一些符号,因此一些特殊符号的录入需要特殊处理。 47 | 比较常见的有“\% \$ \& \{ \} \# \_ \^{} \textbackslash”等, 48 | 其他符号请自行搜索或参考tex自带的文档。 49 | % TODO(huxuan): Add reference of symbol document 50 | 51 | \section{长度单位和命令} 52 | \label{sec-length} 53 | 54 | \begin{itemize} 55 | \item 常规长度单位 56 | \begin{description} 57 | \item[cm] 厘米 58 | \item[in] 英寸 59 | \end{description} 60 | \item 文字相关长度,适用于与文字混排 61 | \begin{description} 62 | \item[em] 当前字体字符“M”的宽度,常用于水平距离 63 | \item[ex] 当前字体字符“x”的宽度,常用于竖直距离 64 | \end{description} 65 | \item 页面相关长度,适用于图表等浮动元素 66 | \begin{description} 67 | \item[\textbackslash textwidth] 页面主体文字部分的宽度 68 | \item[\textbackslash textheight] 页面主体文字部分的高度 69 | \end{description} 70 | \end{itemize} 71 | 72 | \section{空格、换行与分段} 73 | \label{sec-space-linkbreak-par} 74 | 75 | 在\LaTeX{}中,换行都会被忽略,连续的空格都会被认为是一个空格。 76 | 需使用空格时可以选择表\ref{tab-space}中适当的命令。换行与分段是不同的概念, 77 | 换行只是重新开始一行,新的段落需通过一个单独的空行实现。 78 | 故编写\LaTeX{}源文件时推荐以标点为间隔换行,一行不超过80个字符, 79 | 示例见本文档源文件。 80 | 81 | \begin{table} 82 | \centering 83 | \caption{\LaTeX{}中的空格} 84 | \label{tab-space} 85 | \begin{tabular}{l|l} 86 | \hline 87 | \verb|\qquad| & 当前字体下2个字母“M”的宽度 \\ \hline 88 | \verb|\quad| & 当前字体下1个字母“M”的宽度 \\ \hline 89 | \verb|\ | & 当前字体下1/3个字母“M”的宽度(斜杠后是一个空格) \\ \hline 90 | \verb|\;| & 当前字体下2/7个字母“M”的宽度 \\ \hline 91 | \verb|\,| & 当前字体下1/6个字母“M”的宽度 \\ \hline 92 | \verb|\!| & {\bf 缩进}当前字体下1/6个字母“M”的宽度 \\ \hline 93 | \end{tabular} 94 | \end{table} 95 | 96 | \section{标签和引用} 97 | \label{sec-label-ref} 98 | 99 | 标签和引用是用来生成如“见图6.4”等类似语句中的"6.4"这样的序号, 100 | 它的好处是当你改变顺序或者删除之前的某一个图表等内容时, 101 | 所有序号会在下次编译时自动重排。 102 | 103 | 设置标签是\verb|\label{}|命令,参数为该标签的名称,在引用时使用。 104 | 引用标签是\verb|\ref{}|命令,参数为设定好的对应标签名称。 105 | 引用标签所在页的页码是\verb|\pageref{}|命令,参数也是设定好的对应标签名称。 106 | 设置标签也是\LaTeX{}编码时的一个好习惯,推荐在即使用不到的情况下, 107 | 也给所有的章节和图表等内容都设定标签,示例见本文档源文件。 108 | 109 | \section{章、节、条、款、项} 110 | \label{sec-title} 111 | 112 | \subsection{章、节、条} 113 | \label{subsec-chap-etc} 114 | 115 | \begin{description} 116 | \item[章] \verb|\chapter{|章标题\} 117 | \item[节] \verb|\section{|节标题\} 118 | \item[条] \verb|\subsection{|条标题\} 119 | \end{description} 120 | 121 | \subsection{款、项} 122 | \label{subsec-item} 123 | 条目环境即目录结构中的款和项分为itemize,enumerate,description三种。 124 | itemize是最简单的,enumerate是带序号的,description是带描述的, 125 | 具体示例如下: 126 | 127 | \begin{enumerate} 128 | \item enumerate第一条: 129 | \begin{itemize} 130 | \item itemize第一点。 131 | \item itemize第二点。 132 | \end{itemize} 133 | \item enumerate第二条: 134 | \begin{description} 135 | \item[观点三] description第三点。 136 | \item[观点四] description第四点。 137 | \end{description} 138 | \end{enumerate} 139 | 140 | 默认情况下,列表项正文如果较长,列表项的内容将与第一行保持一致的缩进,例如 141 | 142 | \begin{enumerate} 143 | \item 列表项短文本 144 | \item 列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本 145 | 列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本 146 | \end{enumerate} 147 | 148 | 使用\verb|itemize|或\verb|enumerate|环境时,加上\verb|[wide]|选项就可以解决这个问题, 149 | 并且使用\verb|enumerate|环境创建的列表中的项同样会自动编号, 150 | 例如\verb|\begin{enumerate}[wide]|的效果: 151 | 152 | \begin{enumerate}[wide] 153 | \item 列表项短文本 154 | \item 列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本 155 | 列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本列表项长文本 156 | \end{enumerate} 157 | 158 | \section{图形} 159 | \label{sec-figure} 160 | 插入图形时可以使用\texttt{figure}环境,示例如图\ref{fig-sample}所示。 161 | 其中figure环境的参数\verb|[h!]|表示尽量排版在当前位置,一般情况下照用即可。 162 | \verb|\includegraphics|的参数\verb|[width=90bp]|是图片大小的设置, 163 | 也可以使用height或者两个一起使用,设置其中一个即可实现等比例缩放。 164 | \begin{figure}[h!] 165 | \centering 166 | \includegraphics[width=90bp]{figure/buaamark.eps} 167 | \caption{校徽} 168 | \label{fig-sample} 169 | \end{figure} 170 | 171 | \section{表格} 172 | \label{sec-table} 173 | 174 | \subsection{浮动环境} 175 | \label{subsec-table-float} 176 | \texttt{table}为表格的浮动环境,主要用于添加标题和标签 177 | \texttt{tabular}为表格环境,通过参数定义表格列方向的样式, 178 | 如\verb+{l||c|r}+表示表格共三列,第一列左对齐{\bf l}, 179 | 第二列居中对齐{\bf c},第三列右对齐{\bf r}。 180 | 其中前两列用两条竖线分隔,后两列之间只有一条竖线。 181 | 表格行方向的横线用\verb|\hline|表示,横线或竖线均可多条。 182 | 每一行中的列用“\&”作为间隔符,每一行之间使用“\verb|\\|”换行, 183 | 示例见表格\ref{tab-sample}。 184 | \begin{table} 185 | \centering 186 | \caption{浮动表格示例} 187 | \label{tab-sample} 188 | \begin{tabular}{l||c|r} 189 | \hline 190 | 第一列 & 第二列 & 第三列 \\ \hline \hline 191 | 左 & 居中对齐 & 右对齐 \\ \hline 192 | 左对 & 居中 & 右对 \\ \hline 193 | 左对齐 & 对齐 & 右 \\ \hline 194 | \end{tabular} 195 | \end{table} 196 | 如果在表格中需要使用脚注(footnote)功能,则需要将浮动表格环境置于一个minipage中, 197 | 否则脚注会被内容所吞掉。比如下表所示。但目前能力有限,无法将此表格居中,也无法添加 198 | 表格标题和引用。待改进。 199 | 200 | \begin{minipage}[h]{\textwidth} 201 | \begin{tabular}{|c|c|c|} 202 | \hline 203 | aaa\footnote{test} & bbb & ccc \\ 204 | \hline 205 | \end{tabular} 206 | \end{minipage} 207 | 208 | \subsection{三线表格} 209 | \label{three-line-table} 210 | 211 | 论文中给出的表格示例为三线表格,在\LaTeX{}中制作三表表格也非常容易。使用\verb|\toprule|、 212 | \verb|\midrule|、\verb|\bottomrule|这三个命令来绘制横分割线即可。以本科生毕业设计手册中的 213 | 一个表格\ref{tab-three-line-table-example}为例: 214 | 215 | \begin{table} 216 | \centering 217 | \caption{降压损失计算结果} 218 | \label{tab-three-line-table-example} 219 | \begin{tabular}{lcr} 220 | \toprule 221 | 换热器 & 热边压降损失 & 冷边压降损失 \\ 222 | \midrule 223 | 初级 & 2974.37 & 2931.52 \\ 224 | 次级 & 2924.65 & 3789.76 \\ 225 | \bottomrule 226 | \end{tabular} 227 | \end{table} 228 | 229 | \subsection{列合并和行合并} 230 | \label{subsec-tab-col-row} 231 | 列合并用\verb|\multicolumn{#1}{#2}{#3}|命令,\#1为所合并的列数, 232 | \#2为该列的样式,\#3为该列中的内容,示例如表\ref{tab-col}。 233 | 其中合并了第二行的二三列,合并的列数为2,样式是“c|”。需要注意的是, 234 | 列分隔符包含两列间可能的竖线(根据表格样式),故只需指定右侧是否有竖线即可。 235 | 236 | 行合并的命令为\verb|\multirow{#1}{#2}{#3}|,参数\#1和\#3与列合并相同。 237 | \#2为行合并单元格的宽度,一般用*来表示默认的计算值, 238 | 行合并后表格线一般是多段间断的线,需要使用命令\verb|\cline{X-Y}|, 239 | 来表示从第X列起始到第Y列结尾的横线,多段横线依次指定即可, 240 | 示例如表\ref{tab-row}所示,被合并的单元格只需留空即可。 241 | 242 | \begin{table} 243 | \begin{minipage}{.5\textwidth} 244 | \centering 245 | \caption{列合并示例} 246 | \label{tab-col} 247 | \begin{tabular}{l|l|l|l} 248 | \hline 249 | 1.1 & 1.2 & 1.3 & 1.4 \\ \hline 250 | 2.1 & \multicolumn{2}{c|}{2.2 \& 2.3} & 2.4 \\ \hline 251 | 3.1 & 3.2 & 3.3 & 3.4 \\ \hline 252 | \end{tabular} 253 | \end{minipage} 254 | \begin{minipage}{.5\textwidth} 255 | \centering 256 | \caption{行合并示例} 257 | \label{tab-row} 258 | \begin{tabular}{l|l|l} 259 | \hline 260 | 1.1 & 1.2 & 1.3 \\ \hline 261 | 2.1 & \multirow{2}*{2.2 \& 3.2} & 2.3 \\ \cline{1-1} \cline{3-3} 262 | 3.1 & & 3.3 \\ \hline 263 | 4.1 & 4.2 & 4.3 \\ \hline 264 | \end{tabular} 265 | \end{minipage} 266 | \end{table} 267 | 268 | \section{数学公式} 269 | \label{sec-math} 270 | 数学公式分为内嵌行公式和独立行公式。内嵌行公式是与正文段落混合排布的公式, 271 | \verb|$ $|表示内嵌行公式的环境,如$sin^2{\alpha}+cos^2{\alpha}=1$。独立行公式是独占一行的公式, 272 | 独立行公式分为两种,一种是后面不带公式编号,如下方公式所示。$$\begin{Bmatrix}1 & 2\\3 &4\end{Bmatrix}$$ 273 | 另外一种是常用的带公式编号的独立行公式,推荐使用equation环境来自动实现独立行公式的编号,示例见公式\ref{equ-sample}。 274 | \begin{equation} 275 | \label{equ-sample} 276 | E=mc^2 277 | \end{equation} 278 | 279 | 一般的数学公式只需掌握几个简单的命令,复杂的数学公式可能会用到更多的命令, 280 | 更深入的数学公式相关内容请参见文档。 281 | % TODO(huxuan): Add reference of recommended document relatex to formula 282 | % 数学符号可以翻阅symbols.pdf,或者使用工具http://detexify.kirelabs.org/classify.html 283 | 284 | \section{使用listings显示代码} 285 | \label{sec-listings} 286 | 使用\texttt{listings}环境可以进行更美观的代码整理和展示。 287 | 代码\ref{code-c-sample}即为一个简单示例。 288 | \begin{lstlisting}[ 289 | language={C}, 290 | caption={一段C源代码}, 291 | label={code-c-sample}, 292 | ] 293 | #include 294 | 295 | void main() 296 | { 297 | printf("Hello, world!"); 298 | } 299 | \end{lstlisting} 300 | 301 | \section{更复杂的操作} 302 | \label{sec-more} 303 | 304 | \subsection{多图排列} 305 | \label{subsec-multi-fig} 306 | 两个或多个图形并排排列,可以参照图\ref{fig-mini-l}和\ref{fig-mini-r}的示例代码。 307 | \begin{figure}[h!] % [h!] 表示尽量排在当前位置 308 | \begin{minipage}{.5\textwidth} % .5\textwidth 表示正文宽度的一半 309 | \centering 310 | \includegraphics[width=0.35\textwidth]{figure/buaamark.eps} 311 | \caption{并排的左图} 312 | \label{fig-mini-l} 313 | \end{minipage} 314 | \begin{minipage}{.5\textwidth} 315 | \centering 316 | \includegraphics[width=0.35\textwidth]{figure/buaamark.eps} 317 | \caption{并排的右图} 318 | \label{fig-mini-r} 319 | \end{minipage} 320 | \end{figure} 321 | 322 | 图\ref{fig-sub}为子图排列,两个子图有各自的图题, 323 | 分别为图\ref{fig-sub-l}和图\ref{fig-sub-r},并有一个共同的图题。 324 | \begin{figure}[h!] 325 | \centering 326 | \subfigure[并排小图a]{ 327 | \label{fig-sub-l} 328 | \includegraphics[width=.2\textwidth]{figure/buaamark.eps} 329 | } 330 | \hspace{7em} % 水平间隔 331 | \subfigure[并排小图b]{ 332 | \label{fig-sub-r} 333 | \includegraphics[width=.2\textwidth]{figure/buaamark.eps} 334 | } 335 | \caption{子图并排的示例} 336 | \label{fig-sub} 337 | \end{figure} 338 | 339 | 若要将四个或多个图形以矩阵形式排列,可以参见图\ref{fig-matrix}, 340 | 四个子图分别为图\ref{fig-matrix-a}、图\ref{fig-matrix-b}、 341 | 图\ref{fig-matrix-c}和图\ref{fig-matrix-d}。 342 | \begin{figure}[h!] 343 | \centering 344 | \begin{tabular}{cc} 345 | \subfigure[矩阵子图A]{ 346 | \label{fig-matrix-a} 347 | \includegraphics[width=.18\textwidth]{figure/buaamark.eps} 348 | } \hspace{7em} & 349 | \subfigure[矩阵子图B]{ 350 | \label{fig-matrix-b} 351 | \includegraphics[width=.18\textwidth]{figure/buaamark.eps} 352 | } \\ 353 | \subfigure[矩阵子图C]{ 354 | \label{fig-matrix-c} 355 | \includegraphics[width=.18\textwidth]{figure/buaamark.eps} 356 | } \hspace{7em} & 357 | \subfigure[矩阵子图D]{ 358 | \label{fig-matrix-d} 359 | \includegraphics[width=.18\textwidth]{figure/buaamark.eps} 360 | }\\ 361 | \end{tabular} 362 | \caption{矩形的subfig排列} 363 | \label{fig-matrix} 364 | \end{figure} 365 | 366 | 复杂的图形排列基本到此为止,一般情况下很少会用到也并不推荐使用, 367 | 如果对图形的编排的兴趣,可以参考推荐书目。 368 | % TODO(huxuan): Add reference to 《\LaTeX{}插图指南》 369 | 370 | \subsection{图形表格等混排} 371 | \label{subsec-morefigtab} 372 | 图形表格的并排显示可以参照图\ref{fig-tab-mix}和表格\ref{tab-fig-mix}的实现。 373 | 大体思路同图形的并排排列,亦可扩展至其他元素类型。 374 | \begin{figure}[h!] 375 | \begin{minipage}{0.5\textwidth} 376 | \centering 377 | \includegraphics[width=0.6\textwidth]{figure/fgbt.jpg} 378 | \figcaption{左侧的图片} % 用于生成图片的编号 379 | \label{fig-tab-mix} 380 | \end{minipage} 381 | \begin{minipage}{0.5\textwidth} 382 | \centering 383 | \begin{tabular}{c||c|c} \hline 384 | Day & Data & other \\ \hline \hline 385 | Monday & 1 & 1.5 \\ 386 | Tuesday & 2 & 2.5 \\ 387 | Wednesday & 3 & 3.5 \\ 388 | Thursday & 4 & 4.5 \\ 389 | Friday & 5 & 5.5 \\ \hline 390 | \end{tabular} 391 | \tabcaption{右侧的表格} % 用于生成表格的编号 392 | \label{tab-fig-mix} 393 | \end{minipage} 394 | \end{figure} 395 | 396 | \subsection{长表格} 397 | \label{subsec-longtab} 398 | 当表格超过一页时可以使用longtable环境,如表\ref{tab-long-example}所示。 399 | 400 | \begin{longtable}{|l|l|l|} 401 | % 表格的首个表头 402 | \caption{长表格示例\label{tab-long-example}} \\ 403 | \hline 404 | \multicolumn{1}{|c|}{\textbf{Time (s)}} & 405 | \multicolumn{1}{c|}{\textbf{Triple chosen}} & 406 | \multicolumn{1}{c|}{\textbf{Other feasible triples}} \\ \hline 407 | \endfirsthead 408 | % 表格的其他表头 409 | \multicolumn{3}{l}{{\bfseries\tablename\ \thetable{} --接\,上\,页}} \\ 410 | \hline \multicolumn{1}{|c|}{\textbf{Time (s)}} & 411 | \multicolumn{1}{c|}{\textbf{Triple chosen}} & 412 | \multicolumn{1}{c|}{\textbf{Other feasible triples}} \\ \hline 413 | \endhead 414 | % 表格的其他表尾 415 | \hline \multicolumn{3}{|r|}{{接\,下\,页}} \\ \hline 416 | \endfoot 417 | % 表格的最后表尾 418 | \hline \hline 419 | \endlastfoot 420 | 0 & (1, 11, 13725) & (1, 12, 10980), (1, 13, 8235), (2, 2, 0) \\ 421 | 2745 & (1, 12, 10980) & (1, 13, 8235), (2, 2, 0), (2, 3, 0) \\ 422 | 5490 & (1, 12, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 423 | 8235 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 424 | 10980 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 425 | 13725 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 426 | 16470 & (1, 13, 16470) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 427 | 19215 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 428 | 21960 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 429 | 24705 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 430 | 27450 & (1, 12, 16470) & (1, 13, 13725), (2, 2, 2745), (2, 3, 0) \\ 431 | 30195 & (2, 2, 2745) & (2, 3, 0), (3, 1, 0) \\ 432 | 32940 & (1, 13, 16470) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 433 | 35685 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 434 | 38430 & (1, 13, 10980) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 435 | 41175 & (1, 12, 13725) & (1, 13, 10980), (2, 2, 2745), (2, 3, 0) \\ 436 | 43920 & (1, 13, 10980) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 437 | 150975 & (1, 13, 16470) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 438 | 153720 & (1, 12, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 439 | 156465 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 440 | 159210 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 441 | 161955 & (1, 13, 16470) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 442 | 164700 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 443 | 150975 & (1, 13, 16470) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 444 | 153720 & (1, 12, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 445 | 156465 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 446 | 159210 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 447 | 161955 & (1, 13, 16470) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 448 | 164700 & (1, 13, 13725) & (2, 2, 2745), (2, 3, 0), (3, 1, 0) \\ 449 | \end{longtable} 450 | 451 | 452 | \subsection{定理定义环境} 453 | \label{subsec-thm} 454 | 本模版支持的定理定义环境及示例:如假设\ref{thm-assumption-example}、 455 | 定义\ref{thm-definition-example}、命题\ref{thm-proposition-example}、 456 | 注释\ref{thm-remark-example}、公理\ref{thm-axiom-example}、 457 | 引理\ref{thm-lemma-example}、定理\ref{thm-theorem-example}、 458 | 证明\ref{thm-proof-example}、推论\ref{thm-corollary-example}、 459 | 例\ref{thm-example-example}、练习\ref{thm-exercise-example}、 460 | 猜想\ref{thm-conjecture-example}、问题\ref{thm-problem-example}。 461 | 462 | \begin{assumption} 463 | \label{thm-assumption-example} 464 | 待月西厢下,迎风户半开;隔墙花影动,疑是玉人来。 465 | \begin{eqnarray} 466 | \label{equ-example-assumption} 467 | c & = & a^2 - b^2\\ 468 | & = & (a+b)(a-b) 469 | \end{eqnarray} 470 | \end{assumption} 471 | 472 | \begin{definition} 473 | \label{thm-definition-example} 474 | 子曰:「道千乘之国,敬事而信,节用而爱人,使民以时。」 475 | \end{definition} 476 | 477 | \begin{proposition} 478 | \label{thm-proposition-example} 479 | 曾子曰:「吾日三省吾身 --- 为人谋而不忠乎?与朋友交而不信乎?传不习乎?」 480 | \end{proposition} 481 | 482 | \begin{remark} 483 | \label{thm-remark-example} 484 | 天不言自高,水不言自流。 485 | \begin{gather*} 486 | \begin{split} 487 | \varphi(x,z) 488 | & = z-\gamma_{10}x-\gamma_{mn}x^mz^n\\ 489 | & = z-Mr^{-1}x-Mr^{-(m+n)}x^mz^n 490 | \end{split} \\[6pt] 491 | \begin{align} 492 | \zeta^0 & = (\xi^0)^2,\\ 493 | \zeta^1 & = \xi^0\xi^1,\\ 494 | \zeta^2 & = (\xi^1)^2, 495 | \end{align} 496 | \end{gather*} 497 | \end{remark} 498 | 499 | \begin{axiom} 500 | \label{thm-axiom-example} 501 | 两点间直线段距离最短。 502 | \begin{align} 503 | x & \equiv y+1\pmod{m^2}\\ 504 | x & \equiv y+1\mod{m^2}\\ 505 | x & \equiv y+1\pod{m^2} 506 | \end{align} 507 | \end{axiom} 508 | 509 | \begin{lemma} 510 | \label{thm-lemma-example} 511 | 《猫和老鼠》是我最爱看的动画片。 512 | \begin{multline*}%\tag*{[a]} % 这个不出现在索引中 513 | \int_a^b\biggl\{\int_a^b[f(x)^2g(y)^2+f(y)^2g(x)^2] 514 | -2f(x)g(x)f(y)g(y)dx\biggr\}dy \\ 515 | =\int_a^b\biggl\{g(y)^2\int_a^bf^2 516 | +f(y)^2\int_a^bg^2-2f(y)g(y)\int_a^b fg\biggr\}dy 517 | \end{multline*} 518 | \end{lemma} 519 | 520 | \begin{theorem} 521 | \label{thm-theorem-example} 522 | 犯我强汉者,虽远必诛\hfill --- 陈汤(汉) 523 | \end{theorem} 524 | 525 | \begin{proof} 526 | \label{thm-proof-example} 527 | 燕赵古称多感慨悲歌之士。董生举进士,连不得志于有司,怀抱利器,郁郁适兹土,吾 528 | 知其必有合也。董生勉乎哉? 529 | 530 | 夫以子之不遇时,苟慕义强仁者,皆爱惜焉,矧燕、赵之士出乎其性者哉!然吾尝闻 531 | 风俗与化移易,吾恶知其今不异于古所云邪?聊以吾子之行卜之也。董生勉乎哉? 532 | 533 | 吾因子有所感矣。为我吊望诸君之墓,而观于其市,复有昔时屠狗者乎?为我谢 534 | 曰:“明天子在上,可以出而仕矣!” \hfill --- 韩愈《送董邵南序》 535 | \end{proof} 536 | 537 | \begin{corollary} 538 | \label{thm-corollary-example} 539 | 四川话配音的《猫和老鼠》是世界上最好看最好听最有趣的动画片。 540 | \begin{alignat}{3} 541 | V_i & =v_i - q_i v_j, & \qquad X_i & = x_i - q_i x_j, & 542 | \qquad U_i & = u_i, \qquad \text{for $i\ne j$;} \\ 543 | V_j & = v_j, & \qquad X_j & = x_j, & 544 | \qquad U_j & u_j + \sum_{i\ne j} q_i u_i. 545 | \end{alignat} 546 | \end{corollary} 547 | 548 | \begin{example} 549 | \label{thm-example-example} 550 | 大家来看这个例子。 551 | \begin{equation} 552 | \left\{ 553 | \begin{array}{l} 554 | \nabla f({\mbox{\boldmath $x$}}^*)- 555 | \sum\limits_{j=1}^p\lambda_j\nabla g_j 556 | ({\mbox{\boldmath $x$}}^*)=0 \\ [0.3cm] 557 | \lambda_jg_j({\mbox{\boldmath $x$}}^*)=0, 558 | \quad j=1,2,\cdots,p \\ [0.2cm] 559 | \lambda_j\ge 0,\quad j=1,2,\cdots,p. 560 | \end{array} 561 | \right. 562 | \end{equation} 563 | \end{example} 564 | 565 | \begin{exercise} 566 | \label{thm-exercise-example} 567 | 清列出 Andrew S. Tanenbaum 和 W. Richard Stevens 的所有著作。 568 | \end{exercise} 569 | 570 | \begin{conjecture} 571 | \label{thm-conjecture-example} 572 | \textit{Poincare Conjecture} If in a closed three-dimensional space, 573 | any closed curves can shrink to a point continuously, 574 | this space can be deformed to a sphere. 575 | \end{conjecture} 576 | 577 | \begin{problem} 578 | \label{thm-problem-example} 579 | 回答还是不回答,是个问题。 580 | \end{problem} 581 | -------------------------------------------------------------------------------- /data/chapter5-usage.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{使用说明} 3 | \section{基本范例} 4 | \begin{table} 5 | \begin{center} 6 | \begin{tabular}{c||c} 7 | \hline 8 | 本科生论文基本结构 & 研究生论文基本结构\\\hline\hline 9 | 封面 & 封面(中、英文)\\ 10 | 扉页 & 题名页、独创性声明和使用授权书\\ 11 | 中英文摘要 & 中英文摘要\\ 12 | 目录 & 目录\\ 13 | 正文 & 图表清单及主要符号表(根据情况可省略)\\ 14 | 致谢 & 主体部分\\ 15 | 参考文献 & 参考文献\\ 16 | 附录 & 附录\\ 17 | ~~ & 攻读硕士/博士期间取得的研究\slash 学术成果\\ 18 | ~~ & 致谢\\ 19 | ~~ & 作者简介(仅博士生)\\ 20 | \hline 21 | \end{tabular} 22 | \end{center} 23 | \end{table} 24 | 25 | 本科生论文结构推荐按如下的代码形式来组织整个论文。 26 | \lstinputlisting[ 27 | language={[LaTeX]TeX}, 28 | caption={本科生论文结构}, 29 | label={code-bachelor-structure}, 30 | ]{sample-bachelor.tex} 31 | 32 | 研究生则推荐使用如下的代码形式来组织论文。 33 | \lstinputlisting[ 34 | language={[LaTeX]TeX}, 35 | caption={研究生论文结构}, 36 | label={code-master-structure}, 37 | ]{sample-master.tex} 38 | 39 | \section{模板选项} 40 | \subsection{学位选项} 41 | \begin{itemize} 42 | \item bachelor---学士学位; 43 | \item master---学术硕士学位(默认); 44 | \item engineer---专业硕士学位; 45 | \item doctor---博士学位。 46 | \end{itemize} 47 | 48 | \subsection{其他选项} 49 | \begin{itemize} 50 | \item oneside\slash twoside---单面\slash 双面(默认)打印; 51 | \item openany\slash openright---新的章节在任何页面开始\slash 新的章节从奇数页开始(默认); 52 | \item color---将论文中的链接文字用颜色标识。 53 | \end{itemize} 54 | 55 | \section{封面及正文前的一些设置} 56 | \subsection{封面} 57 | 本科生论文封面直接使用\texttt{\textbackslash maketitle}命令,将编译生成论文封面和任务书(任务书中的各项需要自己在assign.tex中填写),以及“本人声明”页。只需将\texttt{data/bachelor/bachelor\_info.tex}中的信息填写完整即可自行编译生成。 58 | 59 | 研究生(包括博士研究生)的毕设论文封面使用\texttt{\textbackslash maketitle}将生成中英文封面、题名页、和独创性声明与使用授权书。只需将\texttt{data/master/master\_info.tex}中的信息填写完整即可自行编译生成。 60 | 61 | \subsection{中英文摘要} 62 | 本科生和研究生的论文中英文摘要为\texttt{abstract.tex},请直接按照模板示例进行更改替换即可,关键词以及其他的一些个人论文信息在\texttt{data/bachelor/bachelor\_info.tex}或\texttt{data/master/master\_info.tex}中自行定义。 63 | 64 | \subsection{目录} 65 | 生成目录为命令\texttt{\textbackslash tableofcontents},需要xelatex两遍才能正确生成目录。 66 | 67 | 对于研究生,论文还需要有图表目录以及论文主要符号表。分别使用命令\texttt{\textbackslash listoffigures}和\texttt{\textbackslash listoftables},而主要符号表则在\texttt{data/master/denotation.tex}中,请自行按照模板给出的样式替换即可。 68 | 69 | \section{正文} 70 | \subsection{章节} 71 | 正文中的各个章节,推荐将其每一章分为单独的\texttt{.tex}文件,然后使用\texttt{\textbackslash include\{chapter.tex\}}将其包含进来即可。 72 | 73 | 章节中的内容如何编写,请见\hyperref[chapter-basic]{第\ref{chapter-basic}章~~\LaTeX{}基础知识}。 74 | 75 | \subsection{参考文献} 76 | 参考文献使用\texttt{BiBTeX}工具,参考文献的数据库为\texttt{bibs.bib},可以使用记事本等文本编辑器进行编辑。具体如何进行编辑也可参照示例模板给出的范例来编写。在Winedt软件中有具体的增加参考文献的选项;在\url{book.google.com}中搜索到的书籍,在页面的最下方也有\texttt{BiBTeX}的导出选项。 77 | 78 | \texttt{.bib}参考文献数据库文件中,每个类别后的第一个为标号,在示例的\texttt{bibs.bib}中第一个书箱的标号为\textbf{kottwitz2011latex},在引用此文献时,使用\verb|\upcite{kottwitz2011latex}|即可得到此文献\upcite{kottwitz2011latex}的引用\footnote{左侧“文献”的右上方即得到了此文献的引用。}。 79 | 80 | \section{正文之后的内容} 81 | \subsection{附录} 82 | 附录和正文中的章节编写方式一样。无特殊之处。 83 | \subsection{攻读硕士\slash 博士期间所取得的研究\slash 学术成果(研究生)} 84 | \subsection{致谢} 85 | \subsection{作者简介(博士研究生)} 86 | 博士学位论文应该提供作者简介,主要包括:姓名、性别、出生年月日、民族、出生地; 87 | 简要学历、工作经历(职务);以及攻读学位期间获得的其它奖励(除攻读学位期间取得的研究成果之外)。 88 | -------------------------------------------------------------------------------- /data/chapter6-implement.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{模板代码实现} 3 | -------------------------------------------------------------------------------- /data/chapter7-conclusion.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter*{总结\markboth{总结}{}} 3 | \addcontentsline{toc}{chapter}{总结} 4 | 5 | 本文主要介绍使用\LaTeX{}进行撰写论文的方法,文中范例丰富,涵盖基本的论文使用,在使用本\LaTeX{}模板时 6 | 可直接复制后进行内容的替换更改即可使用。 7 | 8 | 在第一章主要介绍了\LaTeX{}的背景、本模板的维护者信息以及开源协议等; 9 | 在第二章介绍了各个操作系统平台下\LaTeX{}的配置方法; 10 | 在第三章介绍了各\LaTeX{}版本及软件的下载地址; 11 | 在第四章介绍了\LaTeX{}的基本常用语法以及代码示例,高阶使用技巧等; 12 | 13 | \ldots\ldots\ldots 14 | 15 | 通过使用本模块来完成论文,可以基本掌握\LaTeX{}的使用,也在最小学习成本的基础上满足规范的论文格式,省去 16 | 后期调格式之苦,使作者更专注于论文,亦可更高效的完成论文。 17 | -------------------------------------------------------------------------------- /data/com_info.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | 3 | % 学院中英文名,中文不需要“学院”二字 4 | % 院系英文名可从以下导航页面进入各个学院的主页查看 5 | % http://www.buaa.edu.cn/xyykc/index.htm 6 | \school 7 | {XXX}{School of XXX} 8 | 9 | % 专业中英文名 10 | \major 11 | {XXXX}{XXXX Engineering} 12 | 13 | % 论文中英文标题 14 | \thesistitle 15 | {基于Texlive的北航毕设论文模板设计长标题长标题长标题长标题} 16 | {这里是长长的长长的长长的长长的长长的长长的长长的长长的长长的副标题} 17 | {How to design the BUAA-thesis with \LaTeX{} very very very very very very long} 18 | {English sub title, It is very very very very very very very very very very long} 19 | 20 | % 作者中英文名 21 | \thesisauthor 22 | {姓名}{Name} 23 | 24 | % 导师中英文名 25 | \teacher 26 | {导师中文名}{Name of tutor} 27 | % 副导师中英文名 28 | % 注:慎用‘副导师’,见北航研究生毕业论文规范 29 | %\subteacher{副导师}{subteacher} 30 | 31 | % 中图分类号,可在 http://www.ztflh.com/ 查询 32 | \category{TP312} 33 | 34 | % 本科生为毕设开始时间;研究生为学习开始时间 35 | \thesisbegin{2011}{09}{01} 36 | 37 | % 本科生为毕设结束时间;研究生为学习结束时间 38 | \thesisend{2012}{07}{01} 39 | 40 | % 毕设答辩时间 41 | \defense{2012}{06}{01} 42 | 43 | % 中文摘要关键字 44 | \ckeyword{北航开源俱乐部,\LaTeX{},论文} 45 | 46 | % 英文摘要关键字 47 | \ekeyword{BHOSC, \LaTeX{}, Thesis} 48 | -------------------------------------------------------------------------------- /data/master/back1-achievement.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{攻读博士/硕士学位期间取得的学术成果} 3 | % 此处标题及内容请自行更改 4 | \noindent 发表论文: 5 | \begin{enumerate} 6 | 7 | \item 8 | Gang Bai and Yue Qi. An Interactive 3D Exhibition System with 9 | Global Illumination for Digital Museum. In Lecture Notes in 10 | Computer Science, 2009, Volume 5670, Learning by Playing. 11 | Game-based Education System Design and Development, Pages 85-92. 12 | 13 | \item 14 | Hu Yong, Qi Yue and Bai Gang. Modeling and Editing Isotropic BRDF. 15 | In proceedings of the Second International Conference on Modeling, 16 | Simulation and Visualization Methods (WMSVM). 15-16 May, 2010, 17 | Sanya, China. Pages 74-77. 18 | 19 | \end{enumerate} 20 | 21 | \noindent 申请专利: 22 | \begin{enumerate} 23 | 24 | \item 25 | 齐越,马宗泉,白刚.基于任意位置多球的光源方向标定[P]. 中国发明专利(200910092909), 公开日2010年2月17日 26 | 27 | \end{enumerate} 28 | -------------------------------------------------------------------------------- /data/master/back2-acknowledgement.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{致谢} 3 | -------------------------------------------------------------------------------- /data/master/back3-aboutauthor.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \chapter{作者简介} 3 | xxxx 年 xx 月 xx 日出生于 xx 省 xx 县。 4 | 5 | xxxx 年 9 月考入 xx 大学 xx 系 xx 专业,xxxx 年 7 月本科毕业并获得 xx 学士学位。 6 | 7 | xxxx 年 9 月免试进入 xx 大学 xx 系攻读 xx 学位至今。 -------------------------------------------------------------------------------- /data/master/denotation.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \begin{denotation} 3 | 4 | \item[HPC] 高性能计算 (High Performance Computing) 5 | \item[cluster] 集群 6 | \item[Itanium] 安腾 7 | \item[SMP] 对称多处理 8 | \item[API] 应用程序编程接口 9 | \item[PI] 聚酰亚胺 10 | \item[MPI] 聚酰亚胺模型化合物,N-苯基邻苯酰亚胺 11 | \item[PBI] 聚苯并咪唑 12 | \item[MPBI] 聚苯并咪唑模型化合物,N-苯基苯并咪唑 13 | \item[PY] 聚吡咙 14 | \item[PMDA-BDA] 均苯四酸二酐与联苯四胺合成的聚吡咙薄膜 15 | \item[$\Delta G$] 活化自由能~(Activation Free Energy) 16 | \item[$\chi$] 传输系数~(Transmission Coefficient) 17 | \item[$E$] 能量 18 | \item[$m$] 质量 19 | \item[$c$] 光速 20 | \item[$P$] 概率 21 | \item[$T$] 时间 22 | \item[$v$] 速度 23 | \end{denotation} 24 | -------------------------------------------------------------------------------- /data/master/master_info.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | 3 | % 研究方向 4 | \direction{大数据和云计算} 5 | 6 | % 导师职称中英文 7 | \teacherdegree{教授}{Prof.} 8 | % 副导师职称中英文 9 | % 注:慎用‘副导师’,见北航研究生毕业论文规范 10 | %\subteacherdegree{讲师}{Teacher} 11 | 12 | % 保密等级,注:非保密论文时不需要此项 13 | %保密论文请更改‘buaathesis.cls’里相应代码 14 | %\mibao{机密} 15 | 16 | %申请学位级别 17 | \applydegree{全日制工程硕士} 18 | 19 | % 论文编号,由10006+学号组成 20 | \thesisID{10006SY0000000} 21 | 22 | % 论文提交时间 23 | \commit{2012}{03}{03} 24 | 25 | % 学位授予日期 26 | \award{2012}{04}{04} 27 | -------------------------------------------------------------------------------- /data/reference.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \cleardoublepage 3 | \phantomsection 4 | \addcontentsline{toc}{chapter}{参考文献} 5 | \nocite{*} 6 | \bibliography{data/bibs} 7 | \cleardoublepage 8 | -------------------------------------------------------------------------------- /figure/buaamark.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: potrace 1.7, written by Peter Selinger 2001-2005 3 | %%LanguageLevel: 2 4 | %%BoundingBox: 0 0 468 468 5 | %%Pages: 1 6 | %%EndComments 7 | %%Page: 1 1 8 | currentfile /ASCII85Decode filter /LZWDecode filter cvx exec 9 | J.'GRZOs"gA.TUeVISs@bR,/NO(T\_Yh4@J6j[M4)8+mQN'n!XZ\3Wk0/t#m@KDR@U`_@Z+ 10 | VM&=\m[?*),CGm7%EIf1*'*k!MG$G0/f@qP[O^GO\1h)BG;q0JECu/#S"dP4VFeK3X>qqag 11 | Hf\-T7RXUp0s)b'T[T&#POEJ>">L*m>rUSE>!.QsTt#ff>/f/Xk@n;KJ8m[mcUIMkU:kf^T 12 | 9%airqQ\:W@0Y@m:MRh^ED0c4q> 13 | /q$F=3%ECE^H2NXBhD-`Db-TeXFZ338K^312A):J]+O9A][-\-NL+i/UF1^aEkKu35n8'03 14 | -*U_!NbLJ-4fGPliXd`Gb%rl0iir.ZY+mIA0tU4h>d;*t";[2]_qZmJ-Rh%)4fiK6hY=(.@ 15 | `$ElBm\_;":Vfo2n7/.XG@<>o#n>A,Fl)JU+E.ih,\VP15/h$.<)=r@P;I4C]DD 20 | 4Q;sgbu8ko[<#Ad$=ko9k.]m36I0s-FL-\=>i'hRoQDRMMN,+QsL-LjJlm'7QgdAK7D6kW: 21 | `GOM]E;W4VoDYNWq;D5tYWE]kAAiQZI6eA(;Tp;qAd=j;91e%K/nS+i;7;#3!.,e0qbbeV2 22 | F#dQ1u8%\!i6ohdO->P&:`s`I6R*%RG#a>1/mm>$%<$)=V$ 23 | 7B7]2K@Z2;'[LO#(fX[9DT"#LErZ&s@-FZCoRgP"][WNU-OP&k3C)U^^[9MsFGqa$9Y 25 | oECE(g\&E;sRSr'g]N2+U*V'RbO00M_OcWjqR_fS&I6-i7Y*l,]H%b[O?g90tSgc;bd`9;2 26 | a7b)ONAX&C\EG:,1ao2Bpod"3F_`%=>7$[LCsVh0+hbi3(Pt#+8Ak5%N(%Xlou]R#8Ue9;V 27 | Y3W,05bZ\jNkX_KUX>5;Ol)M*RGZ*^GpX;EW6M_8De6:Qj-QpW6.DcM+Q3'cQXMFt^aXrMAdKU=ZJoLN:Pho\c*JqB&6]Hoka0;b!f@M"XAo%Yu5*emF&"OUE;G3_V#&/1(0Y,9r1J$QJ7@Lb!B_sfG(G+'2"IG_4rsq0N2MWFF]6>UJbaIfI;-=?"_E 33 | `1_YF/l(Xr5.n2"k7b"0!'RDJ@rSj+eMaJ5<%>'*[G0`,tXdrCJ7?1CSaf!GVT3PrjcGa[# 34 | 9j&qgi4qeh9-u4%;b*M:3E&!C?&JQAYJ.\*`>o5Uns"B`VNNN-C 35 | i5Jj4CV/^8&@9H[:oEV?RmE`S!CHif!/^gOP2Cg2/pI8'F.SeC,7m$>2,I/:LK2_N`7;-U/ 36 | f,"2)At,1M2ZDBr/AGo.@OF_e0-ZjM<:JWW:cZ2L6+V4e#=aRD?=H";n2ZII=W'XCHl$;i+ 37 | 5DlSdWN$='EeSMY%^R>33sr2!r^3FjZ-o\%k;.B,+j>4o;^9rOs(hL-r;eb'!XQ"+>BPa7K 38 | @flf74`4B8#^gE5c`m5VFDl$qhZ12M\ZT1qS?8Qk5/NpGV/%eM,HAYP.MMFm:HM!T=)di:Z 39 | +Kg#CCg-WbHS:Y6b#;pUY[-44Ut)!R7DX\PWAT<*$=,D)P==VO;2LO*Q:&\SHf``)M(=U#R 40 | 0$Fq._GPDkci@aH']rDJuj#pmNa__;c.AKWEeljXtS![[%9V0Li_sKjk@`9Pk28Am=+j^!` 41 | or7;q>/ALm?9\_Q7#18oi*PpuYeq!T90abO%IRZmgIFF5u8^/qtQ7etmodGq?Cio(9q6[j> 42 | /4*1au]iF=ckK^2s97VrZu<\\g(X;T3 43 | STMZ"t3e`*pF?LY@$_K2u>dnM`q_Vpq.L+UNlqpqAihPhAb-SN3clKOkF%q3.]_QsYTTm=+ 44 | (Fb?m#q[rP4pe9P#tQ]ulZ18\BXG0Eo[ZL9m\g=aHI0OT>PY[,PcVF4DbbMarKqO?.pLnOX 45 | Pi+b._(g[6%#m#nL/!W^0,7.WI.3']]PJ9*9/n[Y^q_;akoMIX7tOn11q[R@U;`&aPk'+Oeq,Q8ufsDL6^ba,2CfF>AZ$:DV9BB 47 | ?t0bpuq:2,4JQJBoJ6I@b/D=K!b;1jjgqRit6FMQ`mfTBZ/=1`$[E>SK=Td6CP/TmNXR(VL 48 | JQMl0TM3b0nda$ELST##=Q:^0T^1hXZB$+\<18U@Q@SJ1]g+BO(2&RGL]C9;o.@WN9N`c9U 49 | aD2;pm&7p<(LGh12CA+/Rh_*X-(C3+X-K_[Vs0q8eOj(Q.8Rc-$#_bTDg4aiR`b$6_pm,_L 50 | 9t5TW:./X$Uf9\qP<@LJE=^NlK\d'fc#_8? 52 | hJ6dfI=4QL.NILWrJVp(RRYYe!mKadNb$rkh*T#U-fQpC#!ASAGCT"YKGB.R)9:e(!u5mul 53 | ,Icr&Jlo)E<_J\K#g8'>H-,`c!,V^(A6=Sg`+=_d?,u_EW2ddiWb$t$VoV]h"G5hc 54 | KY;'mAZGlX#bH*ur,a6"bNV@Tj)e>$?8euj_It,?XO*fa`6udHJuu\;,9V_3L/TXtDidU)@k_qRG$o!HN/>$OH$u(0+,)h.#P\$u`?\Y.k8[Qu\Qr7g.>i 56 | uOJjm%\V==e2(cR+0p9G&12qR4@HgW'$lCrCnGoVUu`Vi?e5j]_6%)OY0U#H5jT88R^sn2@ 57 | 0EO,S,H%"tc4gjMc$j,$lQ/me"%Ujh`:Y@A]:EY`gELc2+ASV9h'_HLXXkj]$GKW."Z"t^# 58 | hDZhQZIuC0^:a6Qg&H#V=3!X5P'6NC'T)BI;PsXIWbCC-mY7`6Db1"VV*a=)6;c/P@ 60 | #nLlD=gqFk&,o+FfUUT.>3#ITRX9NWfH*C8`%mL`56MOs2CG=C=n@S18:rg.E/*/Ds2--*e 61 | *Y)Em9KcB(5o=>.r$0.8DkjM"X%ZpBN2qbO+4qlF@*HUoJ.%Gc5B^CUTC?Sp#ff2Mml)Cfn 62 | 'h'dJJTLha^VAX^[hIaE^^=%GlaKb/IlC4.bJn`.8F-j"WBSD?W8JM0S%afp_BlQ>77J]F# 63 | -cJ"-:o*/nh)=rb@,_@A+0N0NQdAu37C0qsU4!^[ELo)fB1CVn_5(pqaJSBpjX!VWK*/"k; 64 | ;/XT:.P0QC.l4Cp.*R.aV34qmhNLX+D!#nEBR3/ugJDQBZNtTL=S`30s,tZMkec_h%U3qCBZ=F,LXPB7mZU)JX-9 67 | 2aN2D'F&r+js#)Dq+bM^\TM&sXeEJJ"J#g@&o58PXJ3%oB_LpYeH(BgL3$hL28YV)kAYgdGM],"h6Uj,Be 70 | >bA9,0p[8H0/a4:(:5kJ@J+I&dF(UZY78(UK:H?h([Wk#?&*r.1W7`OGYf!kj^R0[k+W$5u 71 | )>BBo7_#6J;ZJC/Iqnm^j2[:QS]!a*7 73 | XKaOlpJ1*g;9CA>3P>UIY@-8s9`>%h..7m8m_klg%a]p0JN34S5i[AR#`Hu4^"L\QS.1#?+ 74 | /T5)e[bmrcd%p/IDsG(`'e'@bD^h!2l?[&YZ"rMVeZFsL-;K((S:dn'?3\cM:r[%klAgg": 75 | l(!-;&YeAOIe-o44b+1O+A:7mk[rNG3W=Y[eNuqesGsb@+B)9WaIe51j^QiMCX3'ZANS?r7 76 | u#ZHcAaQ-mE7*C9*M1CZk-FGCCmCfYVF4>)q'n=*p.Re+[R$Tg 77 | &*mgpnS@>kXO-/Qk?='MiN@AVFd0-$#?bmENG;M@k/.0eJs0#9up^)A;7jDU[FO_\K.OuCiO?>"!Lp,r-1_@CU,SdOMY!b4*F*kDQ;cD7@RXS\5/rM 79 | a0t"_DpF7iQV0kCrj&AEl%J\a?='HK$H*<--S35Z`^-$4i1P]+NQO>j+9e+We4Kog)'>SGVtC_ 81 | Jd17Z0g)cF7P,`_Atbg3Ad=/Et/]jt,?p(JLp>1_?@AVHg:4>UYMD@7p]1:R6,PUMaW1XY7 82 | &V.KGGsE*I"r3f7h#_n;BdMMB-0k%Q5PbW:mJ^jP26:5^)j2]Zl_:f5Q+MNc2>o5qggE-D$ 83 | Ah@KCa.E8KWJlu"YQLReXL;+7EHS*4Jr9+7B'dq.e?SgDO'=rB_o#8P:J@"UOFVi$$PEn3gdh!Dcr7RDjMNE`5lBB 86 | K!ck*g'B'f_3PZ#$U"7S(C;^,S!]F%Y)=(pPTL!l>:PBF3V`c-j4K@"! 87 | !!q?NtOlJ.G4%m"DUM_K@$8W,#eK]#d<>GMXq9_/pmm\8m,>jCh@8,5Kh]qk"N:4mSeCE!3 88 | "(8YCQhSu427bi6F!flnGTuaB=!07DR/;3`p.9H 89 | a&76iH;sK2/N>kcWU,nt]hOZSuZbt4Mr%YI)dq0iSr-'[2)7Ln#?qK5KGU 90 | faX%qCmKmnPkgi[2W$'=tcP8oS.*.fa2HL+'ePq@K^$=U&6Zi 92 | e">-/U+51n4q$-%`(<+s>mJu^:un]ZrRMFEN_]/K?^O(CTJW8Vfd 93 | *k?hc+m#Lg:RX8MDKj8_718!q>HPgrg\KGH\*n"]R7@/-EAOA]HMJ0Hk&>QmbB7Ccq`,B%WaiA>g$tPC5hc).1"+eW0N(oL/aQO:ZFNQK*(>ZDg1M"M>Z$Zn@.La;,qp?1tPZEr 95 | Q1'0Y+f,.l-[6pR`3NletkEU0**=#csog2OU!hG$8?2Wc@sCGK5Wn&11\3=VE;lSm*?81HR 96 | rHGlsB#,YV_9fl7g,]*lb67NWfQ$du^kiMJMF3VO/@i`Ye"H)">VVBEq5@(FHi'I+\mTJ_O 97 | ,&VRRq!rRQ$oCc'1V9k#okW5L"mWc7P3cZWE$qZn[5@=rZGSNPFV00Q0g>aL\jf-_ulg3*$ 98 | ;Ll(!\S@Qe,Mgj'3=S(P1pl9JuCVIk4>[1ie`YaT:Pam%LlGaVr#Klk^cLFA'\qqhg)h@4V 99 | [[r@jjG#j=D@W7YCIL<4Aec:g78.hP_SR\5AJB#5HZoFN#)3`5;-S[bi#k@Kqb>*4@gAQ31e,JfG:6X:8X:h.[^I#+?e>9[.kO(j*j*51fKF.:>f 104 | kGD:jBQ7B/Y2TF:&.Dr90Mo\q+G1M^6U?7\C*4E'`l!?-Zskp5`'pGGfRVBWN!s1U)'I:B2 105 | MD3enu0@N5VeKgL1;ZS,%2Q3^kcrS,[=mjJW+1C&]?#C,E`F(PIZLrEs!9h`"\?$`hG%):d 106 | bC?V,Ch[We,sm!JEqb31*\2UFM7*EFKfFAOAL@%P9i.8tg4OUd?@bM[N"LQk6^^<05*Rolq 107 | >-`e;,W4I85%UR.juWEaFR'+W>U7^*(#4X8d^Z4Ye^G0Pp7paoVOs:ZF 111 | V$W&5.We3XJ1$"f5mAVWB>4N*uN:kTVRP/4)tN/AJ3B?lMXmaom[)8g@Hr`FtGn)U+1=HMe 112 | m\64G4D%e:m4+NR)cimU^]uI3@^6pLrk;\@^t:.M)&Ou##WN4)k]_ 113 | oThPP`@MlYT[3U8Eg#u;k-3b%TbmV$RR!E:r06:+DF 117 | %i1HQ1Sip;'SG>F%.d?H6@;NCY[$DJP7VigV3Q!KAuKc%?/6`gqX'&$Oc^^:10LnlN?5CQS 118 | Q*r,?TY`k]W^<)C46@i3IqQ&!PH@N4FOF'!m/=??Q&-iKIcCUc1!\H%1fktPih0=8@O`f6D 119 | _)Q-X(;\>D;AS)<\akWi7^JQO;%q$9PUc\h]hX6E8;#CcQ?k=Q/%*Tl.[b!642la._$e*nF 120 | E,\&@'Lk5,k"1CQ%f.d\#@14n3RBpcJc:UiJp/p_!7L)9M\aK0-Vu=g9gT:9?Dal8F>)&+& 121 | pha)O'AmkCC\mj&24N69.7=U"gRXn'5tM4HZ4=&@ 122 | S>;2ATh)/cd*K\b%5g-#hKoHG\3OiXia+t4gWX&X\`ehJ@!NW!-&kN%*71&*Q+gm>;_Wl\# 123 | 8W*ee4#V.*^DbgCC7&e]l&Fs:Y;"R4"KW4"Bj?@=Q!F8+`h%Md>^e0d$(fDg!f,+_AGY3PN 124 | @4[gg,=FfIQ#_lniQ*d00^'J:cjCm<~> 125 | %%EOF 126 | -------------------------------------------------------------------------------- /figure/buaaname.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: potrace 1.7, written by Peter Selinger 2001-2005 3 | %%LanguageLevel: 2 4 | %%BoundingBox: 0 0 468 82 5 | %%Pages: 1 6 | %%EndComments 7 | %%Page: 1 1 8 | currentfile /ASCII85Decode filter /LZWDecode filter cvx exec 9 | J.'GRZOs"gA.TUeVISs@bR,/NO(T\_Yh4@J6j[M4)8+mQN'n!XZ\3Wk0/t#m@KDR@U`_@Z+ 10 | VM&=\m[?*),CGm7%EIf1*'*k!MG$G0/f@qP[O^GO\1h)BG;q0JECu/#S"dP4VFeK3X>qqag 11 | Hf\-T7RXUp0s)b'T[T&#POEJ>">L*m>rUSE>!.QsTt#ff>/f/Xk@n;KJ8m[mcUIMkU:kf^T 12 | 9%airqQ\:W@0Y@m:MRh^ED0c4q> 13 | /q$F=3%ECE^H2NXBhD-`Db-TeXFZ338K^312A):J]+O9A][-\-NL+i/UF1^aEkKu35n8'03 14 | -*U_!NbLJ-4fGPliXd`Gb%rl0iir.ZY+mIA0tU4h>d;*t";[2]_qZmJ-Rh%)4fiK6hY=(.@ 15 | `$ElBm\_;":Vfo2n7/.XG@<>o#%IG?.ep.[o;G@CnTm 19 | <,$#Vi6udR^)AsSRTiEeP_a4C[0`dFg"TKYF!-5%W,S&WafW]*V.%6]>m(u"g),R2drZP1@ 20 | B.@gd->:SL:9IFY?E?S-utc2fY*>7@VkH"oOHBfN2%f/Qud2#<&6U9XC5dWfnPD*]9#jH,D 21 | 2<<\,qWCfG;.=))ItGEgGLh[R#3d\i&51;*i?^)e1i"+raV7nr6XE1fg(&PHf/p,GQ;>(JB%/__-u@hjq;'sGC=RasK37i 23 | =B6LNsNM!]$+fd\Fk;6JnN3tM!nVQMB2:6Tp]#%S!eTuaMBdpTAfqkX@Y.7/=h:C1Ze_"5Y 24 | @(Xug;i'52NPC,mTrM2;gpM*2[!>G9RlaJPojXY!pE"Ob?8sMo6#Bc*d':#=GSP4O*^7^:2 25 | d:HT[Iqd=7C@mKc]?_,Bs76absK,L#Gdf@-cV]Y&N"BA+n\#1E4m/<11SPuoU^injrcG:Ef 26 | .XP/k);T%"Z!,$Pb]`o4I+7>AnKKjj1]mG/@?3",3bgI$2AiU.pP:!DVshL+%5SPdiCO$MY 27 | I<#I:u`Qll\c3V,@U0)Cti0SDpGX"Q@rqB9&J=`IaRP>rsl!R!3'jY_?8dgutVLb`.R-&XD 28 | (?ZhJX$!X$=WXHj6Af]bh2]%"N8jr^$U$/%_uiPdoAeRH=V"8)S/:8GS 30 | rbg8.ZPCJFX\k6Cr._u7A;301tUe-#]Y_1gnMcVlWcH`L23d>Zrl9?g?FE]:j%AlE,qkFK) 31 | I*U2-iD%C;Ll?7?,bEhT?,o)jfUYD=Z'3b*WV+hiaNYcb.1f8ddE1qSjk^Zt 32 | ONa;\9W!pH=e/8i#^S#<;6Ufu&RC+6.sfcL,t_gQI+NMjbi$r^jW3,6q@qn?b4)pEqSOHBs 33 | H1*^BGJ5hk:'_X:B)%dfodfb`0UmBFhD+[qo"Y=N9Xd`7*BI:OtL+RJ;sFFE^CR2a^o:fM2C-'d?"\&W;Gk[X*o7OaeH4Qr1 38 | AaPA[?B+j#7c;O#*8B\5FZBjQ5AhZ!^<2JD-h/o!u9HJnhnlHs)qm$GWXkPb1?Vo!57>pII 39 | (cdq(8"o%EO4ELZ[*WF8U;B2#N>AOn(6l(\CbWp!@SJpGRV_(YagouVBJMP=Jes'BG)I.b. 40 | aG$9$PJEF)Gd`o0d+\/jdAlG=kRH44JLW0/8[r98bWjjXFiNG/:D!7lH 41 | N.+HVKGU/XF&ZP/7O.&65`V2VH]?"suIB/5LH`7WW]S?1Z1&J@8+rGHD&t2G:*5>"2.bogI 42 | cf'3!'`Zs&aN&KR[Kc3tjg;MC*!V/uAc$NT%j.ito6daqCE@ABJs[@*ud!JL#3Z)og6_]0^ 43 | ?P&gFR=N+W3p%cCRm.%JZFe8oD0tDs,cP`\s6qnO^14,7_H34E"T-,sOL$UqD8G 44 | YXa,H.!4quA"@>5hH*tF>pa0B/io^fR0NgUDonP% 45 | ;;62h[u-Jb,7]PG%VR/B37!hLm,uG:aJ$G0ssDc01j^4BMunhj#P;%I`/KLa.+&GM`7\pOt 46 | mAhp(sY7S;M]g5KW?EZa8\*E8anMB?+>C>Y[6rs)N%$cF[Q^QmS+('KTh1rO:i/HO\6(-n? 47 | ]=)WS,"mCk&JT)X0Ve'Xef)-KHc4%.r_3jJ.J(dr4FOt5;YKSiY#B0.g-nN.W7re:)1qZbH 48 | SFr=mk:/b.UGC0iokHNU@W1.#3?n!:djACNe.s<]oFfip^09)f7gRCn$nOAB'@b\&M=Y1CF 49 | LM.1rlq0bDlsG!`OGjMspD.\Y#+'Sc:4t!GO!ff 50 | aG9ZJ?0/SNWO(:c;hboXm!K(_Ml5\86^/?T;YNCmIFF2pu_odAB-SE">3o_&8*m-GT!#:1D.TM?W]](6G`d^ 53 | hZGp(Pa[ERs`0@6+SOjHi`]09<>5PC3n?+ZtMFN3"$E@[gKIfYO04KCMXNuce-B.qsV;ROa 54 | VVp`9Ia;o#O&fg&eg5#o_M&Wg#.TV(I!pt[h8S<#KncobUuqrN>Y>L+NbIFOjB/J&LW-okV 55 | l"[]!1.9Tjbt=!"W!/2)Hj&hTVtUpW#B'bf#e;nZ6u#TD)QGA>*Z%fkJ[RObmn?jE;PJk]F 56 | 9%g8=#)[12uY0Z%_OCaGc>gOPS/1(f-C$WYX=rP%r.jA8F_2XU9TTJ8:5<4UVUGL!j:ck%Y 57 | 0$ZfZQl7eG#Ci5nIlRAM*[VIZrN@-g_4aHAp*B=N">H#-;eS9S_mq<=*j'_bdi 58 | E`mRTp5d81qBR"k-B"e^FfF3YA"^HB\OT21O?&)]*a4A5M/po3j3`uLLW"FOP$UTQ% 60 | nln7a0:t%9RLhr@q5pR00$$ZBQ3+X_@1lnad"H7P(msaIcbmga%TFZ(gKc6^b43o6A[Is1p 61 | 9ZZ$cdXc8k,VX\8Oh2L.9=CR!CcR8aGT?jeK-'W_;tetMMC.F]V*@p@#g8?UJd 62 | +GibE/d?-3pgL*F>82Q\;3Uoq"89OrG59]5*XG%2Zgjg'#M@X%!%qPHZba/2fa6p2kM"";m 63 | FE.XbM>bGl2EJp]LKiY29^qtl*GjcPJY$!^.gfXp&Z6mH,WW%=)#4#+thJsU_"UtY`i`WuR,g`D6QtrX$kk=`;.\93sB.MJ[:UFW/:=9Gs!J[9'/0JhGfOg>`3p#F3VQ 66 | D_5c;+s"('hKdA%a1"=QZH=`sfssks0^E39I?cIukM%W^*Y>:EjE!jH2F+LZk(?E;F2]=UC 67 | >tD.m_X@LD&CuVI$KS*j01^74M3+=mm[(nm]OmC3Ah&1ELh^` 68 | F$1`i-/oZHe:o+it!_&V,=#Ai=I&8gRaB-1HNl<`5`FUp'W5-)*Z+P'ofI;s##DBe[KcA6.o9[RI&kj 70 | t@NEQA,uDABL!PNXf,\UgFj+`/lP5"lUZi#[NGNE"+FF-N=RsEAU5L*]9%cD(o3p`*m>$MT 71 | 7J:-Jp($U;s<&P@b;g9%5dJOH=&*'Sd%Hd!hH/F#'all\VRG`HYgm-7Fla].4)1LgXZsM)] 72 | +r+K%K(UXKM[JB3H&GL\77I)25#^k$1U2EM&+#qU6ue,/lj1hsM/'; 73 | 6DP0R9Ar7Rhc,,2=ArWo`rh>A&-Kc4$[!q-'2QL@l6fq5lm&@<>.#MVK,mZc5I#+_*C^FHe 74 | cmIrDcuWi7Shq:m7:;-H`gu4UR&^FC6>30sg/>'+$MIN*VEfm8e;^B#naO]>Aftg.Ya)Ra7 75 | 1^ArQ$?r=R^PpUT9Z@u_fCiRoM]\8QH+A1&W6`AVRtiIF!q$QbF3ne8G0DUW%A%O#ZZcPe;pc4XHJ\aW> 77 | \_Gi-`8M"ce`CK,M5[f)<"!o[,:lp%1"K_cHnq\3ok+,2@EeDL#o]H]p[fh*gab33ZZ$#PW&B:DFreW.l 79 | @YQ.Fp#8/M\:>fF,V95-`ubo^UOV[9)[h@&MK]bolt)Fk5"Ak7Bs9#)PZbFQP_QQ_a[#,X= 80 | D)=PAuCs:BYMC'.[d,$E$du.=;<]le;^O%57u8'Fb)o\"HRI'HY#O]0LB%mhOR(35?0sqE2 81 | J:]`1Ri^$;?D@fc\3"k6`TVl"gefVqFH"]i;K'BP*LIB$0tRHisiH43cE9eBqN:B0J0bJ]2 82 | #B2N3bhoSphYqaMo3CSPNTVi5i_.kLL+LKAD;6nD?L@.]R>k*k..?B"/.C=G:L9H$qI)!dR 83 | 7_M07iLf7crL;[cY`?!1Q"(D+HB#WIaqr#9"_Yg 84 | ';%"M3$u5!l[q?@'"WkT^r:oMU0:En$72Mka_V*QL3ITLfd:P/dcS]D9<# 85 | /%"):o@s[D(6g,bLmtmBqWn$T\:u-`Fkr*FKb!Sl0!MaDNg^T$)WP0@i8Cd;FZ76BZKI3]E 86 | rgj\Os).6N,2ZFN83%8*"<;b4ZL,E60MUb(+!`[!]"do*$gblMbEQRVcW=qah-d7U&S^OFG 87 | lac6rOq8$P'j"LmVKU^:/e,ULRKN5l&^a;M(J3[NR4j^m!T8^Q@ep1o7_p$e:;\ 88 | /`.4g8=R=UN/B7?`\=_pGNo]aj$63a!>g-dSegej#V9qb5/;UdLWOW,*878Ka@0fNkLbZtt 89 | VT(hSr.FC;32M_)\BLBh6\8%bK>pSkL\PIYd9nF;9d7QZ98mSc/?t@qd3^-6B:=TE8HG#8: 90 | PC"5ll2uao'H,%_aidm'c)[KTLKR7(o11?fm 91 | UsII4_!(kWG7B%TEf[:nr0;m1_K`'r/A[4t+NVMXO;rPBURA>"K'`dg@8F3\o!=cc]qbt#(e7D/XMSi89r1'[E%U_nCD2LuTM390`QYVF] 94 | V$>)JcFKR0TVSOTVkT!NjV!I!aYhlaUrWP`le(a/)IRlF;L5!iY&H:uj"dI(;(&aT[t&Y)W 95 | 6_=OYZpm3.G@rQG\$$scZ$7"CabLm%"=*-I1@Z*Bf2R<0anTKbdF.d.m1>\OOUr`=L]3@=? 96 | PJ#eDKNK]]B6n,?)P/9d*7fPr-t.9][5RY('CTm'"Ujo33!*0%H9%$, 97 | )\lO:@IC=(F7RVl6@bL8`k_Z\u<#InD0P\+BO^uD?CFOS:6\-fZDJR)ti_J5*:AIJ")YB;1pkdF#B 99 | /6t5WTfQho)An7,fNR#;U+/]ZXWjqQQG&3(PtD1'ecbojI;gegPmTY.%HUXp/%DRIgDuVea 100 | ZcAU#OEo?MZro.7GHb,>"\k<%V(S15fs*o!W~> 101 | %%EOF 102 | -------------------------------------------------------------------------------- /figure/buaaname.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenfengand/BUAAthesis/74d288daae56295f82f6ceee3d17d902bd94f09a/figure/buaaname.jpg -------------------------------------------------------------------------------- /figure/fgbt.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenfengand/BUAAthesis/74d288daae56295f82f6ceee3d17d902bd94f09a/figure/fgbt.jpg -------------------------------------------------------------------------------- /msmake.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wenfengand/BUAAthesis/74d288daae56295f82f6ceee3d17d902bd94f09a/msmake.bat -------------------------------------------------------------------------------- /sample-bachelor.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \documentclass[bachelor,openany,oneside,color]{buaathesis} 3 | \begin{document} 4 | 5 | % 用户信息 6 | \include{data/com_info} 7 | \include{data/bachelor/bachelor_info} 8 | 9 | % 任务书信息 10 | \include{data/bachelor/assign} 11 | 12 | % 页眉页脚样式 13 | \pagestyle{mainmatter} 14 | % 封面、任务书、声明 15 | \maketitle 16 | % 摘要 17 | \include{data/abstract} 18 | % 目录 19 | \tableofcontents 20 | 21 | % 正文页码样式 22 | \mainmatter 23 | 24 | % 正文 25 | \include{data/chapter1-intro} 26 | \include{data/chapter2-config} 27 | \include{data/chapter3-download} 28 | \include{data/chapter4-basic} 29 | \include{data/chapter5-usage} 30 | \include{data/chapter6-implement} 31 | \include{data/chapter7-conclusion} 32 | 33 | % 致谢 34 | \include{data/bachelor/acknowledgement} 35 | % 参考文献 36 | \include{data/reference} 37 | 38 | % 附录 39 | \appendix 40 | \include{data/appendix1-faq} 41 | \include{data/appendix2-contactus} 42 | \end{document} 43 | -------------------------------------------------------------------------------- /sample-master.tex: -------------------------------------------------------------------------------- 1 | % !Mode:: "TeX:UTF-8" 2 | \documentclass[master,openright,twoside,color]{buaathesis} 3 | \begin{document} 4 | 5 | % 用户信息 6 | \include{data/com_info} 7 | \include{data/master/master_info} 8 | 9 | % 中英封面、提名页、授权书 10 | \maketitle 11 | % 前言页眉页脚样式 12 | \pagestyle{frontmatter} 13 | % 摘要 14 | \include{data/abstract} 15 | % 目录、插图目录、表格目录 16 | \tableofcontents 17 | \listoffigures 18 | \listoftables 19 | % 符号表 20 | \include{data/master/denotation} 21 | 22 | % 正文页码样式 23 | \mainmatter 24 | % 正文页眉页脚样式 25 | \pagestyle{mainmatter} 26 | 27 | % 正文 28 | \include{data/chapter1-intro} 29 | \include{data/chapter2-config} 30 | \include{data/chapter3-download} 31 | \include{data/chapter4-basic} 32 | \include{data/chapter5-usage} 33 | \include{data/chapter6-implement} 34 | \include{data/chapter7-conclusion} 35 | 36 | % 参考文献 37 | \include{data/reference} 38 | 39 | % 附录 40 | \appendix 41 | \include{data/appendix1-faq} 42 | \include{data/appendix2-contactus} 43 | 44 | % 附页标题样式 45 | \backmatter 46 | 47 | % 附页 48 | \include{data/master/back1-achievement} 49 | \include{data/master/back2-acknowledgement} 50 | \include{data/master/back3-aboutauthor} 51 | \end{document} 52 | --------------------------------------------------------------------------------