memo_template: add new article-class memo template
Replaces the assignment_template with a memo-format template based on the article class. The look-and-feel is ported from the old cdsc-memo chapterstyle in cdsc-memoir.sty: a single-line "TITLE [hfill] AUTHOR" header and sans-serif uppercase section headings. Like the migrated paper_template, this builds with lualatex and produces a tagged, PDF/UA-2 compliant PDF. verapdf --flavour ua2: 0 failures, 1723 passed rules. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
15
memo_template/.gitignore
vendored
Normal file
15
memo_template/.gitignore
vendored
Normal file
@@ -0,0 +1,15 @@
|
||||
/auto/
|
||||
/cache/
|
||||
/vc
|
||||
/refs-processed.bib
|
||||
/*.aux
|
||||
/*.bbl
|
||||
/*.blg
|
||||
/*.log
|
||||
/*.out
|
||||
/*.pdf
|
||||
/*.fdb_latexmk
|
||||
/*.fls
|
||||
/*.ttt
|
||||
/*.bcf
|
||||
/*.run.xml
|
||||
30
memo_template/Makefile
Normal file
30
memo_template/Makefile
Normal file
@@ -0,0 +1,30 @@
|
||||
#!/usr/bin/make
|
||||
|
||||
all: $(patsubst %.tex,%.pdf,$(wildcard *.tex))
|
||||
|
||||
# use the following section for Rnw/knitr documents
|
||||
# all: $(patsubst %.Rnw,%.pdf,$(wildcard *.Rnw))
|
||||
# %.tex: %.Rnw
|
||||
# Rscript -e "library(knitr); knit('$<')"
|
||||
|
||||
%.pdf: %.tex
|
||||
latexmk -f -lualatex $<
|
||||
|
||||
clean:
|
||||
latexmk -C *.tex
|
||||
rm -f *.tmp *.run.xml
|
||||
rm -f vc
|
||||
rm -f *.bbl
|
||||
# the following lines are useful for Rnw/knitr
|
||||
# rm -rf cache/ figure/
|
||||
# rm -f *.tex
|
||||
|
||||
viewpdf: all
|
||||
evince *.pdf
|
||||
|
||||
vc: resources/vc-git
|
||||
|
||||
pdf: all
|
||||
|
||||
.PHONY: clean all
|
||||
# .PRECIOUS: %.tex
|
||||
90
memo_template/cdsc-memo.sty
Normal file
90
memo_template/cdsc-memo.sty
Normal file
@@ -0,0 +1,90 @@
|
||||
% Memo-style page layout for CDSC documents.
|
||||
%
|
||||
% Article-class equivalent of the old cdsc-memo chapterstyle that
|
||||
% lived in cdsc-memoir.sty. Targets the standard `article' class so
|
||||
% the LaTeX tagging-project can produce tagged, accessible PDFs.
|
||||
%
|
||||
% Look-and-feel: sans-serif uppercase title and author on a single
|
||||
% line, sans-serif uppercase section headings, no paragraph indent,
|
||||
% and a small-caps "page/total" footer.
|
||||
%
|
||||
% Copyright 2009-2026 Benjamin Mako Hill <mako@atdot.cc>
|
||||
% Copyright 2008-2009 Kieran Healy <kjhealy@soc.duke.edu>
|
||||
|
||||
% Distributed as free software under the GNU GPL v3
|
||||
|
||||
\usepackage{lastpage}
|
||||
\usepackage{xcolor}
|
||||
|
||||
%%% Page style: empty header; "page/total" centered in the footer.
|
||||
\usepackage{fancyhdr}
|
||||
\setlength{\headheight}{14.5pt}
|
||||
\addtolength{\topmargin}{-2.5pt}
|
||||
|
||||
\fancypagestyle{cdsc-page-memo}{%
|
||||
\fancyhf{}%
|
||||
\fancyfoot[C]{\scshape\thepage/\pageref*{LastPage}}%
|
||||
\renewcommand{\headrulewidth}{0pt}%
|
||||
}
|
||||
|
||||
% Variant with git revision info in the footer (requires the vc package).
|
||||
\fancypagestyle{cdsc-page-memo-git}{%
|
||||
\fancyhf{}%
|
||||
\fancyfoot[C]{\texttt{\footnotesize\textcolor{BrickRed}{git revision \VCRevision\ on \VCDateTEX}}}%
|
||||
\renewcommand{\headrulewidth}{0pt}%
|
||||
}
|
||||
|
||||
\pagestyle{cdsc-page-memo}
|
||||
|
||||
%%% Section headings: large sans-serif bold uppercase, with the
|
||||
%%% tight before/after spacing the original memo style used.
|
||||
\usepackage{titlesec}
|
||||
|
||||
\titleformat{\section}
|
||||
{\normalsize\sffamily\bfseries\MakeUppercase}{\thesection.}{0.5em}{}
|
||||
\titlespacing*{\section}{0pt}{*1.5}{1pt}
|
||||
|
||||
\titleformat{\subsection}
|
||||
{\small\sffamily\bfseries\MakeUppercase}{\thesubsection.}{0.5em}{}
|
||||
\titlespacing*{\subsection}{0pt}{*1}{1pt}
|
||||
|
||||
\titleformat{\subsubsection}[runin]
|
||||
{\footnotesize\sffamily\bfseries}{\thesubsubsection.}{0.5em}{}[\hskip 0.5em]
|
||||
|
||||
% By default, suppress section numbering. To enable numbered sections
|
||||
% and subsections, comment the line below and uncomment the alternative.
|
||||
\setcounter{secnumdepth}{0}
|
||||
% \setcounter{secnumdepth}{2}
|
||||
|
||||
%%% Title block: "TITLE [...] AUTHOR" on a single line, no date.
|
||||
\usepackage{titling}
|
||||
|
||||
\renewcommand{\maketitle}{%
|
||||
\par\noindent\footnotesize\puB\par
|
||||
{\large\sffamily\bfseries\MakeUppercase\thetitle}\hfill
|
||||
{\large\sffamily\MakeUppercase\theauthor}%
|
||||
\par\vskip 0.7em%
|
||||
}
|
||||
|
||||
%% \published{...}: a note about publication status, printed in small
|
||||
%% type at the very top of the title block.
|
||||
\newcommand{\puB}{}
|
||||
\newcommand{\published}[1]{\gdef\puB{#1}}
|
||||
|
||||
%%% List spacing
|
||||
\usepackage{enumitem}
|
||||
\setlist{topsep=0pt, partopsep=0pt}
|
||||
|
||||
%%% Caption font
|
||||
\usepackage{caption}
|
||||
\captionsetup{font=small}
|
||||
|
||||
%%% No paragraph indent (memos use a blank-line paragraph break style).
|
||||
\setlength{\parindent}{0pt}
|
||||
|
||||
%%% Footnote symbol command (for \thanks{} footnotes that should not
|
||||
%%% have a numeric mark). Use as \symbolfootnote[0]{Footnote text}.
|
||||
\long\def\symbolfootnote[#1]#2{\begingroup%
|
||||
\def\thefootnote{\fnsymbol{footnote}}\footnote[#1]{#2}\endgroup}
|
||||
|
||||
\endinput
|
||||
14
memo_template/refs.bib
Normal file
14
memo_template/refs.bib
Normal file
@@ -0,0 +1,14 @@
|
||||
@inproceedings{989866,
|
||||
author = {Ken Hinckley and Gonzalo Ramos and François
|
||||
Guimbretiere and Patrick Baudisch and Marc Smith},
|
||||
title = {Stitching: pen gestures that span multiple displays},
|
||||
booktitle = {AVI '04: Proceedings of the working conference on
|
||||
Advanced visual interfaces},
|
||||
year = {2004},
|
||||
isbn = {1-58113-867-9},
|
||||
pages = {23--31},
|
||||
location = {Gallipoli, Italy},
|
||||
doi = {http://doi.acm.org/10.1145/989863.989866},
|
||||
publisher = {ACM Press},
|
||||
address = {New York, NY, USA},
|
||||
}
|
||||
106
memo_template/text.tex
Normal file
106
memo_template/text.tex
Normal file
@@ -0,0 +1,106 @@
|
||||
% Tagged PDF (PDF/UA-2) accessibility setup. The article class works
|
||||
% with the LaTeX tagging-project, so we use the full \DocumentMetadata
|
||||
% path here.
|
||||
\DocumentMetadata{
|
||||
pdfversion=2.0,
|
||||
pdfstandard=ua-2,
|
||||
lang=en-US,
|
||||
}
|
||||
|
||||
\documentclass[12pt]{article}
|
||||
|
||||
\usepackage{cdsc-memo}
|
||||
\usepackage{tagpdf}
|
||||
\tagpdfsetup{activate-all}
|
||||
|
||||
\usepackage{fontspec}
|
||||
\setmainfont{EB Garamond}
|
||||
\setsansfont{TeX Gyre Heros}
|
||||
|
||||
\usepackage[letterpaper,left=1.65in,right=1.65in,top=1.3in,bottom=1.2in]{geometry}
|
||||
|
||||
% packages i use in essentially every document
|
||||
\usepackage{graphicx}
|
||||
\usepackage{enumerate}
|
||||
|
||||
% packages i use in many documents but leave off by default
|
||||
% \usepackage{amsmath, amsthm, amssymb}
|
||||
% \usepackage{dcolumn}
|
||||
|
||||
% urls and colors
|
||||
\usepackage[dvipsnames]{xcolor}
|
||||
\usepackage[breaklinks]{hyperref}
|
||||
|
||||
% pdftitle/pdfauthor populate PDF and XMP metadata; keep these in sync
|
||||
% with \title{} and \author{} below. UA-2 requires dc:title in XMP.
|
||||
\hypersetup{colorlinks=true, linkcolor=Black, citecolor=Black, filecolor=Blue,
|
||||
urlcolor=Blue, unicode=true,
|
||||
pdftitle={Memo Title},
|
||||
pdfauthor={Your Name},
|
||||
pdflang={en-US},
|
||||
pdfdisplaydoctitle=true}
|
||||
|
||||
% list of footnote symbols for \thanks{}
|
||||
\makeatletter
|
||||
\renewcommand*{\@fnsymbol}[1]{\ensuremath{\ifcase#1\or *\or \dagger\or \ddagger\or
|
||||
\mathsection\or \mathparagraph\or \|\or **\or \dagger\dagger
|
||||
\or \ddagger\ddagger \else\@ctrerr\fi}}
|
||||
\makeatother
|
||||
\newcommand*\samethanks[1][\value{footnote}]{\footnotemark[#1]}
|
||||
|
||||
% add bibliographic stuff
|
||||
\usepackage[american]{babel}
|
||||
\usepackage{csquotes}
|
||||
\usepackage[natbib=true, style=apa, backend=biber]{biblatex}
|
||||
\addbibresource{refs.bib}
|
||||
\DeclareLanguageMapping{american}{american-apa}
|
||||
|
||||
\defbibheading{secbib}[\bibname]{%
|
||||
\section*{#1}%
|
||||
\markboth{#1}{#1}%
|
||||
\baselineskip 14.2pt}
|
||||
|
||||
\def\citepos#1{\citeauthor{#1}'s (\citeyear{#1})}
|
||||
\def\citespos#1{\citeauthor{#1}' (\citeyear{#1})}
|
||||
|
||||
% LATEX NOTE: these lines will import vc stuff after running `make vc`,
|
||||
% which adds a git revision footer to each page:
|
||||
% \input{vc}
|
||||
% \pagestyle{cdsc-page-memo-git}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\setlength{\parskip}{4.5pt}
|
||||
\baselineskip 16pt
|
||||
|
||||
\title{Memo Title}
|
||||
\author{Your Name}
|
||||
|
||||
\maketitle
|
||||
|
||||
\section{Section}
|
||||
|
||||
The quick brown fox jumps over the lazy dog. The quick brown fox jumps
|
||||
over the lazy dog. The quick brown fox jumps over the lazy dog. The
|
||||
quick brown fox jumps over the lazy dog. The quick brown fox jumps over
|
||||
the lazy dog \citep{989866}.
|
||||
|
||||
\section{Another Section}
|
||||
|
||||
The quick brown fox jumps over the lazy dog. The quick brown fox jumps
|
||||
over the lazy dog. The quick brown fox jumps over the lazy dog. The
|
||||
quick brown fox jumps over the lazy dog.
|
||||
|
||||
\subsection{A Subsection}
|
||||
|
||||
The quick brown fox jumps over the lazy dog. The quick brown fox jumps
|
||||
over the lazy dog.
|
||||
|
||||
% bibliography
|
||||
\setcounter{biburlnumpenalty}{9001}
|
||||
\printbibliography[title = {References}, heading=secbib]
|
||||
|
||||
|
||||
\end{document}
|
||||
|
||||
% LocalWords:
|
||||
Reference in New Issue
Block a user