Skip to content

Conversation

@camden-bock
Copy link

Refactor maine-thesis to v2.0.0

This pull request introduces a major refactor of the maine-thesis class, bringing it to version 2.0.0 The update streamlines maintenance, modernizes package dependencies, and provides a more user-friendly interface for thesis formatting.

Key Changes:

File Structure and Maintenance:

  • The class is now generated from a single maine-thesis.dtx source file, which simplifies maintenance and automatically produces both the class file (maine-thesis.cls) and its documentation.
  • The build system now uses l3build for a more robust and automated process of generating a CTAN-ready package.
  • On GitLab, the build process is automated for tags. l3build handles releases on GitLab and preparation and upload to CTAN.

Package and Dependency Updates:

  • The class has been updated to use modern packages like biblatex with the biber backend for citation management.
  • New dependencies have been added to provide more advanced features, including fontspec, microtype, hyperref, csquotes, titlesec, and etoolbox. These packages offer improved font handling, typography, hyperlinking, and title formatting.

Formatting and User Interface:

  • Heading styles are now managed through named macros (\apaheadings, \chicagoheadings, \idecimalheadings) for a more intuitive and direct approach.
  • Caption formatting has been unified with the \DeclareCaptionFormat{thesis} command, replacing low-level redefinitions.
  • The title page and abstract environments have been redesigned with \maketitlehooka and \maketitlehookd commands for more precise layout control.

Code and Variable Changes:

  • Deprecated commands such as \libraryrights and \dissacceptance have been removed and now produce a \ClassError message.

  • The \preliminary command now sets tocdepth and secnumdepth to 1.

  • The \appendix command has been updated to globally change \chaptername to "Appendix" and use alphabetical chapter counters.

  • The \comment and \highlight commands are now powered by the changes package for more extensive functionality.

  • The \multipleappendicestrue command has been replaced with the more intuitive multiappendices class option.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant