1

I'm laying out an edited volume (first of many apparently, so I'm building a class based on memoir), for which each chapter has a different author.

I would like list editor and contributors separately on the titlepage, and place a list of contributors along with their bio/affiliations and contact info ordered by chapter somewhere in the front matter. In addition, each chapter title (and its toc entry) needs to have the author(s) and footnoted affiliations (chapter only).

What I'm thinking is creating a new list (similar to a list of figures) with each contributing author block and point latex's standard author to "editor"?

Unfortunately, that exceeds my skills of latex. Any suggestions on how to proceed would be helpful.

EDIT: I can't use image or cloud access from work, so I'll just have to rough out what I'm talking about:

For the title pages:

TITLE

Edited by:
A.N. Editor

with contributions by:
One Author
Second Author
Third Author

And in the frontmatter:

**List of Contributors**

One Author, Professor Emeritus
Miscatonic University, 123 Main Street, Salem NY 12345
email: [email protected]

Second Author, Chief Engineer
Big Enviro Firm, Inc., 123 Main Street, Anywhere CA 67890
email: [email protected]

Third Author, Random Expert of Miscellany
DeepThought Consultants, LLC., 21b Baker Street, Washington D.C.
7
  • 1
  • @touhami Great, those give me a good start. Didn't find those in my searches fo rsome reason. Not sure how to address the affiliations and titlepage issues from this yet, but something to start with. I'd think maybe some combination of those answers and authblk? The coding of the standard \author command has always been a bit opaque to me.
    – JSCard
    Oct 5, 2016 at 19:01
  • Can you provide an example (no matter how crude) of what you want to see in the final layout? Oct 6, 2016 at 18:15
  • Unfortunately, the media and cloud filters here at work don't allow me to use images on the site. I did find something similar to what I'm looking for with Springer's LaTeX template for contributed books... I may be able to adapt some code from their style and class to do it.
    – JSCard
    Oct 6, 2016 at 18:57
  • It's still a little unclear what you want. Each of your two 'graphics' look like a one-column tabular, so I'm not sure what the problem is. Are you trying to avoid repeating the information each time (e.g., is this supposed to be a more complicated version of \maketitle)? And the TOC needs to mention essay title + author name? How is that laid out? And why can't \footnote work for the affiliations on the first page of each essay/chapter?
    – jon
    Oct 17, 2016 at 4:54

1 Answer 1

2

Based on the above comments, here's one way to do it. I relied on the little-used yax package because it seems like your key-value needs are pretty simple and it provides a lightweight markup syntax.

The main macros are

\printcontributor{<parameter>}

which will print the full information of each contributor. An example of how you can do some simple conditional formatting is shown.

The other macro is

\maketitlepage{<title>}{<editor>}{<list of contributors, separated by commas>}

This is one way to create a title page by reusing the information from \setparameter. The only little trick is to use etoolbox's list-looping function so you can access the information of each contributor simply by using the parameter name.

In both cases, you'll probably want to change the formatting to suit your needs.

\documentclass[12pt]{memoir}
\usepackage{etoolbox}
\usepackage{yax}
\usepackage{hyperref}

\setparameter Smith:
 firstname   = John
 lastname    = Smith
 job         = {Professor Emeritus}
 univ        = {Miscatonic University}
 address     = {123 Main Street}
 city        = Salem
 region      = NY
 postcode    = 12345
 email       = {\href{mailto:[email protected]}{[email protected]}}

\setparameter Doe:
 firstname   = Jane
 lastname    = Doe
 job         = {Chief Engineer}
 firm        = {Big Enviro Firm, Inc.}
 address     = {123 Main Street}
 city        = Anywhere
 region      = CA
 postcode    = 67890
 email       = [email protected]

\setparameter Author:
 firstname   = Third
 lastname    = Author
 job         = {Random Expert of Miscellany}
 firm        = {Deep Thought Consultants, LLC.}
 address     = {123 Main Street}
 city        = Elsewhere
 region      = ZZ
 postcode    = 55555

\newcommand{\printcontributor}[1]{%
  \begingroup
  \parindent 0pt
  \usevalue #1: firstname
  \space
  \usevalue #1: lastname
  \ifattribute #1: job {,\space}{\relax}
  \usevalue #1: job
  \newline
  \usevalue #1: univ
  \usevalue #1: firm
  ,\space
  \usevalue #1: address
  ,\space
  \usevalue #1: city
  \space
  \usevalue #1: region
  \space
  \usevalue #1: postcode
  \ifattribute #1: email {\newline} {\relax}
  \usevalue #1: email
  \endgroup
}

% #1 = title of book
% #2 = editor
% #3 = comma-separated list of contributors from above \setparameter
\newcommand{\maketitlepage}[3]{%
  \begingroup
  \centering
  \begingroup
  \Large \bfseries
  #1
  \endgroup

  \vspace*{2\baselineskip}

  Edited by:\par
  #2

  \vspace*{2\baselineskip}

  with contributions by:

  \renewcommand\do[1]{%
    {\itshape
    \usevalue ##1:firstname \space \usevalue ##1:lastname \par}%
    }
  % \docsvlist{Smith, Doe, Author}
  \docsvlist{#3}

  \endgroup
}

\begin{document}

% print custom title page
\maketitlepage
  {Title of the Book}%
  {A. N. Author}%
  {Smith, Doe, Author}

\bigskip

% Contributors
\begingroup
\parindent 0pt
\parskip  12pt

\textbf{Contributors}

\printcontributor{Smith}

\printcontributor{Doe}

\printcontributor{Author}

\endgroup

\end{document}

The \tableofcontents is left untouched. Although you mentioned the memoir class, it is unclear how the individual entries should appear in the table of contents. (And memoir's manual explains how to fiddle with your TOC settings.)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .