Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement an article class #455

Open
simoncozens opened this issue Mar 9, 2017 · 2 comments
Open

Implement an article class #455

simoncozens opened this issue Mar 9, 2017 · 2 comments
Labels
enhancement Software improvement or feature request

Comments

@simoncozens
Copy link
Member

This is a great idea anyway because it will allow us to abstract out what should be shared between book and article. And I reckon it will help us to sharpen up the counter package.

@alerque alerque added the enhancement Software improvement or feature request label Apr 20, 2017
@Omikhleia
Copy link
Member

First, I find this list of differences in LaTeX (and related packages) interesting;

Differences with regard to available commands and environments

  • book and report feature the \chapter sectioning command, while article doesn't.
  • In book and report, \appendix will cause \chapters to be typeset as "Appendix X" instead of "Chapter X". For article, this isn't applicable.
  • book and report will start a new page for \parts , while article won't.
  • book offers the \frontmatter, \mainmatter, and \backmatter commands to control page numbering (Roman for the front matter, arabic elsewhere) and numbering of sectioning titles (no numbering in the front and back matter), while report and article don't.
  • book doesn't offer the abstract environment, while report and article do.

Differences with regard to default settings (= can be changed)

  • The book class uses the twoside class option (which means different margins and headers/footers for even and odd pages), while report and article use oneside.
  • book uses openright (new parts and chapters start on "right" pages, adding a blank page before if necessary), while report uses openany. (Note that "right" means an odd page in twoside mode, but any page in oneside mode.) For article, the distinction between openright and openany isn't applicable.
  • book uses the headings pagestyle for non-chapter-starting pages, while report and article always use plain.
  • book and report use titlepage (the title page and -- if applicable -- the abstract environment will be typeset on pages of their own), while article uses notitlepage.
  • For book and report, the lowest-level sectioning command which is numbered and incorporated into the table of contents is \subsection, while for article it is \subsubsection.
  • book and report will use the arguments of \chapters and \sections for running headings (if such headings are present), while article will use \sections and \subsections.
  • book and report will number floats (figures, tables etc.), equations, and footnotes per chapter, while article will number them continuously. Note that footnotes -- even when numbered per chapter -- do not feature a chapter prefix.
  • book and report will use \bibname (which defaults to "Bibliography") for the heading of bibliographic references, while article will use \refname (which defaults to "References").

Secondly, I do not imply above that this is the only way to go.

  • For instance, IIRC, while both book and article can provide authors in their title (and \maketitle etc.) the LaTeX book doesn't have a standard way to provide an author for a specific chapter - something that's usually helpful in a collection of essays.
  • More generally, some of the above specifications are (IMHO) somewhat annoying when migrating from a type (say article) to another (say book). Which is, again, what one may have do do when assembling a collection of essays (initially articles) into a book.

In other terms, there could perhaps be more ubiquity between theses classes than offered by the LaTeX paradigms.

@Omikhleia
Copy link
Member

Also more or less relates to discussion #1329

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Software improvement or feature request
Projects
None yet
Development

No branches or pull requests

3 participants