From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- macros/latex/contrib/nddiss/LICENSE | 416 +++++ macros/latex/contrib/nddiss/README.md | 59 + macros/latex/contrib/nddiss/ltxdoc.cfg | 5 + macros/latex/contrib/nddiss/nddiss2e.bst | 1437 ++++++++++++++++++ macros/latex/contrib/nddiss/nddiss2e.dtx | 2416 ++++++++++++++++++++++++++++++ macros/latex/contrib/nddiss/nddiss2e.ins | 73 + macros/latex/contrib/nddiss/nddiss2e.pdf | Bin 0 -> 377077 bytes macros/latex/contrib/nddiss/process.sh | 19 + 8 files changed, 4425 insertions(+) create mode 100644 macros/latex/contrib/nddiss/LICENSE create mode 100644 macros/latex/contrib/nddiss/README.md create mode 100644 macros/latex/contrib/nddiss/ltxdoc.cfg create mode 100644 macros/latex/contrib/nddiss/nddiss2e.bst create mode 100644 macros/latex/contrib/nddiss/nddiss2e.dtx create mode 100644 macros/latex/contrib/nddiss/nddiss2e.ins create mode 100644 macros/latex/contrib/nddiss/nddiss2e.pdf create mode 100755 macros/latex/contrib/nddiss/process.sh (limited to 'macros/latex/contrib/nddiss') diff --git a/macros/latex/contrib/nddiss/LICENSE b/macros/latex/contrib/nddiss/LICENSE new file mode 100644 index 0000000000..2244313901 --- /dev/null +++ b/macros/latex/contrib/nddiss/LICENSE @@ -0,0 +1,416 @@ +The LaTeX Project Public License +=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- + +LPPL Version 1.3c 2008-05-04 + +Copyright 1999 2002-2008 LaTeX3 Project + Everyone is allowed to distribute verbatim copies of this + license document, but modification of it is not allowed. + + +PREAMBLE +======== + +The LaTeX Project Public License (LPPL) is the primary license under +which the LaTeX kernel and the base LaTeX packages are distributed. + +You may use this license for any work of which you hold the copyright +and which you wish to distribute. This license may be particularly +suitable if your work is TeX-related (such as a LaTeX package), but +it is written in such a way that you can use it even if your work is +unrelated to TeX. + +The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', +below, gives instructions, examples, and recommendations for authors +who are considering distributing their works under this license. + +This license gives conditions under which a work may be distributed +and modified, as well as conditions under which modified versions of +that work may be distributed. + +We, the LaTeX3 Project, believe that the conditions below give you +the freedom to make and distribute modified versions of your work +that conform with whatever technical specifications you wish while +maintaining the availability, integrity, and reliability of +that work. If you do not see how to achieve your goal while +meeting these conditions, then read the document `cfgguide.tex' +and `modguide.tex' in the base LaTeX distribution for suggestions. + + +DEFINITIONS +=========== + +In this license document the following terms are used: + + `Work' + Any work being distributed under this License. + + `Derived Work' + Any work that under any applicable law is derived from the Work. + + `Modification' + Any procedure that produces a Derived Work under any applicable + law -- for example, the production of a file containing an + original file associated with the Work or a significant portion of + such a file, either verbatim or with modifications and/or + translated into another language. + + `Modify' + To apply any procedure that produces a Derived Work under any + applicable law. + + `Distribution' + Making copies of the Work available from one person to another, in + whole or in part. Distribution includes (but is not limited to) + making any electronic components of the Work accessible by + file transfer protocols such as FTP or HTTP or by shared file + systems such as Sun's Network File System (NFS). + + `Compiled Work' + A version of the Work that has been processed into a form where it + is directly usable on a computer system. This processing may + include using installation facilities provided by the Work, + transformations of the Work, copying of components of the Work, or + other activities. Note that modification of any installation + facilities provided by the Work constitutes modification of the Work. + + `Current Maintainer' + A person or persons nominated as such within the Work. If there is + no such explicit nomination then it is the `Copyright Holder' under + any applicable law. + + `Base Interpreter' + A program or process that is normally needed for running or + interpreting a part or the whole of the Work. + + A Base Interpreter may depend on external components but these + are not considered part of the Base Interpreter provided that each + external component clearly identifies itself whenever it is used + interactively. Unless explicitly specified when applying the + license to the Work, the only applicable Base Interpreter is a + `LaTeX-Format' or in the case of files belonging to the + `LaTeX-format' a program implementing the `TeX language'. + + + +CONDITIONS ON DISTRIBUTION AND MODIFICATION +=========================================== + +1. Activities other than distribution and/or modification of the Work +are not covered by this license; they are outside its scope. In +particular, the act of running the Work is not restricted and no +requirements are made concerning any offers of support for the Work. + +2. You may distribute a complete, unmodified copy of the Work as you +received it. Distribution of only part of the Work is considered +modification of the Work, and no right to distribute such a Derived +Work may be assumed under the terms of this clause. + +3. You may distribute a Compiled Work that has been generated from a +complete, unmodified copy of the Work as distributed under Clause 2 +above, as long as that Compiled Work is distributed in such a way that +the recipients may install the Compiled Work on their system exactly +as it would have been installed if they generated a Compiled Work +directly from the Work. + +4. If you are the Current Maintainer of the Work, you may, without +restriction, modify the Work, thus creating a Derived Work. You may +also distribute the Derived Work without restriction, including +Compiled Works generated from the Derived Work. Derived Works +distributed in this manner by the Current Maintainer are considered to +be updated versions of the Work. + +5. If you are not the Current Maintainer of the Work, you may modify +your copy of the Work, thus creating a Derived Work based on the Work, +and compile this Derived Work, thus creating a Compiled Work based on +the Derived Work. + +6. If you are not the Current Maintainer of the Work, you may +distribute a Derived Work provided the following conditions are met +for every component of the Work unless that component clearly states +in the copyright notice that it is exempt from that condition. Only +the Current Maintainer is allowed to add such statements of exemption +to a component of the Work. + + a. If a component of this Derived Work can be a direct replacement + for a component of the Work when that component is used with the + Base Interpreter, then, wherever this component of the Work + identifies itself to the user when used interactively with that + Base Interpreter, the replacement component of this Derived Work + clearly and unambiguously identifies itself as a modified version + of this component to the user when used interactively with that + Base Interpreter. + + b. Every component of the Derived Work contains prominent notices + detailing the nature of the changes to that component, or a + prominent reference to another file that is distributed as part + of the Derived Work and that contains a complete and accurate log + of the changes. + + c. No information in the Derived Work implies that any persons, + including (but not limited to) the authors of the original version + of the Work, provide any support, including (but not limited to) + the reporting and handling of errors, to recipients of the + Derived Work unless those persons have stated explicitly that + they do provide such support for the Derived Work. + + d. You distribute at least one of the following with the Derived Work: + + 1. A complete, unmodified copy of the Work; + if your distribution of a modified component is made by + offering access to copy the modified component from a + designated place, then offering equivalent access to copy + the Work from the same or some similar place meets this + condition, even though third parties are not compelled to + copy the Work along with the modified component; + + 2. Information that is sufficient to obtain a complete, + unmodified copy of the Work. + +7. If you are not the Current Maintainer of the Work, you may +distribute a Compiled Work generated from a Derived Work, as long as +the Derived Work is distributed to all recipients of the Compiled +Work, and as long as the conditions of Clause 6, above, are met with +regard to the Derived Work. + +8. The conditions above are not intended to prohibit, and hence do not +apply to, the modification, by any method, of any component so that it +becomes identical to an updated version of that component of the Work as +it is distributed by the Current Maintainer under Clause 4, above. + +9. Distribution of the Work or any Derived Work in an alternative +format, where the Work or that Derived Work (in whole or in part) is +then produced by applying some process to that format, does not relax or +nullify any sections of this license as they pertain to the results of +applying that process. + +10. a. A Derived Work may be distributed under a different license + provided that license itself honors the conditions listed in + Clause 6 above, in regard to the Work, though it does not have + to honor the rest of the conditions in this license. + + b. If a Derived Work is distributed under a different license, that + Derived Work must provide sufficient documentation as part of + itself to allow each recipient of that Derived Work to honor the + restrictions in Clause 6 above, concerning changes from the Work. + +11. This license places no restrictions on works that are unrelated to +the Work, nor does this license place any restrictions on aggregating +such works with the Work by any means. + +12. Nothing in this license is intended to, or may be used to, prevent +complete compliance by all parties with all applicable laws. + + +NO WARRANTY +=========== + +There is no warranty for the Work. Except when otherwise stated in +writing, the Copyright Holder provides the Work `as is', without +warranty of any kind, either expressed or implied, including, but not +limited to, the implied warranties of merchantability and fitness for a +particular purpose. The entire risk as to the quality and performance +of the Work is with you. Should the Work prove defective, you assume +the cost of all necessary servicing, repair, or correction. + +In no event unless required by applicable law or agreed to in writing +will The Copyright Holder, or any author named in the components of the +Work, or any other party who may distribute and/or modify the Work as +permitted above, be liable to you for damages, including any general, +special, incidental or consequential damages arising out of any use of +the Work or out of inability to use the Work (including, but not limited +to, loss of data, data being rendered inaccurate, or losses sustained by +anyone as a result of any failure of the Work to operate with any other +programs), even if the Copyright Holder or said author or said other +party has been advised of the possibility of such damages. + + +MAINTENANCE OF THE WORK +======================= + +The Work has the status `author-maintained' if the Copyright Holder +explicitly and prominently states near the primary copyright notice in +the Work that the Work can only be maintained by the Copyright Holder +or simply that it is `author-maintained'. + +The Work has the status `maintained' if there is a Current Maintainer +who has indicated in the Work that they are willing to receive error +reports for the Work (for example, by supplying a valid e-mail +address). It is not required for the Current Maintainer to acknowledge +or act upon these error reports. + +The Work changes from status `maintained' to `unmaintained' if there +is no Current Maintainer, or the person stated to be Current +Maintainer of the work cannot be reached through the indicated means +of communication for a period of six months, and there are no other +significant signs of active maintenance. + +You can become the Current Maintainer of the Work by agreement with +any existing Current Maintainer to take over this role. + +If the Work is unmaintained, you can become the Current Maintainer of +the Work through the following steps: + + 1. Make a reasonable attempt to trace the Current Maintainer (and + the Copyright Holder, if the two differ) through the means of + an Internet or similar search. + + 2. If this search is successful, then enquire whether the Work + is still maintained. + + a. If it is being maintained, then ask the Current Maintainer + to update their communication data within one month. + + b. If the search is unsuccessful or no action to resume active + maintenance is taken by the Current Maintainer, then announce + within the pertinent community your intention to take over + maintenance. (If the Work is a LaTeX work, this could be + done, for example, by posting to comp.text.tex.) + + 3a. If the Current Maintainer is reachable and agrees to pass + maintenance of the Work to you, then this takes effect + immediately upon announcement. + + b. If the Current Maintainer is not reachable and the Copyright + Holder agrees that maintenance of the Work be passed to you, + then this takes effect immediately upon announcement. + + 4. If you make an `intention announcement' as described in 2b. above + and after three months your intention is challenged neither by + the Current Maintainer nor by the Copyright Holder nor by other + people, then you may arrange for the Work to be changed so as + to name you as the (new) Current Maintainer. + + 5. If the previously unreachable Current Maintainer becomes + reachable once more within three months of a change completed + under the terms of 3b) or 4), then that Current Maintainer must + become or remain the Current Maintainer upon request provided + they then update their communication data within one month. + +A change in the Current Maintainer does not, of itself, alter the fact +that the Work is distributed under the LPPL license. + +If you become the Current Maintainer of the Work, you should +immediately provide, within the Work, a prominent and unambiguous +statement of your status as Current Maintainer. You should also +announce your new status to the same pertinent community as +in 2b) above. + + +WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE +====================================================== + +This section contains important instructions, examples, and +recommendations for authors who are considering distributing their +works under this license. These authors are addressed as `you' in +this section. + +Choosing This License or Another License +---------------------------------------- + +If for any part of your work you want or need to use *distribution* +conditions that differ significantly from those in this license, then +do not refer to this license anywhere in your work but, instead, +distribute your work under a different license. You may use the text +of this license as a model for your own license, but your license +should not refer to the LPPL or otherwise give the impression that +your work is distributed under the LPPL. + +The document `modguide.tex' in the base LaTeX distribution explains +the motivation behind the conditions of this license. It explains, +for example, why distributing LaTeX under the GNU General Public +License (GPL) was considered inappropriate. Even if your work is +unrelated to LaTeX, the discussion in `modguide.tex' may still be +relevant, and authors intending to distribute their works under any +license are encouraged to read it. + +A Recommendation on Modification Without Distribution +----------------------------------------------------- + +It is wise never to modify a component of the Work, even for your own +personal use, without also meeting the above conditions for +distributing the modified component. While you might intend that such +modifications will never be distributed, often this will happen by +accident -- you may forget that you have modified that component; or +it may not occur to you when allowing others to access the modified +version that you are thus distributing it and violating the conditions +of this license in ways that could have legal implications and, worse, +cause problems for the community. It is therefore usually in your +best interest to keep your copy of the Work identical with the public +one. Many works provide ways to control the behavior of that work +without altering any of its licensed components. + +How to Use This License +----------------------- + +To use this license, place in each of the components of your work both +an explicit copyright notice including your name and the year the work +was authored and/or last substantially modified. Include also a +statement that the distribution and/or modification of that +component is constrained by the conditions in this license. + +Here is an example of such a notice and statement: + + %% pig.dtx + %% Copyright 2005 M. Y. Name + % + % This work may be distributed and/or modified under the + % conditions of the LaTeX Project Public License, either version 1.3 + % of this license or (at your option) any later version. + % The latest version of this license is in + % http://www.latex-project.org/lppl.txt + % and version 1.3 or later is part of all distributions of LaTeX + % version 2005/12/01 or later. + % + % This work has the LPPL maintenance status `maintained'. + % + % The Current Maintainer of this work is M. Y. Name. + % + % This work consists of the files pig.dtx and pig.ins + % and the derived file pig.sty. + +Given such a notice and statement in a file, the conditions +given in this license document would apply, with the `Work' referring +to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being +generated from `pig.dtx' using `pig.ins'), the `Base Interpreter' +referring to any `LaTeX-Format', and both `Copyright Holder' and +`Current Maintainer' referring to the person `M. Y. Name'. + +If you do not want the Maintenance section of LPPL to apply to your +Work, change `maintained' above into `author-maintained'. +However, we recommend that you use `maintained', as the Maintenance +section was added in order to ensure that your Work remains useful to +the community even when you can no longer maintain and support it +yourself. + +Derived Works That Are Not Replacements +--------------------------------------- + +Several clauses of the LPPL specify means to provide reliability and +stability for the user community. They therefore concern themselves +with the case that a Derived Work is intended to be used as a +(compatible or incompatible) replacement of the original Work. If +this is not the case (e.g., if a few lines of code are reused for a +completely different task), then clauses 6b and 6d shall not apply. + + +Important Recommendations +------------------------- + + Defining What Constitutes the Work + + The LPPL requires that distributions of the Work contain all the + files of the Work. It is therefore important that you provide a + way for the licensee to determine which files constitute the Work. + This could, for example, be achieved by explicitly listing all the + files of the Work near the copyright notice of each file or by + using a line such as: + + % This work consists of all files listed in manifest.txt. + + in that place. In the absence of an unequivocal list it might be + impossible for the licensee to determine what is considered by you + to comprise the Work and, in such a case, the licensee would be + entitled to make reasonable conjectures as to which files comprise + the Work. + diff --git a/macros/latex/contrib/nddiss/README.md b/macros/latex/contrib/nddiss/README.md new file mode 100644 index 0000000000..dcdafe24ae --- /dev/null +++ b/macros/latex/contrib/nddiss/README.md @@ -0,0 +1,59 @@ +nddiss +====== + +`nddiss` is a LaTeX package providing a document class for formatting doctoral +dissertations submitted to the University of Notre Dame's Graduate School. + +Copies of this package can be found in many places: + + * CTAN: https://ctan.org/pkg/nddiss + * GitHub: https://github.com/ndlib/nddiss + * Notre Dame Graduate School website: http://graduateschool.nd.edu/resources-for-current-students/dt/dt-resources/ + +Please send any improvements, suggestions, or bug reports to + + * Shari Hill Sweet, shill2@nd.edu + * Don Brower, dbrower@nd.edu + + +# Usage + +Easiest way to begin is to start with either the file `example/example.tex` or the template `template.tex`. +The [manual](nddiss2e.pdf) has a lot more information. + +The [example](example) directory contains a sample thesis demonstrating the usage of this package. + +[comment]: # (The files are the same as in the `sample_ndthesis.tar.gz` distribution by Jeff Squyeres) +[comment]: # (and D. A. Peterson, but modified for the nddiss2e class.) + + +# Installation + +The easiest way to install this package is to copy the `nddiss2e.cls` and +`nddiss2e.bst` files into the same directory as your LaTeX source file. + +Beware! If seems `nddiss2e` is already installed on your machine, it is +probably an outdated version from 2005. Please use the current version. + + +# This Repository + +The `Makefile` contains all the logic to process the master source file, `nddiss2e.dtx`. +The `nddiss2e.cls`, `nddiss2e.pdf`, and `template.tex` files are generated from the `dtx` file. +Run `make` to regenerate everything. +These derivatives are checked into the repo to make it easier for people to access and download them. + + +# Authors + +The original version, created by Sameer Vijay, follows the Spring 2004 formatting guidelines. +Later, Megan Patnott updated it to follow the Spring 2013 guidelines. + +This is based off of the style file created by D. A. Peterson, Jeff Squyeres, and others. + + +# License + +This file may be distributed and/or modified under the conditions of the LaTeX +Project Public License, either version 1.2 of this license or (at your option) +any later version. The latest version of this license can be found at http://www.latex-project.org/lppl.txt. diff --git a/macros/latex/contrib/nddiss/ltxdoc.cfg b/macros/latex/contrib/nddiss/ltxdoc.cfg new file mode 100644 index 0000000000..645e2be6b6 --- /dev/null +++ b/macros/latex/contrib/nddiss/ltxdoc.cfg @@ -0,0 +1,5 @@ +\PassOptionsToClass{letterpaper}{article} +\AtEndOfPackage{\RequirePackage{hyperref}} + +%% To create a pdf using dvipdfm, uncomment the next line. +%%\PassOptionsToPackage{dvipdfm=true,bookmarks=true}{hyperref} diff --git a/macros/latex/contrib/nddiss/nddiss2e.bst b/macros/latex/contrib/nddiss/nddiss2e.bst new file mode 100644 index 0000000000..394616b625 --- /dev/null +++ b/macros/latex/contrib/nddiss/nddiss2e.bst @@ -0,0 +1,1437 @@ +%% +%% File: `nddiss2e.bst' +%% A modification of `abbrvnat.bst' for use with nddiss2e class file. +%% Modified by Sameer Vijay +%% +%% File: `abbrvnat.bst' +%% A modification of `abbrv.bst' for use with natbib package +%% +%% Copyright 1993-2005 Patrick W Daly +%% Max-Planck-Institut f\"ur Sonnensystemforschung +%% Max-Planck-Str. 2 +%% D-37191 Katlenburg-Lindau +%% Germany +%% E-mail: daly@mps.mpg.de +%% +%% This program can be redistributed and/or modified under the terms +%% of the LaTeX Project Public License Distributed from CTAN +%% archives in directory macros/latex/base/lppl.txt; either +%% version 1 of the License, or any later version. +%% + % Version and source file information: + % \ProvidesFile{natbst.mbs}[2005/01/07 1.8 (PWD)] + % + % BibTeX `plainnat' family + % version 0.99b for BibTeX versions 0.99a or later, + % for LaTeX versions 2.09 and 2e. + % + % For use with the `natbib.sty' package; emulates the corresponding + % member of the `plain' family, but with author-year citations. + % + % With version 6.0 of `natbib.sty', it may also be used for numerical + % citations, while retaining the commands \citeauthor, \citefullauthor, + % and \citeyear to print the corresponding information. + % + % For version 7.0 of `natbib.sty', the KEY field replaces missing + % authors/editors, and the date is left blank in \bibitem. + % + % Includes field EID for the sequence/citation number of electronic journals + % which is used instead of page numbers. + % + % Includes fields ISBN and ISSN. + % + % Includes field URL for Internet addresses. + % + % Includes field DOI for Digital Object Idenfifiers. + % + % Works best with the url.sty package of Donald Arseneau. + % + % Works with identical authors and year are further sorted by + % citation key, to preserve any natural sequence. + % +ENTRY + { address + author + booktitle + chapter + doi + eid + edition + editor + howpublished + institution + isbn + issn + journal + key + month + note + number + organization + pages + publisher + school + series + title + type + url + volume + year + } + {} + { label extra.label sort.label short.list } + +INTEGERS { output.state before.all mid.sentence after.sentence after.block } + +FUNCTION {init.state.consts} +{ #0 'before.all := + #1 'mid.sentence := + #2 'after.sentence := + #3 'after.block := +} + +STRINGS { s t } + +FUNCTION {output.nonnull} +{ 's := + output.state mid.sentence = + { ", " * write$ } + { output.state after.block = + { add.period$ write$ + newline$ + "\newblock " write$ + } + { output.state before.all = + 'write$ + { add.period$ " " * write$ } + if$ + } + if$ + mid.sentence 'output.state := + } + if$ + s +} + +FUNCTION {output} +{ duplicate$ empty$ + 'pop$ + 'output.nonnull + if$ +} + +FUNCTION {output.check} +{ 't := + duplicate$ empty$ + { pop$ "empty " t * " in " * cite$ * warning$ } + 'output.nonnull + if$ +} + +FUNCTION {fin.entry} +{ add.period$ + write$ + newline$ +} + +FUNCTION {new.block} +{ output.state before.all = + 'skip$ + { after.block 'output.state := } + if$ +} + +FUNCTION {new.sentence} +{ output.state after.block = + 'skip$ + { output.state before.all = + 'skip$ + { after.sentence 'output.state := } + if$ + } + if$ +} + +FUNCTION {not} +{ { #0 } + { #1 } + if$ +} + +FUNCTION {and} +{ 'skip$ + { pop$ #0 } + if$ +} + +FUNCTION {or} +{ { pop$ #1 } + 'skip$ + if$ +} + +FUNCTION {new.block.checka} +{ empty$ + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.block.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.block + if$ +} + +FUNCTION {new.sentence.checka} +{ empty$ + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {new.sentence.checkb} +{ empty$ + swap$ empty$ + and + 'skip$ + 'new.sentence + if$ +} + +FUNCTION {field.or.null} +{ duplicate$ empty$ + { pop$ "" } + 'skip$ + if$ +} + +FUNCTION {emphasize} +{ duplicate$ empty$ + { pop$ "" } + { "\emph{" swap$ * "}" * } + if$ +} + +INTEGERS { nameptr namesleft numnames } + +FUNCTION {format.names} +{ 's := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ 't := + nameptr #1 > + { namesleft #1 > + { ", " * t * } + { numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { " et~al." * } + { " and " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {format.key} +{ empty$ + { key field.or.null } + { "" } + if$ +} + +FUNCTION {format.authors} +{ author empty$ + { "" } + { author format.names } + if$ +} + +FUNCTION {format.editors} +{ editor empty$ + { "" } + { editor format.names + editor num.names$ #1 > + { ", editors" * } + { ", editor" * } + if$ + } + if$ +} + +FUNCTION {format.isbn} +{ isbn empty$ + { "" } + { new.block "ISBN " isbn * } + if$ +} + +FUNCTION {format.issn} +{ issn empty$ + { "" } + { new.block "ISSN " issn * } + if$ +} + +FUNCTION {format.url} +{ url empty$ + { "" } + { new.block "URL \url{" url * "}" * } + if$ +} + +FUNCTION {format.doi} +{ doi empty$ + { "" } + { new.block "\doi{" doi * "}" * } + if$ +} + +FUNCTION {format.title} +{ title empty$ + { "" } + { title "t" change.case$ } + if$ +} + +FUNCTION {format.full.names} +{'s := + #1 'nameptr := + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { s nameptr + "{vv~}{ll}" format.name$ 't := + nameptr #1 > + { + namesleft #1 > + { ", " * t * } + { + numnames #2 > + { "," * } + 'skip$ + if$ + t "others" = + { " et~al." * } + { " and " * t * } + if$ + } + if$ + } + 't + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {author.editor.full} +{ author empty$ + { editor empty$ + { "" } + { editor format.full.names } + if$ + } + { author format.full.names } + if$ +} + +FUNCTION {author.full} +{ author empty$ + { "" } + { author format.full.names } + if$ +} + +FUNCTION {editor.full} +{ editor empty$ + { "" } + { editor format.full.names } + if$ +} + +FUNCTION {make.full.names} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.full + { type$ "proceedings" = + 'editor.full + 'author.full + if$ + } + if$ +} + +FUNCTION {output.bibitem} +{ newline$ + "\bibitem[" write$ + label write$ + ")" make.full.names duplicate$ short.list = + { pop$ } + { * } + if$ + "]{" * write$ + cite$ write$ + "}" write$ + newline$ + "" + before.all 'output.state := +} + +FUNCTION {n.dashify} +{ 't := + "" + { t empty$ not } + { t #1 #1 substring$ "-" = + { t #1 #2 substring$ "--" = not + { "--" * + t #2 global.max$ substring$ 't := + } + { { t #1 #1 substring$ "-" = } + { "-" * + t #2 global.max$ substring$ 't := + } + while$ + } + if$ + } + { t #1 #1 substring$ * + t #2 global.max$ substring$ 't := + } + if$ + } + while$ +} + +FUNCTION {format.date} +{ year duplicate$ empty$ + { "empty year in " cite$ * warning$ + pop$ "" } + 'skip$ + if$ + month empty$ + 'skip$ + { month + " " * swap$ * + } + if$ + extra.label * +} + +FUNCTION {format.btitle} +{ title emphasize +} + +FUNCTION {tie.or.space.connect} +{ duplicate$ text.length$ #3 < + { "~" } + { " " } + if$ + swap$ * * +} + +FUNCTION {either.or.check} +{ empty$ + 'pop$ + { "can't use both " swap$ * " fields in " * cite$ * warning$ } + if$ +} + +FUNCTION {format.bvolume} +{ volume empty$ + { "" } + { "volume" volume tie.or.space.connect + series empty$ + 'skip$ + { " of " * series emphasize * } + if$ + "volume and number" number either.or.check + } + if$ +} + +FUNCTION {format.number.series} +{ volume empty$ + { number empty$ + { series field.or.null } + { output.state mid.sentence = + { "number" } + { "Number" } + if$ + number tie.or.space.connect + series empty$ + { "there's a number but no series in " cite$ * warning$ } + { " in " * series * } + if$ + } + if$ + } + { "" } + if$ +} + +FUNCTION {format.edition} +{ edition empty$ + { "" } + { output.state mid.sentence = + { edition "l" change.case$ " edition" * } + { edition "t" change.case$ " edition" * } + if$ + } + if$ +} + +INTEGERS { multiresult } + +FUNCTION {multi.page.check} +{ 't := + #0 'multiresult := + { multiresult not + t empty$ not + and + } + { t #1 #1 substring$ + duplicate$ "-" = + swap$ duplicate$ "," = + swap$ "+" = + or or + { #1 'multiresult := } + { t #2 global.max$ substring$ 't := } + if$ + } + while$ + multiresult +} + +FUNCTION {format.pages} +{ pages empty$ + { "" } + { pages multi.page.check + { "pages" pages n.dashify tie.or.space.connect } + { "page" pages tie.or.space.connect } + if$ + } + if$ +} + +FUNCTION {format.eid} +{ eid empty$ + { "" } + { "art." eid tie.or.space.connect } + if$ +} + +FUNCTION {format.vol.num.pages} +{ volume field.or.null + number empty$ + 'skip$ + { "\penalty0 (" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + pages empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.pages } + { ":\penalty0 " * pages n.dashify * } + if$ + } + if$ +} + +FUNCTION {format.vol.num.eid} +{ volume field.or.null + number empty$ + 'skip$ + { "\penalty0 (" number * ")" * * + volume empty$ + { "there's a number but no volume in " cite$ * warning$ } + 'skip$ + if$ + } + if$ + eid empty$ + 'skip$ + { duplicate$ empty$ + { pop$ format.eid } + { ":\penalty0 " * eid * } + if$ + } + if$ +} + +FUNCTION {format.chapter.pages} +{ chapter empty$ + 'format.pages + { type empty$ + { "chapter" } + { type "l" change.case$ } + if$ + chapter tie.or.space.connect + pages empty$ + 'skip$ + { ", " * format.pages * } + if$ + } + if$ +} + +FUNCTION {format.in.ed.booktitle} +{ booktitle empty$ + { "" } + { editor empty$ + { "In " booktitle emphasize * } + { "In " format.editors * ", " * booktitle emphasize * } + if$ + } + if$ +} + +FUNCTION {empty.misc.check} +{ author empty$ title empty$ howpublished empty$ + month empty$ year empty$ note empty$ + and and and and and + key empty$ not and + { "all relevant fields are empty in " cite$ * warning$ } + 'skip$ + if$ +} + +FUNCTION {format.thesis.type} +{ type empty$ + 'skip$ + { pop$ + type "t" change.case$ + } + if$ +} + +FUNCTION {format.tr.number} +{ type empty$ + { "Technical Report" } + 'type + if$ + number empty$ + { "t" change.case$ } + { number tie.or.space.connect } + if$ +} + +FUNCTION {format.article.crossref} +{ key empty$ + { journal empty$ + { "need key or journal for " cite$ * " to crossref " * crossref * + warning$ + "" + } + { "In \emph{" journal * "}" * } + if$ + } + { "In " key * } + if$ + " \citep{" * crossref * "}" * +} + +FUNCTION {format.book.crossref} +{ volume empty$ + { "empty volume in " cite$ * "'s crossref of " * crossref * warning$ + "In " + } + { "Volume" volume tie.or.space.connect + " of " * + } + if$ + editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { series empty$ + { "need editor, key, or series for " cite$ * " to crossref " * + crossref * warning$ + "" * + } + { "\emph{" * series * "}" * } + if$ + } + { key * } + if$ + } + 'skip$ + if$ + ", \citet{" * crossref * "}" * +} + +FUNCTION {format.incoll.inproc.crossref} +{ editor empty$ + editor field.or.null author field.or.null = + or + { key empty$ + { booktitle empty$ + { "need editor, key, or booktitle for " cite$ * " to crossref " * + crossref * warning$ + "" + } + { "In \emph{" booktitle * "}" * } + if$ + } + { "In " key * } + if$ + } + { "In " } + if$ + " \citet{" * crossref * "}" * +} + +FUNCTION {article} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.title "title" output.check + new.block + crossref missing$ + { journal emphasize "journal" output.check + eid empty$ + { format.vol.num.pages output } + { format.vol.num.eid output } + if$ + format.date "year" output.check + } + { format.article.crossref output.nonnull + eid empty$ + { format.pages output } + { format.eid output } + if$ + } + if$ + format.issn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {book} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + new.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {booklet} +{ output.bibitem + format.authors output + author format.key output + new.block + format.title "title" output.check + howpublished address new.block.checkb + howpublished output + address output + format.date output + format.isbn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {inbook} +{ output.bibitem + author empty$ + { format.editors "author and editor" output.check + editor format.key output + } + { format.authors output.nonnull + crossref missing$ + { "author and editor" editor either.or.check } + 'skip$ + if$ + } + if$ + new.block + format.btitle "title" output.check + crossref missing$ + { format.bvolume output + format.chapter.pages "chapter and pages" output.check + new.block + format.number.series output + new.sentence + publisher "publisher" output.check + address output + } + { format.chapter.pages "chapter and pages" output.check + new.block + format.book.crossref output.nonnull + } + if$ + format.edition output + format.date "year" output.check + format.isbn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {incollection} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.chapter.pages output + new.sentence + publisher "publisher" output.check + address output + format.edition output + format.date "year" output.check + } + { format.incoll.inproc.crossref output.nonnull + format.chapter.pages output + } + if$ + format.isbn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {inproceedings} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.title "title" output.check + new.block + crossref missing$ + { format.in.ed.booktitle "booktitle" output.check + format.bvolume output + format.number.series output + format.pages output + address empty$ + { organization publisher new.sentence.checkb + organization output + publisher output + format.date "year" output.check + } + { address output.nonnull + format.date "year" output.check + new.sentence + organization output + publisher output + } + if$ + } + { format.incoll.inproc.crossref output.nonnull + format.pages output + } + if$ + format.isbn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {conference} { inproceedings } + +FUNCTION {manual} +{ output.bibitem + format.authors output + author format.key output + new.block + format.btitle "title" output.check + organization address new.block.checkb + organization output + address output + format.edition output + format.date output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {mastersthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.title "title" output.check + new.block + "Master's thesis" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.url output + new.block + note output + fin.entry +} + +FUNCTION {misc} +{ output.bibitem + format.authors output + author format.key output + title howpublished new.block.checkb + format.title output + howpublished new.block.checka + howpublished output + format.date output + format.issn output + format.url output + new.block + note output + fin.entry + empty.misc.check +} + +FUNCTION {phdthesis} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.btitle "title" output.check + new.block + "PhD thesis" format.thesis.type output.nonnull + school "school" output.check + address output + format.date "year" output.check + format.url output + new.block + note output + fin.entry +} + +FUNCTION {proceedings} +{ output.bibitem + format.editors output + editor format.key output + new.block + format.btitle "title" output.check + format.bvolume output + format.number.series output + address output + format.date "year" output.check + new.sentence + organization output + publisher output + format.isbn output + format.doi output + format.url output + new.block + note output + fin.entry +} + +FUNCTION {techreport} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.title "title" output.check + new.block + format.tr.number output.nonnull + institution "institution" output.check + address output + format.date "year" output.check + format.url output + new.block + note output + fin.entry +} + +FUNCTION {unpublished} +{ output.bibitem + format.authors "author" output.check + author format.key output + new.block + format.title "title" output.check + format.url output + new.block + note "note" output.check + format.date output + fin.entry +} + +FUNCTION {default.type} { misc } + + +MACRO {jan} {"Jan."} + +MACRO {feb} {"Feb."} + +MACRO {mar} {"Mar."} + +MACRO {apr} {"Apr."} + +MACRO {may} {"May"} + +MACRO {jun} {"June"} + +MACRO {jul} {"July"} + +MACRO {aug} {"Aug."} + +MACRO {sep} {"Sept."} + +MACRO {oct} {"Oct."} + +MACRO {nov} {"Nov."} + +MACRO {dec} {"Dec."} + + + +MACRO {acmcs} {"ACM Comput. Surv."} + +MACRO {acta} {"Acta Inf."} + +MACRO {cacm} {"Commun. ACM"} + +MACRO {ibmjrd} {"IBM J. Res. Dev."} + +MACRO {ibmsj} {"IBM Syst.~J."} + +MACRO {ieeese} {"IEEE Trans. Softw. Eng."} + +MACRO {ieeetc} {"IEEE Trans. Comput."} + +MACRO {ieeetcad} + {"IEEE Trans. Comput.-Aided Design Integrated Circuits"} + +MACRO {ipl} {"Inf. Process. Lett."} + +MACRO {jacm} {"J.~ACM"} + +MACRO {jcss} {"J.~Comput. Syst. Sci."} + +MACRO {scp} {"Sci. Comput. Programming"} + +MACRO {sicomp} {"SIAM J. Comput."} + +MACRO {tocs} {"ACM Trans. Comput. Syst."} + +MACRO {tods} {"ACM Trans. Database Syst."} + +MACRO {tog} {"ACM Trans. Gr."} + +MACRO {toms} {"ACM Trans. Math. Softw."} + +MACRO {toois} {"ACM Trans. Office Inf. Syst."} + +MACRO {toplas} {"ACM Trans. Prog. Lang. Syst."} + +MACRO {tcs} {"Theoretical Comput. Sci."} + + +READ + +FUNCTION {sortify} +{ purify$ + "l" change.case$ +} + +INTEGERS { len } + +FUNCTION {chop.word} +{ 's := + 'len := + s #1 len substring$ = + { s len #1 + global.max$ substring$ } + 's + if$ +} + +FUNCTION {format.lab.names} +{ 's := + s #1 "{vv~}{ll}" format.name$ + s num.names$ duplicate$ + #2 > + { pop$ " et~al." * } + { #2 < + 'skip$ + { s #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" = + { " et~al." * } + { " and " * s #2 "{vv~}{ll}" format.name$ * } + if$ + } + if$ + } + if$ +} + +FUNCTION {author.key.label} +{ author empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.editor.key.label} +{ author empty$ + { editor empty$ + { key empty$ + { cite$ #1 #3 substring$ } + 'key + if$ + } + { editor format.lab.names } + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {author.key.organization.label} +{ author empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { "The " #4 organization chop.word #3 text.prefix$ } + if$ + } + 'key + if$ + } + { author format.lab.names } + if$ +} + +FUNCTION {editor.key.organization.label} +{ editor empty$ + { key empty$ + { organization empty$ + { cite$ #1 #3 substring$ } + { "The " #4 organization chop.word #3 text.prefix$ } + if$ + } + 'key + if$ + } + { editor format.lab.names } + if$ +} + +FUNCTION {calc.short.authors} +{ type$ "book" = + type$ "inbook" = + or + 'author.editor.key.label + { type$ "proceedings" = + 'editor.key.organization.label + { type$ "manual" = + 'author.key.organization.label + 'author.key.label + if$ + } + if$ + } + if$ + 'short.list := +} + +FUNCTION {calc.label} +{ calc.short.authors + short.list + "(" + * + year duplicate$ empty$ + short.list key field.or.null = or + { pop$ "" } + 'skip$ + if$ + * + 'label := +} + +FUNCTION {sort.format.names} +{ 's := + #1 'nameptr := + "" + s num.names$ 'numnames := + numnames 'namesleft := + { namesleft #0 > } + { + s nameptr "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" format.name$ 't := + nameptr #1 > + { + " " * + namesleft #1 = t "others" = and + { "zzzzz" * } + { numnames #2 > nameptr #2 = and + { "zz" * year field.or.null * " " * } + 'skip$ + if$ + t sortify * + } + if$ + } + { t sortify * } + if$ + nameptr #1 + 'nameptr := + namesleft #1 - 'namesleft := + } + while$ +} + +FUNCTION {sort.format.title} +{ 't := + "A " #2 + "An " #3 + "The " #4 t chop.word + chop.word + chop.word + sortify + #1 global.max$ substring$ +} + +FUNCTION {author.sort} +{ author empty$ + { key empty$ + { "to sort, need author or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.editor.sort} +{ author empty$ + { editor empty$ + { key empty$ + { "to sort, need author, editor, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { editor sort.format.names } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {author.organization.sort} +{ author empty$ + { organization empty$ + { key empty$ + { "to sort, need author, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { author sort.format.names } + if$ +} + +FUNCTION {editor.organization.sort} +{ editor empty$ + { organization empty$ + { key empty$ + { "to sort, need editor, organization, or key in " cite$ * warning$ + "" + } + { key sortify } + if$ + } + { "The " #4 organization chop.word sortify } + if$ + } + { editor sort.format.names } + if$ +} + + +FUNCTION {presort} +{ calc.label + label sortify + " " + * + type$ "book" = + type$ "inbook" = + or + 'author.editor.sort + { type$ "proceedings" = + 'editor.organization.sort + { type$ "manual" = + 'author.organization.sort + 'author.sort + if$ + } + if$ + } + if$ + " " + * + cite$ + * + #1 entry.max$ substring$ + 'sort.label := + sort.label * + #1 entry.max$ substring$ + 'sort.key$ := +} + +ITERATE {presort} + +SORT + +STRINGS { longest.label last.label next.extra } + +INTEGERS { longest.label.width last.extra.num number.label } + +FUNCTION {initialize.longest.label} +{ "" 'longest.label := + #0 int.to.chr$ 'last.label := + "" 'next.extra := + #0 'longest.label.width := + #0 'last.extra.num := + #0 'number.label := +} + +FUNCTION {forward.pass} +{ last.label label = + { last.extra.num #1 + 'last.extra.num := + last.extra.num int.to.chr$ 'extra.label := + } + { "a" chr.to.int$ 'last.extra.num := + "" 'extra.label := + label 'last.label := + } + if$ + number.label #1 + 'number.label := +} + +FUNCTION {reverse.pass} +{ next.extra "b" = + { "a" 'extra.label := } + 'skip$ + if$ + extra.label 'next.extra := + extra.label + duplicate$ empty$ + 'skip$ + { "{\natexlab{" swap$ * "}}" * } + if$ + 'extra.label := + label extra.label * 'label := +} + +EXECUTE {initialize.longest.label} + +ITERATE {forward.pass} + +REVERSE {reverse.pass} + +FUNCTION {bib.sort.order} +{ sort.label 'sort.key$ := +} + +ITERATE {bib.sort.order} + +SORT + +FUNCTION {begin.bib} +{ preamble$ empty$ + 'skip$ + { preamble$ write$ newline$ } + if$ + "\begin{thebibliography}{" number.label int.to.str$ * "}" * + write$ newline$ + "\providecommand{\natexlab}[1]{#1}" + write$ newline$ + "\providecommand{\url}[1]{\texttt{#1}}" + write$ newline$ + "\expandafter\ifx\csname urlstyle\endcsname\relax" + write$ newline$ + " \providecommand{\doi}[1]{doi: #1}\else" + write$ newline$ + " \providecommand{\doi}{doi: \begingroup \urlstyle{rm}\Url}\fi" + write$ newline$ +} + +EXECUTE {begin.bib} + +EXECUTE {init.state.consts} + +ITERATE {call.type$} + +FUNCTION {end.bib} +{ newline$ + "\end{thebibliography}" write$ newline$ +} + +EXECUTE {end.bib} diff --git a/macros/latex/contrib/nddiss/nddiss2e.dtx b/macros/latex/contrib/nddiss/nddiss2e.dtx new file mode 100644 index 0000000000..6d1ec98b05 --- /dev/null +++ b/macros/latex/contrib/nddiss/nddiss2e.dtx @@ -0,0 +1,2416 @@ +% \iffalse meta-comment +% +% Copyright (C) 2004-2005 by Sameer Vijay +% +% This file may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either +% version 1.2 of this license or (at your option) any later +% version. The latest version of this license is in +% +% http://www.latex-project.org/lppl.txt +% +% +% \fi +% +% +% \CheckSum{1478} +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \changes{v0.98}{2004/04/15}{Initial {\em beta} version} +% \renewcommand{\generalname}{Release} +% \changes{v1.0}{2004/06/15}{First release} +% \renewcommand{\generalname}{General} +% \changes{v1.1}{2005/04/14}{Minor changes and clean-up} +% \changes{v2.0}{2005/05/14}{Some bugfixes, cleaned some of documentation} +% \changes{v2.1}{2005/06/14}{More bugfixes, changes in documentation} +% \renewcommand{\generalname}{Release} +% \changes{v3.0}{2005/07/27}{Major revamp and clean-up of the code, added +% \texttt{numrefs} and \texttt{textrefs} to allow different kinds of citation +% styles, added some more macros and modified others, +% changed the titlepage a bit, completed source documentation} +% \changes{v3.2013$\beta$}{2013/1/14}{Initial release of updates in order to comply with +% the Graduate School's current formatting regulations and to take advantage +% of some LaTeX package updates. Should be functional, and has been approved +% by the Dissertation/Thesis editors, but has not undergone wide-scale testing. - Megan Patnott} +% \changes{v3.2013}{2013/4/20}{Some bug fixes, minor changes in documentation, and addition of support for parts. - MP} +% \changes{v3.2016}{2016/10/16}{Fix natbib/showkeys ordering bug} +% \changes{v3.2017.1}{2017/05/09}{Display (CONTINUED) on multipage long table captions} +% \changes{v3.2017.2}{2017/08/23}{Add LuaLaTeX support. Allow non-capitalized titles.} +% \renewcommand{\generalname}{Update} +% +% \iffalse (Don't show this in the doc). +% \begin{macrocode} +%<*driver> +\ProvidesFile{nddiss2e.dtx} +\documentclass{ltxdoc} +\setcounter{secnumdepth}{2} +\setcounter{tocdepth}{2} +\DeclareRobustCommand{\nddiss}{% + \textsf{{\scshape nd}diss}\kern-0.03em% + 2$_\mathsf{\textstyle\varepsilon}$} +\providecommand{\dissfileversion}{3.2017.2} +\providecommand{\dissfiledate}{2017-05-09} +\DisableCrossrefs +\CodelineNumbered +\RecordChanges +\begin{document} + \DocInput{nddiss2e.dtx} +\end{document} +% +% \end{macrocode} +% \fi +% +% \title{The \nddiss\/ class\thanks{Version~\dissfileversion,% +% dated~\dissfiledate.}} +% +% \date{\dissfiledate} +% +% \maketitle +% +% \begin{abstract} +% The \nddiss\space class can be used to typeset dissertations submitted +% to the University of Notre Dame's Graduate School. This class conforms with +% the Graduate School guidelines as of Spring 2013 for the layout of the Ph.D. +% dissertations and Master's theses. +% \end{abstract} +% +% \tableofcontents +% +% \section{Introduction} +% \label{sec:intro} +% The \LaTeXe\space document class \nddiss\ is suitable for producing dissertations +% and theses conforming to the Spring 2013 +% guidelines of the Graduate School at the University of Notre Dame. +% The package is extends the standard \LaTeX\/ \textsf{book} class. +% +% The latest version of this class and related documentation can be found +% in a few places: +% \begin{itemize} +% \item On CTAN: \url{https://ctan.org/pkg/nddiss} +% \item On GitHub: \url{https://github.com/ndlib/nddiss} +% \item On the University of Notre Dame's Graduate School website: \url{http://graduateschool.nd.edu/} +% \end{itemize} +% +% \subsection{Disclaimer} +% \label{sec:disclaimer} +% While this class does as much formatting as it can, there are a few formatting items that +% you, the user, must do manually (see Section \ref{sec:author}). +% Please keep in mind that only \emph{you} are responsible for the +% correct formatting of your dissertation/thesis. +% Should you have questions, please consult the official formatting guide or email \url{dteditor@nd.edu}. +% +% \subsection{Dependencies and Limitations} +% \label{sec:deps} +% This classfile depends on many other packages to be installed. +% All of these required packages are available through MiKTeX and TeXLive, and +% chances are good they are already installed by your TeX distribution. +% Refer to section \ref{sec:features} for a list of the essential packages. +% +% The document class has only been tested with a small subset of available packages. +% There are numerous packages you may want to use for your work, but they may have +% to be modified accordingly. +% Things lacking include support for the \textsf{subfigure} +% and \textsf{subcaption} package and proper formatting of the captions in such an environment. +% Formatting of the captions could be much easier with the +% \textsf{caption}\footnote{\textsf{caption} package by Axel Sommerfeldt v3.0b[2004/05/16] +% and higher} in general, and is a thing-to-do for future versions. Permitting use of the +% \textsf{subfigure} and \textsf{subcaption} packages would also be a good thing to do +% if an update is ever made for reaosns other than resolving conflicts caused by changing +% Graduate School regulations. If you want to use a \textsf{subfigure} environment and don't +% need the caption capabilities of the \textsf{subcaption} package, adding the following +% code to your preamble may allow you to do this and still have your captions formatted +% according to the Graduate School's rules. +% \begin{verbatim} +% \usepackage{subcaption} +% \makeatletter +% \renewcommand\LT@makecaption[3]{% +% \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{% +% \vskip\abovetableskip% +% \centering\normalspacing +% #1{#2 }\\[\single@skip] +% {#3}\par +% \endgraf\vskip\belowtableskip}% +% \hss}}} +% \makeatother +% \end{verbatim} +% +% \subsection{History} +% +% The \nddiss\ package is an extensive rewrite by Sameer Vijay of an earlier \textsf{NDthesis} class +% for formatting dissertations. +% Megan Patnott updated \nddiss\ to the 2013 Graduate School Formatting guidelines. +% The \textsf{NDThesis} class was by D. A. Peterson. +% +% \section{Quick Start} +% +% This section provides a template you can use to get started. +% The distribution comes with a more detailed file, |template.tex|, that is similar, but more detailed. +% +% \begin{verbatim} +% \documentclass[numrefs,final]{nddiss2e} +% +% \begin{document} +% +% \frontmatter +% +% \title{Title in Title Caps} +% \author{Your Name} +% \work{Dissertation} +% \degaward{Doctor of Philosophy} +% \advisor{} +% \department{} +% \maketitle +% \makepublicdomain % There is also a copyright option +% +% \begin{abstract} +% Abstract here +% \end{abstract} +% +% % dedication is optional +% \begin{dedication} +% For Someone +% \end{dedication} +% +% \tableofcontents +% \listoffigures +% \listoftables +% +% % list of symbols is optional +% \begin{symbols} +% \sym{a}{definition of a} +% \end{symbol} +% +% % preface is optional +% \begin{preface} +% Preface here +% \end{preface} +% +% \begin{acknowledge} +% Thanks to everyone +% \end{acknowledge} +% +% \mainmatter +% +% \chapter{A New Dawn} % Chapter 1 +% All the text ... +% +% \appendix +% \chapter{Additional Data} % Appendix A +% +% \backmatter +% \bibliographystyle{nddiss2e} +% \bibliography{bibdatabase} +% +% \end{document} +% \end{verbatim} +% +% +% \section{Usage} +% +% Invoke the \nddiss\space document class by adding |\documentclass|\oarg{options}|{nddiss2e}| +% at the beginning of your \LaTeX\space source file. +% For most people the options |\documentclass[draft]{nddiss2e}| is good enough for the initial revisions. +% If you want your figures to display, use |\documentclass[review]{nddiss2e}|. +% +% Use the option |\documentclass[final]{nddiss2e}| for your formatting check submission, +% and |\documentclass[final,noinfo]{nddiss2e}| for the final submitted version. +% +% If you have two advisors, add the option |twoadvisors| here, and then use |\secondadvisor{}| +% later on the title page to give the name of the second advisor. +% +% By default, all documents produced using this class +% are formatted as one-sided, doublespaced, letter-sized pages, per the Graduate School requirements. +% In theory, the class file's specifications should override your system's defaults. +% If, however, you are getting A4 paper, try adding |\pdfpagewidth{8.5in}| and +% |\pdfpageheight{11in}| immediately after the |\documentclass| in your file. +% +% \subsection{Options} +% \label{subsec:options} +% +% \DescribeMacro{draft} +% \DescribeMacro{review} +% \DescribeMacro{final} +% Exactly \emph{one} of these options must be used. +% The |draft| and |review| options enable faster processing of the document and +% also include annotations to help write and edit it. +% +% The |draft| option enables a fast processing and preliminary document +% showing the labels for citations, tables, figures etc. and a black solid rule +% highlighting the horizontal overflows. Additionally, figures are replaced +% with placement boxes showing where the included figure would be placed. Such +% a document would be the one you would prepare for revising your text during +% writing stages. +% +% The |review| option makes it possible to prepare a document that is +% one step closer to the final version. +% Almost all the formatting of the final version is present, +% but the labels and keys as in the |draft| option are also displayed. +% A document prepared with the |review| option would be the one to +% personally check for proper formatting and possibly giving to your advisor if +% she wished to suggest corrections. +% +% The |final| option produces the document to be submitted to the Graduate School for +% formatting checks and as the final version. +% +% \DescribeMacro{twoadvisors} +% The |twoadvisors| option will produce a title page with space for two advisors. +% Use the |\secondadvisor| macro command +% (discussed in Section \ref{subsec:titlepage}) on the title page to give the +% name of the second advisor. +% +% \DescribeMacro{noinfo} +% The |noinfo| option disables the information page produced +% when the |review| or |final| style options are used. It is +% recommended that you only use this option when making the final +% submission to the Graduate School. +% +% \DescribeMacro{numrefs} +% \DescribeMacro{textrefs} +% These options determine how citations are displayed in the text. +% The default style is |numrefs|. +% The |numrefs| option produces a numbered citation sytle by using \textsf{natbib} +% and the ``nddiss2e'' or ``nddiss2enoarticletitles'' citation style +% file\footnote{|nddiss2e.bst| is a slight modificiation of |abbrvnat.bst| +% in the \textsf{natbib} package; |nddiss2enoarticletitles.bst| is +% essentially the same as |nddiss2e|, but does not display the titles of +% journal articles, as this is the standard in some fields}. +% The |textrefs| option changes the citation style to be similar to +% ``author-date'' style with the same files. +% +% \DescribeMacro{sort} +% \DescribeMacro{compress} +% \DescribeMacro{sort\&compress} +% At most one of these options should be selected. The |sort| option will cause +% both numerical and ``author-date'' style references to be sorted in the order +% that they appear in the bibliography when multiple references are cited. The +% |compress| option compresses numerical citations, e.g. it turns [1,2,3] into +% [1-3], and does nothing to ``author-date'' style references. The +% |sort&compress| option first sorts and then compresses numerical references, and +% only sorts ``author-date'' style references. +% +% Since the same set of packages and +% style files result in differing citation formats, +% refer to the documentation for |natnotes.dvi| in your |TEXMF| tree, +% to be aware of the +% various ways in which you can make a citation in your text. +% +% \DescribeMacro{10pt} +% \DescribeMacro{11pt} +% \DescribeMacro{12pt} +% These options adjust the font size of the body text. +% The choice is only applicable when the |draft| option is used, and defaults +% to |10pt|. +% When |review| or |final| is used, this option is ignored and |12pt| is used. +% +% \DescribeMacro{twoside} +% The |twoside| option causes the class file to prepare a document meant +% to be printed double-sided. +% This option is strictly for if you want to prepare a two-sided document for +% your own use. The only difference from the one-sided document is in the page +% layout. +% Do NOT use this option when preparing to submit it to the Graduate School. +% +% \DescribeMacro{nocenter} +% The |nocenter| option allows non-centered chapter titles. +% Do NOT turn in your document this way to the Graduate School! +% +% \DescribeMacro{openbib} +% The |openbib| option formats your bibliography in the following manner: \\ +% \qquad Author \\ +% \qquad \qquad Article/book title \\ +% \qquad \qquad Other information \\ +% \qquad \qquad Website, if applicable \\ +% Usually you would not need to use this option since the default layout of the +% |bibliography| is acceptable. +% +% \section{Arrangement of Contents} +% +% A dissertation or a thesis document contains the following parts, +% in the order listed. Only those marked as optional may be omitted. +% +% \begin{enumerate} +% \item Title Page +% \item Copyright page +% \item Abstract \emph{(optional for Master's thesis)} +% \item Dedication \emph{(optional)} +% \item Table of Contents +% \item List of Figures +% \item List of Tables +% \item List of Symbols \emph{(optional)} +% \item Preface \emph{(optional)} +% \item Acknowledgments \emph{(optional)} +% \item Text +% \item Appendix (or Appendices) \emph{(optional)} +% \item Bibliography (or References, or Works cited) +% \end{enumerate} +% +% The macros and environments described below ease the formatting of these +% parts. +% +% \subsection{Title Page} +% \label{subsec:titlepage} +% +% \DescribeMacro{\maketitle} +% The title page is generated by |\maketitle| with no arguments. +% This macro has been modified for providing a title page in the correct format. +% +% You can set information to display on the title page by using the following +% commands before invoking |\maketitle|. +% \begin{itemize} +% \item \DescribeMacro{\title\{\}} The title of the document, using the +% |\title| macro. You may use linebreaks within the title, +% protected via |\protect\\| and the title may be up to four +% lines long. +% \item \DescribeMacro{\author\{\}} Give your name in full and exactly as +% registered with the Graduate School, using the +% |\author| macro, e.g. |\author{Gary Graham Gordon-Graeme}|). +% \item \DescribeMacro{\work\{\}} Whether the document is a +% \emph{Thesis} or a \emph{Dissertation} as the argument of the +% |\work| macro, e.g. |\work{Dissertation}|). +% \item \DescribeMacro{\degaward\{\}} Specify the degree you're aiming for +% with the |\degaward| macro. Should be one of +% |\degaward{Doctor of Philosophy}| (without the ``in \emph{subject}'' or +% |\degaward{Master of Science\\in\\Engineering}|. +% \item \DescribeMacro{\advisor\{\}} Give the name of your advisor with +% the |\advisor| macro. +% \item \DescribeMacro{\secondadvisor\{\}} Give the name of your second advisor, +% if any, with the |\secondadvisor| macro. You also need to pass in the +% |twoadvisors| option in the |\documentclass| declaration. +% \item \DescribeMacro{\department\{\}} Give the name of your department with the +% |\department| macro, e.g. |\department{Gnulogical Engineering}|). +% \item \DescribeMacro{\degdate\{\}} The month and year of the defense of the +% thesis with the |\degdate| e.g. |\degdate{June 2004}|). If you forget to +% declare this, the current month/year will be used. +% \end{itemize} +% +% \subsection{Copyright Page} +% \DescribeMacro{\makecopyright} +% \DescribeMacro{\copyrightholder\{\}} +% \DescribeMacro{\copyrightyear\{\}} +% The |\makecopyright| macro should be invoked after |\maketitle| to +% produce a copyright page. +% Prior to calling |\makecopyright|, you may specify a different name +% for the copyright holder (the default is the name given through the +% |\author| macro) and for the copyright year (the default being the +% current year). Do this with the |\copyrightholder|\marg{name} +% and |\copyrightyear|\marg{year} macros. +% +% \DescribeMacro{\makepublicdomain} +% Alternatively, you can use +% |\makepublicdomain| to produce a page with the message ``This document +% is in the public domain.'' Note that the absence of the copyright page +% does \emph{not} place your dissertaion in the public domain, you must +% declare it as such explicitly. +% +% \subsection{Abstract Page(s)} +% \DescribeEnv{abstract} +% The abstract text should be placed between +% |\begin{abstract}| and |\end{abstract}|. +% If the abstract is longer than one page, the environment will place +% the author's name in the top-right header. +% +% \DescribeMacro{\abstractname\{\}} +% You may use |\abstractname|\marg{text} to change the abstract caption +% to |text|. +% Default name: |Abstract|. +% You probably don't need to change it. +% +% \subsection{Dedication} +% \DescribeEnv{dedication} +% The dedication is optional. +% If you want one, use the \textsf{dedication} envrionment. +% The format of dedication is essentially free. +% This environment will center the text of your dedication vertically on the page. +% +% \DescribeMacro{\dedicationame\{\}} +% You may use |\dedicationname|\marg{text} to change the title for the +% dedication page. Default name: |\mbox{}| i.e.\/ an empty title. +% You probably don't need to change it. +% +% \subsection{Table of Contents; Lists of Figures and Tables} +% \DescribeMacro{\tableofcontents} +% \DescribeMacro{\listoffigures} +% \DescribeMacro{\listoftables} +% Use the macros |\tableofcontents|,|\listoffigures| and |\listoftables|, +% \emph{in this order}, to produce the required table of contents and lists of +% figures and tables. +% +% \DescribeMacro{\contentsname\{\}} +% \DescribeMacro{\listfigurename\{\}} +% \DescribeMacro{\listtablename\{\}} +% You may use |\contentsname|, |\listfigurename| and |\listtablename| +% to change the titles for these sections. +% By default they are |CONTENTS|, |FIGURES|, and |TABLES|. +% You probably don't need to change them. +% +% \subsection{List of Symbols} +% \DescribeEnv{symbols} +% The list of symbols is optional. +% Use the \textsf{symbols} envrionment to format a list of +% symbols/abbreviations used in your work. +% The envrionment takes an optional argument specifying the desired format, e.g. +% |\begin{symbols}[cl]| for first column centered and the next column +% aligned left. By default, the first column will be right aligned and +% the second column will be left aligned. You may use any of the standard +% |tabular| column alignment options. +% +% \DescribeMacro{\sym\{\}\{\}} +% The command |\sym|\marg{symbol}\marg{definition} may make the task of +% entering the symbols and their meanings in the \textsf{symbols} +% environment easier. |\sym| takes two arguments: the first, a math +% ``object'' and the second, the plain text describing the +% symbol. Since the first argument is in math mode, any plain text +% needs to be wrapped with |\mathrm{..}| +% Likewise, any math symbol in the second argument needs to placed in +% |$..$|. Example: |\sym{\beta_\mathrm{norm}}{Definition for $\beta$}| +% +% \DescribeMacro{\symbolsname\{\}} +% You may use |\symbolsname{}| to change the title of the symbols section. +% Default name: |SYMBOLS|. +% +% \subsection{Preface} +% \DescribeEnv{preface} +% The \textsf{preface} environment is provided for formatting the preface to your work. +% +% \DescribeMacro{\prefacename\{\}} +% You may use |\prefacename| to change the name of this section. +% Default name: |PREFACE|. +% +% \subsection{Acknowledgments} +% \DescribeEnv{acknowledgments} +% The environment \textsf{acknowledgments} is used to format the +% acknowledgment \emph{chapter}. +% +% +% \DescribeMacro{\acknowledgename\{\}} +% You may use |\acknowledgename| to change the name of this section. +% Default name: |Acknowledgments|. +% +% \subsection{Text} +% \DescribeMacro{\mainmatter} +% Use the macro |\mainmatter| to mark the beginning of your text. +% You can then use |\part|, |\chapter|, |\section|, |\subsection|, and |\subsubsection| +% commands, as you would with the \textsf{book} class. +% Text is formatted in |\normalspacing| i.e. double-spacing. +% The pages are numbered in |plain| pagestyle such that the page numbers +% are centered in the bottom. The |chapter| titles can be multi-line, +% and if so are formatted doubly spaced. +% +% \DescribeMacro{\unnumchapter\{\}} +% Use the macro |\unnumchapter| to create to create unnumbered chapters that +% appear in the Table of Contents. +% +% \subsection{Appendix} +% \DescribeMacro{\appendix} +% Use the command |\appendix| after the last normal chapter to signal +% that all following chapters are to be appendices. +% This use is the same as in the \textsf{book} class. +% To begin an appendix, use the |\chapter|\marg{title} macro. +% +% \subsection{Backmatter} +% \DescribeMacro{\backmatter} +% The |\backmatter| macro separates the bibliography, index +% and glossary from the main matter and any appendices. +% +% \subsection{Bibliography} \DescribeMacro{\bibliography} +% If you are using \BibTeX\/ (and why would you not want to use \BibTeX?), +% use the |\bibliography|\marg{bibfile} macro to generate the +% bibliography. You should refer to \BibTeX\/ manual for details about making a |.bib| file +% and format for the entries. +% +% For citing references in the text, the package \textsf{natbib} is +% included with either the settings \texttt{numbers,sort\&compress} (|numrefs| option) or +% \texttt{authoryear,sort} (|textrefs| option). The package \textsf{natbib} is a +% fantastic package that has numerous macros for \emph{citing} in different ways. +% +% \textbf{Warning:} The packages \textsf{cite} and \textsf{citation} are +% NOT compatible +% with the \textsf{natbib} package, and will cause errors if used. +% +% \DescribeEnv{thebibliography} +% If you are not using \BibTeX\/ make your own bibliography by using the +% \textsf{thebibliography} environment. In this case, you would have +% to write the reference entries in the right format in your |.tex| source +% file itself. If you are using the |textrefs| option, you'll need to +% consult the \textsf{natbib} manual to ensure that you enter your entries in +% the format required by the package. +% +% \DescribeMacro{\bibname\{\}} +% You may use |\bibname|\marg{newbibname} to change the name of this section. +% Default name: |Bibliography|. +% +% \subsection{Chapter-wise Bibliography} +% By default the bibliography appears at the end of your work and contains +% all the references from the entire entity. +% If you need to have a separate bibliography for each chapter, +% you can do it in the following way. +% First, load the package \textsf{chapterbib} without any options +% in the preamble of your main source file and +% redefine the commands |\bibname| and |\bibsection| as shown below. +% \begin{verbatim} +% %% Main source file %% +% \documentclass[...]{nddiss2e} +% \usepackage{chapterbib} +% \renewcommand{\bibname}{Cited works} +% \renewcommand{\bibsection}{\section{\bibname}} +% ... +% \begin{document} +% \include{chptr1} +% ... +% \include{appndx} +% \end{document} +% \end{verbatim} +% +% To process the bibliography for each chapter individually, the chapters or sections +% must be separated into different files and \emph{include} +% them in the main file, as shown above. Each such |\include|d file must contain +% its own |\bibliographystyle{nddiss2e}| and |\bibliography{...}| command at +% an appropriate position. There should not be any bibliographic commands in +% the main source file. +% +% After compiling the main tex file once (with |latex| or +% |pdflatex|), the |.aux| files needed by |bibtex| will have been created +% and you can then run |bibtex| on each of the separate source files to obtain a |.bbl| +% for each file. The remaining steps are the same as for a normal |.tex| file. +% +% You can find more details of this in the \textsf{natbib} manual. +% +% \section{Note For Authors} +% \label{sec:author} +% The dissertation author must make sure that the +% following conditions are met in order to generate a dissertation +% acceptable by the Graduate School: +% +% \begin{itemize} +% \item The List of Figures must be \emph{before} the List of Tables, i.e. the +% macro command |\listoffigures| comes before |\listoftables| in the +% frontmatter. +% \item Table captions must be \emph{above} the corresponding table, +% In case of the \textsf{table} environment, this can be achieved by +% putting |\caption| before you include the table (e.g. in a \textsf{ +% tabular} environment). +% \item Figure captions should be \emph{below} the corresponding figure. +% In the \textsf{figure} environment, the |\caption| goes after +% the |\includegraphics| macro command. +% \item The bibliography is the last section/chapter of the thesis---unless +% you are using the \emph{chapter-wise} bibliography. +% \end{itemize} +% +% \subsection{Tips and Suggestions} +% \label{subsec:tips} +% \begin{itemize} +% \item It is \emph{strongly} recommended that you compile your document with +% pdf\LaTeX. Compiling to dvi or postscript first may result in ``fuzzy'' fonts +% when viewing the document on your screen. Additionally, the benefits +% of |hyperref| and |pdflscape| are only available if you compile using +% pdf\LaTeX. +% \item Use the |\toprule|, |\midrule| and |\bottomrule| macro commands (from the +% \textsf{booktabs} package) in tables for generating the appropriate +% horizontal rules. Refrain from using vertical rules to separate columns in tables +% as much as possible. +% \item Use the \textsf{longtable} environment for handling very long +% tabular materials. Example: +% \begin{verbatim} +% \begin{longtable}{lc} +% \caption[]{LONG TABLE CAPTION \label{tab:longtable} } +% \toprule +% Heading 1 & Heading 2 \\ +% \midrule +% \endfirsthead +% \caption[]{ } \\ % doesn't matter what text is in the continued caption. +% \midrule +% Heading 1 & Heading 2 \\ +% \midrule +% \endhead +% \endfoot +% \bottomrule +% \endlastfoot +% % Now the tabular material % +% Long & Table etc. \\ +% \end{longtable} +% \end{verbatim} +% \item If a figure or table is very wide and will not fit on a page, +% use the \textsf{landscape} environment (from the included +% \textsf{lscape} package) to format them in \emph{landscape} +% mode. They will automatically appear on a separate page. If you +% use pdf\LaTeX\/ to compile your document, then the included +% \textsf{pdflscape} package will flip this page on the screen +% for easier reading. +% \item The \textsf{sidewaystable} environment (from the included +% \textsf{rotating} package) is incompatible with the current +% class and should be avoided. +% \item Usually the width of the figure and table captions is 90\% of the textwidth +% (i.e. |0.9\textwidth|). If needed, the width can be changed on a case-by-case +% basis by doing one of the following: +% \begin{itemize} +% \item Use a \textsf{minipage} environment of appropriate width and enclose +% your tabular or figure float inside it, or +% \item set the |\capwidth| inside the \textsf{table} or the \textsf{figure} +% environment, and |\LTcapwidth| \emph{outside} the \textsf{ +% longtable} environment, e.g.,\\[\baselineskip] +% \begin{minipage}{0.5\textwidth} +% \begin{verbatim} +% \begin{table}[H] +% \setlength{\capwidth}{0.8\textwidth} +% \centering +% \caption{TABLE CAP\label{tab:this}} +% \begin{tabular}{lc} +% ... +% \end{tabular} +% \end{table} +% \end{verbatim} +% \end{minipage} +% \begin{minipage}{0.5\textwidth} +% \begin{verbatim} +% \setlength{\LTcapwidth}{6in} +% \begin{longtable}{lccc} +% ... +% \end{\longtable} +% \end{verbatim} +% \end{minipage} +% \end{itemize} +% \item Use the \textsf{tabularx} environment for the actual formatting +% of the tables (within the \textsf{table} environment). It differs +% slightly from \textsf{tabular} environment and you should refer to +% their documentation in the |TEXMF| tree for more information. +% \item If you've used a \textsf{longtable} environment in your document, +% it might be necessary to compile the document multiple times so as to +% get proper alignment of columns. This is documented in the +% \textsf{longtable} manual. +% \item If you wish to use |\footnotes| in the \textsf{longtable} environment, +% please read its documentation. There are some handicaps present. +% \item To cite a website in your bibliography\footnote{More info at +% \url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=citeURL}}, use the +% following format in your |.bib| file: +% \begin{verbatim} +% @Misc{fairley2000, +% author = "N. Fairley", +% title = "Casa{XPS} {VAMAS} processing software", +% howpublished = "Website", +% note = "\url{http://www.casaxps.com}", +% } +% \end{verbatim} When processed with the |nddiss2e.bst| citation style file +% this gives:\newline +% 111. N. Fairley. CasaXPS VAMAS processing software. Website. +% \url{http://www.casaxps.com}.\newline +% \end{itemize} +% +% \subsection{You Found Errors?} +% Errors in a \LaTeX\/ document are to be expected. +% If you have a problem that is that seems to be more than a typo or +% unbalanced brace, it is possible that there is a conflict between +% the packages you have included and those that \nddiss\/ uses. +% If you find yourself in that situtation, there is a mailing list +% for handling support issues with \nddiss\/. +% Look through the archive, and if there are no answers, please +% send an email to \url{ND-LATEX-USERS@listserv.nd.edu} (registration required). +% The more effort you spend in isolating the problem or in troubleshooting +% will make it more likely that others can reproduce the problem and help +% you solve it. +% Also if you have a problem that you then solve, please also email the list. +% Your doing so will help the next person to have that problem, and will +% also make the maintainers aware of it, so future versions of the class file +% can be better. +% +% \section{Other Packages Used} +% \label{sec:features} +% +% A number of packages are required by default and must be present in your +% \TeX\space search path (if you use a package manager such as MiKTeX or +% TeXLive, it will take care of this for you). As far as possible, these have +% been tested for proper formatting style with the \nddiss\/ class file. The list +% includes +% \textsf{ifthen}, +% \textsf{exscale}, +% \textsf{ifpdf}, +% \textsf{ifluatex}, +% \textsf{ifxetex}, +% \textsf{xspace}, +% \textsf{longtable}, +% \textsf{indentfirst}, +% \textsf{tabularx}, +% \textsf{showkeys}, +% \textsf{enumerate}, +% \textsf{latexsym}. +% \textsf{epsfig}, +% \textsf{color}, +% \textsf{graphicx}, +% \textsf{url}, +% \textsf{setspace}\footnote{v6.7[2000/12/01] or above}, +% \textsf{amsmath}, +% \textsf{float}, +% \textsf{lscape}, +% \textsf{rotating}, +% \textsf{booktabs}, and +% \textsf{natbib}\footnote{v8.31[2009/07/16] or above}. +% Sameer urges you to read the documentation of these packages available in +% the |TEXMF| tree, if you think you might use their features +% or want to tweak some advanced options. Of these packages, +% \textsf{ifpdf}, +% \textsf{longtable}, +% \textsf{natbib}, +% \textsf{booktabs}, +% \textsf{rotating}, +% \textsf{url}, and +% \textsf{setspace} +% are not part of the \LaTeX\space required distribution, so you may need +% to download them. They are all available through both MiKTeX and TeXLive; +% note that \textsf{ifpdf} is part of the +% \textsf{oberdiek} bundle, which is what you need to download to get +% that package if it is not already installed on your system. +% +% Other packages may or may not be appropriate for use with the +% \nddiss\space class when producing copies to be submitted to the +% Graduate School. Please be careful when using packages that change the +% default fonts, or the page layout. +% +% In general, the official guidelines of the Graduate School are +% followed to the maximum extent possible. This includes proper +% formatting of the title page and the abstract page (from the +% \textsf{ndthesis} package), numbering of the pages in the \textit{frontmatter}, +% generation of properly formatted table of contents, list +% of figures etc., as well as bibliography at the end. +% Per the guide, the number of different fonts and font sizes used is kept to +% a minimum. The contents, all lists and the bibliography are +% single-spaced but the inter-line spacing for the rest of the document +% is double. +% +% \subsection{Generating PDF document} +% \label{subsec:pdfdoc} +% +% The \nddiss\space class also allows production of pdf documents with +% pdf\LaTeX\space. As of Spring 2013, this is the preferred method of +% compilation. In this case, the \textsf{hyperref} and \textsf{pdflscape} +% packages are also required. The \textsf{hyperref} package ensures +% that the generated pdf document contains internal as well as external +% links for citations and bookmarks. A document produced by this method +% also contains embedded fonts (\textit{press quality} pdf) and is suitable +% for electronic submission to the library and for microfilm archiving. +% Although the most appropriate options for \textsf{hyperref} are +% passed on, for advanced features refer to its documentation. The +% \textsf{pdflscape} package flips pages with landscape orientation in the +% pdf file for easier reading, but the location of the page numbers does not change. +% +% Figures must be in pdf, jpeg, png, or gif format, and not in encapsualted +% postscript (eps). An easy way to convert \textit{eps} files to \textit{pdf} +% files is to use the utility |epstopdf| or |eps2pdf|, which should be +% available on your unix-like distribution already (should you have one). It is also +% possible to convert your eps files to pdfs using an online conversion tool. +% Searching for ``eps to pdf'' brought up several free options in Fall 2012. +% +% +% +% \StopEventually{% +% \footnotesize +% \PrintChanges +% } +% +% \clearpage +% \section{The Implementation} +% Following is our attempt at documenting the source of the +% \nddiss\space class file for the \TeX\space hackers. +% +% \small\mbox{}\\ +% \iffalse (Don't show this in the doc). +%<*class> +% \fi +% At the start, we define the base version of \LaTeXe\space needed and +% the label information for the \nddiss\space class. +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesClass{nddiss2e} +% \end{macrocode} +% \iffalse +% +% \fi +% \iffalse (Don't show this in the doc). +% \begin{macrocode} +%