EB Garamond's bold weight ships with only 127 cmapped glyphs --- no
Latin Extended-A, no Vietnamese, no Greek, no Cyrillic, no fi/fl
ligatures --- so any bold text containing accented characters
(Polish, Czech, Vietnamese, etc., as well as bold author names in
citations) renders as tofu boxes or font-fallback substitutions.
Switch the default body font in paper_template, memo_template, and
letter_template to Libertinus Serif. It ships in texlive-fonts-extra,
has comprehensive Latin / Vietnamese / Greek / Cyrillic coverage in
every weight, and includes all the standard f-ligatures explicitly.
Each template also picks up a commented-out
\\setmainfont{Garamond Premier Pro} block plus a short note: Adobe
Garamond Premier Pro is Mako's preferred body font but is commercial
and not redistributable, so the public templates default to
Libertinus and CDSC members can swap in once they have the font
installed (e.g., in ~/.fonts/).
README updated to match.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
144 lines
4.4 KiB
Plaintext
144 lines
4.4 KiB
Plaintext
================================
|
|
=== CDSC LaTeX Templates =======
|
|
================================
|
|
|
|
Copyright (c) 2009-2026 Benjamin Mako Hill <mako@atdot.cc> / <makohill@uw.edu>
|
|
|
|
This repository contains LaTeX configuration files and templates used to
|
|
format papers, memos, letters, and posters. All files are released under
|
|
the GNU GPL version 3 or later.
|
|
|
|
The latest version can be found in git at:
|
|
https://gitea.communitydata.science/collective/cdsc_tex
|
|
|
|
You can check out the latest version with:
|
|
|
|
git clone https://gitea.communitydata.science/collective/cdsc_tex.git
|
|
|
|
Bug reports, comments, questions, and patches can be directed to:
|
|
|
|
Benjamin Mako Hill <makohill@uw.edu> [work]
|
|
Benjamin Mako Hill <mako@atdot.cc> [personal]
|
|
|
|
To submit a patch, clone the repository, make your changes, and use
|
|
git format-patch to generate patch files to send by email:
|
|
|
|
git format-patch origin/master
|
|
git send-email *.patch
|
|
|
|
================================
|
|
=== Dependencies ===============
|
|
================================
|
|
|
|
On Debian or Ubuntu, install the following packages:
|
|
|
|
* latexmk
|
|
* texlive-luatex
|
|
* texlive-latex-recommended
|
|
* texlive-fonts-extra
|
|
* texlive-fonts-recommended
|
|
* texlive-bibtex-extra
|
|
|
|
apt install latexmk texlive-luatex texlive-latex-recommended \
|
|
texlive-fonts-extra texlive-fonts-recommended \
|
|
texlive-bibtex-extra
|
|
|
|
On other systems, installing a full TeX Live distribution should provide
|
|
everything needed.
|
|
|
|
All four templates build with LuaLaTeX (via latexmk -lualatex). The text
|
|
fonts are Libertinus Serif and TeX Gyre Heros, both provided by
|
|
texlive-fonts-extra.
|
|
|
|
================================
|
|
=== Accessibility ==============
|
|
================================
|
|
|
|
All four templates produce PDF/UA-2 compliant tagged PDFs via the
|
|
LaTeX tagging project (\DocumentMetadata + tagpdf). You can verify
|
|
compliance with verapdf: https://verapdf.org/
|
|
|
|
The paper and memo templates were originally built on the memoir
|
|
class, which is incompatible with the LaTeX tagged-PDF code. They now
|
|
use the standard article class with custom styling (cdsc-paper.sty
|
|
and cdsc-memo.sty) to keep their previous look while supporting full
|
|
tagging.
|
|
|
|
================================
|
|
=== Branches ===================
|
|
================================
|
|
|
|
This repository has two main branches:
|
|
|
|
master Standard LaTeX templates (paper, memo, letter, poster)
|
|
knitr Knitr/R template for reproducible research documents
|
|
|
|
================================
|
|
=== Scripts ====================
|
|
================================
|
|
|
|
new_tex_document
|
|
----------------
|
|
Creates a new document directory from a template. Takes a document type
|
|
and destination directory as arguments:
|
|
|
|
new_tex_document <type> <directory>
|
|
|
|
Available types:
|
|
|
|
paper LaTeX paper template (master branch)
|
|
memo LaTeX memo template (master branch)
|
|
knitr Knitr/R paper template (knitr branch)
|
|
letter LaTeX letter template (master branch)
|
|
|
|
Example:
|
|
|
|
new_tex_document paper my-new-paper
|
|
|
|
This creates my-new-paper/ populated with the template files, with the
|
|
main source file renamed to my-new-paper.tex (or .Rtex for knitr).
|
|
|
|
rename_tex_to_dirname
|
|
---------------------
|
|
Renames the single .tex file in the current directory to match the
|
|
directory name. Useful for cleaning up a template that was set up
|
|
manually:
|
|
|
|
cd my-paper && rename_tex_to_dirname
|
|
|
|
================================
|
|
=== Shell Aliases ==============
|
|
================================
|
|
|
|
The file cdsc_tex_aliases.sh provides aliases for the old individual
|
|
script names, for convenience or backwards compatibility. Add the
|
|
following to your .bashrc or .zshrc:
|
|
|
|
[[ -f ~/tex/cdsc_tex/cdsc_tex_aliases.sh ]] && \
|
|
source ~/tex/cdsc_tex/cdsc_tex_aliases.sh
|
|
|
|
This defines the following aliases (only if new_tex_document is in PATH):
|
|
|
|
new_tex_memo → new_tex_document memo
|
|
new_knitr_document → new_tex_document knitr
|
|
new_tex_letter → new_tex_document letter
|
|
|
|
================================
|
|
=== Migration ==================
|
|
================================
|
|
|
|
The individual scripts new_knitr_document and new_tex_letter have
|
|
been consolidated into new_tex_document. The old scripts remain in
|
|
the repository but are superseded.
|
|
|
|
To migrate, replace calls to the old scripts with new_tex_document:
|
|
|
|
Old: new_knitr_document mydir
|
|
New: new_tex_document knitr mydir
|
|
|
|
Old: new_tex_letter mydir
|
|
New: new_tex_document letter mydir
|
|
|
|
Alternatively, source cdsc_tex_aliases.sh (see above) to keep using the
|
|
old names without changing your workflow.
|