Version 1.0.0 Refactor: Fixed Zotero Lib

This commit is contained in:
John Haverlack 2026-02-05 11:33:29 -09:00
parent 2d8c2c3d18
commit fd8033f793
10 changed files with 132 additions and 1856 deletions

View File

@ -266,6 +266,9 @@
},
"active": "dc8c249564ffac56",
"lastOpenFiles": [
"conf/sedK5OZdk",
"conf/sed0lodyQ",
"conf/sedVrX4GJ",
"templates/odt.yaml",
"templates/frontmatter-docx.md",
"templates/docx.yaml",
@ -281,9 +284,6 @@
"conf/sed7Vpnn0",
"conf/latex.yaml",
"conf/sedOEGv7F",
"conf/header.tex",
"conf/style_epub.css",
"conf/style.css",
"chapters/Preface.md",
"chapters/Index.md",
"chapters/Glossary.md",

View File

@ -1,4 +1,4 @@
.PHONY: all bootstrap latex index pdf html markdown clean
.PHONY: all bootstrap latex index pdf html markdown docx odt clean
PANDOC = pandoc
XELATEX = xelatex -interaction=nonstopmode -halt-on-error -file-line-error
BASE = conf/pandoc.yaml
@ -14,11 +14,13 @@ META_NAME := $(shell sed -n 's/^name:[[:space:]]*//p' $(METADATA))
LATEX_BUILD = build/latex
PDF_BUILD = build/pdf
HTML_BUILD = build/html
DOCX_BUILD = build/docx
ODT_BUILD = build/odt
EPUB_BUILD = build/epub
MD_BUILD = build/md
all: html pdf markdown
all: html pdf docx odt
# ---------------------------------------------
@ -103,6 +105,43 @@ html: bootstrap
open $(HTML_BUILD)/$(META_NAME).html
# ============================================================
# DOCX
# ============================================================
docx: bootstrap
rm -rf $(DOCX_BUILD)
mkdir -p $(DOCX_BUILD)
cp templates/docx.yaml conf/docx.yaml
scripts/replace-metadata.sh $(METADATA) templates/frontmatter-docx.md conf/frontmatter-docx.md
$(PANDOC) \
--defaults=$(BASE) \
--defaults=conf/docx.yaml \
-o $(DOCX_BUILD)/$(META_NAME).docx
open $(DOCX_BUILD)/$(META_NAME).docx
# ============================================================
# ODT
# ============================================================
odt: bootstrap
rm -rf $(ODT_BUILD)
mkdir -p $(ODT_BUILD)
cp templates/odt.yaml conf/odt.yaml
scripts/replace-metadata.sh $(METADATA) templates/frontmatter-docx.md conf/frontmatter-docx.md
$(PANDOC) \
--defaults=$(BASE) \
--defaults=conf/odt.yaml \
-o $(ODT_BUILD)/$(META_NAME).odt
open $(ODT_BUILD)/$(META_NAME).odt
# ============================================================
# EPUB
# ============================================================
@ -139,6 +178,7 @@ markdown: bootstrap
@echo "Produced $(MD_BUILD)/$(META_NAME).md"
open $(MD_BUILD)/$(META_NAME).md
# ============================================================
# CLEAN

View File

@ -30,81 +30,19 @@
\newlabel{cloning-the-basic-book-builder}{{2.1}{2}{Cloning the Basic Book Builder}{section.2.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {2.2}Setting Up Build Environment}{2}{section.2.2}\protected@file@percent }
\newlabel{setting-up-build-environment}{{2.2}{2}{Setting Up Build Environment}{section.2.2}{}}
\@writefile{toc}{\contentsline {chapter}{\numberline {A}Appendix A: Build Environment Notes}{3}{appendix.A}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{appendix-a-build-environment-notes}{{A}{3}{Appendix A: Build Environment Notes}{appendix.A}{}}
\@writefile{toc}{\contentsline {section}{\numberline {A.1}Installing Pre-Requisites}{3}{section.A.1}\protected@file@percent }
\newlabel{installing-pre-requisites}{{A.1}{3}{Installing Pre-Requisites}{section.A.1}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {A.1.1}Required}{3}{subsection.A.1.1}\protected@file@percent }
\newlabel{required}{{A.1.1}{3}{Required}{subsection.A.1.1}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.1.1}Pandoc}{3}{subsubsection.A.1.1.1}\protected@file@percent }
\newlabel{pandoc}{{A.1.1.1}{3}{Pandoc}{subsubsection.A.1.1.1}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.1.2}Code Editor}{3}{subsubsection.A.1.1.2}\protected@file@percent }
\newlabel{code-editor}{{A.1.1.2}{3}{Code Editor}{subsubsection.A.1.1.2}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.1.3}jq and yq}{4}{subsubsection.A.1.1.3}\protected@file@percent }
\newlabel{jq-and-yq}{{A.1.1.3}{4}{jq and yq}{subsubsection.A.1.1.3}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.1.4}texlive}{4}{subsubsection.A.1.1.4}\protected@file@percent }
\newlabel{texlive}{{A.1.1.4}{4}{texlive}{subsubsection.A.1.1.4}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.1.5}MathJax}{4}{subsubsection.A.1.1.5}\protected@file@percent }
\newlabel{mathjax}{{A.1.1.5}{4}{MathJax}{subsubsection.A.1.1.5}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {A.1.2}Optional}{4}{subsection.A.1.2}\protected@file@percent }
\newlabel{optional}{{A.1.2}{4}{Optional}{subsection.A.1.2}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.2.1}Obsidian}{4}{subsubsection.A.1.2.1}\protected@file@percent }
\newlabel{obsidian}{{A.1.2.1}{4}{Obsidian}{subsubsection.A.1.2.1}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.2.2}Zotero}{5}{subsubsection.A.1.2.2}\protected@file@percent }
\newlabel{zotero}{{A.1.2.2}{5}{Zotero}{subsubsection.A.1.2.2}{}}
\newlabel{better-bibtex-for-zotero}{{A.1.2.2.1}{5}{Better BibTex for Zotero}{paragraph.A.1.2.2.1}{}}
\@writefile{toc}{\contentsline {paragraph}{\numberline {A.1.2.2.1}Better BibTex for Zotero}{5}{paragraph.A.1.2.2.1}\protected@file@percent }
\newlabel{export-citations.bib}{{A.1.2.2.2}{5}{Export citations.bib}{paragraph.A.1.2.2.2}{}}
\@writefile{toc}{\contentsline {paragraph}{\numberline {A.1.2.2.2}Export citations.bib}{5}{paragraph.A.1.2.2.2}\protected@file@percent }
\newlabel{zotero-connector-browser-plugin}{{A.1.2.2.3}{5}{Zotero Connector Browser Plugin}{paragraph.A.1.2.2.3}{}}
\@writefile{toc}{\contentsline {paragraph}{\numberline {A.1.2.2.3}Zotero Connector Browser Plugin}{5}{paragraph.A.1.2.2.3}\protected@file@percent }
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.2.3}lmodern}{5}{subsubsection.A.1.2.3}\protected@file@percent }
\newlabel{lmodern}{{A.1.2.3}{5}{lmodern}{subsubsection.A.1.2.3}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.2.4}epubcheck}{5}{subsubsection.A.1.2.4}\protected@file@percent }
\newlabel{epubcheck}{{A.1.2.4}{5}{epubcheck}{subsubsection.A.1.2.4}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.2.5}foliate}{5}{subsubsection.A.1.2.5}\protected@file@percent }
\newlabel{foliate}{{A.1.2.5}{5}{foliate}{subsubsection.A.1.2.5}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {A.1.2.6}calibre}{6}{subsubsection.A.1.2.6}\protected@file@percent }
\newlabel{calibre}{{A.1.2.6}{6}{calibre}{subsubsection.A.1.2.6}{}}
\@writefile{toc}{\contentsline {section}{\numberline {A.2}Editing the Configuration}{6}{section.A.2}\protected@file@percent }
\newlabel{editing-the-configuration}{{A.2}{6}{Editing the Configuration}{section.A.2}{}}
\@writefile{toc}{\contentsline {chapter}{\numberline {B}Appendix B: Editing the Book}{7}{appendix.B}\protected@file@percent }
\@writefile{lof}{\addvspace {10\p@ }}
\@writefile{lot}{\addvspace {10\p@ }}
\newlabel{appendix-b-editing-the-book}{{B}{7}{Appendix B: Editing the Book}{appendix.B}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {B.0.1}Configuration}{7}{subsection.B.0.1}\protected@file@percent }
\newlabel{configuration}{{B.0.1}{7}{Configuration}{subsection.B.0.1}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {B.0.1.1}Main Config Files}{7}{subsubsection.B.0.1.1}\protected@file@percent }
\newlabel{main-config-files}{{B.0.1.1}{7}{Main Config Files}{subsubsection.B.0.1.1}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {B.0.2}FrontMatter Config}{8}{subsection.B.0.2}\protected@file@percent }
\newlabel{frontmatter-config}{{B.0.2}{8}{FrontMatter Config}{subsection.B.0.2}{}}
\@writefile{toc}{\contentsline {section}{\numberline {B.1}Editing the Content}{8}{section.B.1}\protected@file@percent }
\newlabel{editing-the-content}{{B.1}{8}{Editing the Content}{section.B.1}{}}
\@writefile{toc}{\contentsline {subsection}{\numberline {B.1.1}Citations}{8}{subsection.B.1.1}\protected@file@percent }
\newlabel{citations}{{B.1.1}{8}{Citations}{subsection.B.1.1}{}}
\@writefile{toc}{\contentsline {section}{\numberline {B.2}Usage: Building the Book}{8}{section.B.2}\protected@file@percent }
\newlabel{usage-building-the-book}{{B.2}{8}{Usage: Building the Book}{section.B.2}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {B.2.0.1}PDF}{8}{subsubsection.B.2.0.1}\protected@file@percent }
\newlabel{pdf}{{B.2.0.1}{8}{PDF}{subsubsection.B.2.0.1}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {B.2.0.2}HTML}{8}{subsubsection.B.2.0.2}\protected@file@percent }
\newlabel{html}{{B.2.0.2}{8}{HTML}{subsubsection.B.2.0.2}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {B.2.0.3}LaTex}{8}{subsubsection.B.2.0.3}\protected@file@percent }
\newlabel{latex}{{B.2.0.3}{8}{LaTex}{subsubsection.B.2.0.3}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {B.2.0.4}Markdown}{8}{subsubsection.B.2.0.4}\protected@file@percent }
\newlabel{markdown}{{B.2.0.4}{8}{Markdown}{subsubsection.B.2.0.4}{}}
\@writefile{toc}{\contentsline {subsubsection}{\numberline {B.2.0.5}EPub}{9}{subsubsection.B.2.0.5}\protected@file@percent }
\newlabel{epub}{{B.2.0.5}{9}{EPub}{subsubsection.B.2.0.5}{}}
\gdef \LT@i {\LT@entry
{1}{86.68152pt}\LT@entry
{1}{383.07349pt}}
\newlabel{glossary}{{B.2.0.5}{10}{Glossary}{appendix*.4}{}}
\@writefile{toc}{\contentsline {chapter}{Glossary}{10}{appendix*.4}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{Index}{12}{appendix*.5}\protected@file@percent }
\newlabel{glossary}{{2.2}{3}{Glossary}{chapter*.4}{}}
\@writefile{toc}{\contentsline {chapter}{Glossary}{3}{chapter*.4}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{Index}{5}{chapter*.5}\protected@file@percent }
\bibcite{ref-JehaverlackBasicbookbuilderPandoca}{\citeproctext }
\bibcite{ref-JohnHaverlackACEP}{\citeproctext }
\bibcite{ref-PandocIndex}{\citeproctext }
\bibcite{ref-JehaverlackBasicbookbuilderPandoca}{\citeproctext }
\bibcite{ref-JohnHaverlackACEP}{\citeproctext }
\newlabel{bibliography}{{B.2.0.5}{14}{Bibliography}{appendix*.6}{}}
\@writefile{toc}{\contentsline {chapter}{Bibliography}{14}{appendix*.6}\protected@file@percent }
\newlabel{refs}{{B.2.0.5}{14}{Bibliography}{section*.7}{}}
\gdef \@abspage@last{19}
\bibcite{ref-PandocIndex}{\citeproctext }
\newlabel{bibliography}{{2.2}{7}{Bibliography}{chapter*.6}{}}
\@writefile{toc}{\contentsline {chapter}{Bibliography}{7}{chapter*.6}\protected@file@percent }
\newlabel{refs}{{2.2}{7}{Bibliography}{section*.7}{}}
\gdef \@abspage@last{12}

View File

@ -1,4 +1,4 @@
This is XeTeX, Version 3.141592653-2.6-0.999994 (TeX Live 2022/Debian) (preloaded format=xelatex 2025.11.6) 5 FEB 2026 11:27
This is XeTeX, Version 3.141592653-2.6-0.999994 (TeX Live 2022/Debian) (preloaded format=xelatex 2025.11.6) 5 FEB 2026 11:32
entering extended mode
restricted \write18 enabled.
file:line:error style messages enabled.
@ -1346,8 +1346,15 @@ Package hyperref Info: Option `colorlinks' set `true' on input line 298.
(./basic-book-builder.aux
LaTeX Warning: Label `ref-JehaverlackBasicbookbuilderPandoca' multiply defined.
LaTeX Warning: Label `ref-JohnHaverlackACEP' multiply defined.
LaTeX Warning: Label `ref-PandocIndex' multiply defined.
)
\openout1 = `basic-book-builder.aux'.
@ -1738,26 +1745,19 @@ LaTeX Font Info: Font shape `TU/NotoSerif(0)/m/n' will be
LaTeX Font Info: Font shape `TU/NotoSerif(0)/b/n' will be
(Font) scaled to size 14.4pt on input line 358.
[2]
(./basic-book-builder.toc [1
])
(./basic-book-builder.toc)
\tf@toc=\write6
\openout6 = `basic-book-builder.toc'.
[2]
[1
] [2
]
Chapter 1.
LaTeX Warning: Citation `ref-PandocIndex' on page 1 undefined on input line 424
.
LaTeX Warning: Citation `ref-JehaverlackBasicbookbuilderPandoca' on page 1 unde
fined on input line 431.
[1
]
Chapter 2.
LaTeX Font Info: Font shape `TU/NotoSansMono(0)/m/n' will be
@ -1765,111 +1765,60 @@ LaTeX Font Info: Font shape `TU/NotoSansMono(0)/m/n' will be
[2
]
Appendix A.
Overfull \hbox (295.84503pt too wide) in paragraph at lines 506--507
[]\TU/NotoSansMono(0)/m/n/12 sudo apt install https://github.com/jgm/pandoc/rel
eases/download/3.8.2.1/pandoc-3.8.2.1-1-amd64.deb
[]
Underfull \hbox (badness 10000) in paragraph at lines 512--514
[][][]\TU/NotoSerif(0)/m/n/12 VSCodium[][] is recommend for privacy (telemetry/
tracking) reasons -
[]
[3
]
Overfull \hbox (358.24503pt too wide) in paragraph at lines 575--575
[]\TU/NotoSansMono(0)/m/n/12 sudo apt install https://github.com/obsidianmd/obs
idian-releases/releases/download/v1.9.14/obsidian_1.9.14_amd64.deb[]
[]
Underfull \vbox (badness 1888) has occurred while \output is active []
[4]
Overfull \hbox (12.02498pt too wide) in paragraph at lines 620--622
[]\TU/NotoSerif(0)/m/n/12 Symlink your ~/Documents/Lib/Citations.bib to basic-b
ook-builder/lib/zotero.bib
[]
Overfull \hbox (107.64897pt too wide) in paragraph at lines 630--631
[]\TU/NotoSerif(0)/m/n/12 https://chromewebstore.google.com/detail/zotero-conne
ctor/ekhagklcjbdpajgpjgmbionohlpdbjgc
[]
Overfull \hbox (430.245pt too wide) in paragraph at lines 659--659
[]\TU/NotoSansMono(0)/m/n/12 sudo apt install https://github.com/johnfactotum/f
oliate/releases/download/2.6.4/com.github.johnfactotum.foliate_2.6.4_all.deb[]
[]
[5] [6]
Appendix B.
[7
] [8] [9]
Underfull \hbox (badness 10000) in alignment at lines 808--816
Underfull \hbox (badness 10000) in alignment at lines 488--496
[] []
[]
Underfull \hbox (badness 10000) in alignment at lines 816--818
Underfull \hbox (badness 10000) in alignment at lines 496--498
[] []
[]
Overfull \hbox (1.68248pt too wide) in paragraph at lines 822--822
Overfull \hbox (1.68248pt too wide) in paragraph at lines 502--502
[]|\TU/NotoSerif(0)/b/n/12 Bibliography|
[]
Underfull \hbox (badness 10000) in alignment at lines 818--870
Underfull \hbox (badness 10000) in alignment at lines 498--550
[] []
[]
[10
[3
] [11] (./basic-book-builder.ind) [12
] [4] (./basic-book-builder.ind) [5
] [13
] [6
]
Underfull \hbox (badness 3977) in paragraph at lines 900--902
Underfull \hbox (badness 3977) in paragraph at lines 585--587
[]\TU/NotoSerif(0)/m/it/12 John Haverlack | ACEP\TU/NotoSerif(0)/m/n/12 . n.d.
Https://www.uaf.edu/acep/about/our-team/john-
[]
Underfull \hbox (badness 3977) in paragraph at lines 904--906
Underfull \hbox (badness 3977) in paragraph at lines 597--599
[]\TU/NotoSerif(0)/m/it/12 John Haverlack | ACEP\TU/NotoSerif(0)/m/n/12 . n.d.
Https://www.uaf.edu/acep/about/our-team/john-
[]
[14
[7
] [15
] [8
] (./basic-book-builder.aux)
LaTeX Warning: There were undefined references.
LaTeX Warning: There were multiply-defined labels.
)
Here is how much of TeX's memory you used:
36484 strings out of 478775
752350 string characters out of 5850945
36419 strings out of 478775
751624 string characters out of 5850945
1858991 words of memory out of 5000000
55907 multiletter control sequences out of 15000+600000
55842 multiletter control sequences out of 15000+600000
516036 words of font info for 92 fonts, out of 8000000 for 9000
14 hyphenation exceptions out of 8191
90i,11n,122p,1015b,952s stack positions out of 10000i,1000n,20000p,200000b,200000s
90i,11n,122p,1015b,948s stack positions out of 10000i,1000n,20000p,200000b,200000s
Output written on basic-book-builder.pdf (19 pages).
Output written on basic-book-builder.pdf (12 pages).

Binary file not shown.

View File

@ -266,7 +266,7 @@
\fancypagestyle{plain}{%
\fancyhf{}%
\fancyhead[C]{\leftmark} % Chapter title
\cfoot{Basic Book Builder: A Pandoc template for building books and articles} % Book title
\cfoot{Basic Book Builder: A Pandoc template for building books, documents and articles} % Book title
\rfoot{\thepage} % Page number
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
@ -280,7 +280,7 @@
\fancyhead[C]{\leftmark} % Chapter title (centered)
% Footer
\cfoot{Basic Book Builder: A Pandoc template for building books and articles} % Book title
\cfoot{Basic Book Builder: A Pandoc template for building books, documents and articles} % Book title
\rfoot{\thepage} % Page number
% Line rules
@ -313,7 +313,7 @@
{\Huge\bfseries Basic Book Builder \par}
\vspace{0.4cm}
{\Large A Pandoc template for building books and articles \par}
{\Large A Pandoc template for building books, documents and articles \par}
\vspace{1.2cm}
\includegraphics[width=0.5\textwidth]{lib/img/UAF-ACEP.png}
@ -330,7 +330,7 @@
{\Large\bfseries Basic Book Builder \par}
\vspace{0.2cm}
{\normalsize\textit{A Pandoc template for building books and articles}\par}
{\normalsize\textit{A Pandoc template for building books, documents and articles}\par}
\vspace{0.4cm}
\renewcommand{\arraystretch}{1.3} % row spacing
@ -421,15 +421,15 @@ Licensed under the Creative Commons Attribution-NoDerivatives 4.0 International
\chapter{Introduction}\label{introduction}
This is a basic book (or article / document) builder template based on a
Pandoc(\citeproc{ref-PandocIndex}{\textbf{PandocIndex?}})\index{Pandoc}
build process in conjunction with a number of other tools to generate
PDF, HTML, LaTex, Markdown, ODT, DOCX, and Epub book output formats from
a single set Markdown source content , which can optionally be edited as
an Obsidian vault.
Pandoc(\citeproc{ref-PandocIndex}{\emph{Pandoc - Index},
n.d.})\index{Pandoc} build process in conjunction with a number of other
tools to generate PDF, HTML, LaTex, Markdown, ODT, DOCX, and Epub book
output formats from a single set Markdown source content , which can
optionally be edited as an Obsidian vault.
This \textbf{basic book
builder}(\citeproc{ref-JehaverlackBasicbookbuilderPandoca}{\textbf{JehaverlackBasicbookbuilderPandoca?}})
template has been curated by John
builder}(\citeproc{ref-JehaverlackBasicbookbuilderPandoca}{\emph{Jehaverlack/Basic-Book-Builder},
n.d.}) template has been curated by John
Haverlack.(\citeproc{ref-JohnHaverlackACEP}{\emph{John {Haverlack}
\textbar{} {ACEP}}, n.d.})
@ -477,326 +477,6 @@ Zorin, etc) This script has not been widely tested across platforms
For more information on setting up the build environment for your system
see Appendix A.
\appendix
Appendix A
\chapter{Appendix A: Build Environment
Notes}\label{appendix-a-build-environment-notes}
\section{Installing Pre-Requisites}\label{installing-pre-requisites}
\begin{cautionbox}[Not Cross-platform Tested]
For Debian / ZorinOS and likely Ubuntu based systems.
\end{cautionbox}
\subsection{Required}\label{required}
\subsubsection{Pandoc}\label{pandoc}
\begin{itemize}
\tightlist
\item
https://pandoc.org/
\item
\href{https://github.com/jgm/pandoc/releases/tag/3.8.2.1}{Download}
\end{itemize}
\begin{quote}
\texttt{sudo\ apt\ install\ https://github.com/jgm/pandoc/releases/download/3.8.2.1/pandoc-3.8.2.1-1-amd64.deb}
\end{quote}
\subsubsection{Code Editor}\label{code-editor}
\begin{establishedbox}[Code Editor]
\href{https://vscodium.com/}{VSCodium} is recommend for privacy
(telemetry/tracking) reasons - https://vscodium.com/
\end{establishedbox}
But any text editor will work. \#\#\#\# make
\begin{verbatim}
sudo apt install make
\end{verbatim}
\subsubsection{jq and yq}\label{jq-and-yq}
\begin{verbatim}
sudo apt install jq yq
\end{verbatim}
\subsubsection{texlive}\label{texlive}
\begin{quote}
\texttt{sudo\ apt\ install\ texlive\ texlive-xetex\ texlive-latex-extra\ texlive-fonts-recommended\ texlive-fonts-extra}
\end{quote}
\subsubsection{MathJax}\label{mathjax}
\begin{itemize}
\tightlist
\item
https://www.mathjax.org/
\end{itemize}
\begin{verbatim}
wget https://registry.npmjs.org/mathjax/-/mathjax-3.2.2.tgz
tar xzf mathjax-3.2.2.tgz
mv package/es5/* lib/mathjax
rm -rf package mathjax-3.2.2.tgz
\end{verbatim}
\begin{cautionbox}[TODO]
This need to be rolled into a setup script.
\end{cautionbox}
\subsection{Optional}\label{optional}
The following are not strictly requires to use this book builder
template.
\subsubsection{Obsidian}\label{obsidian}
\begin{establishedbox}[Highly Recommended]
Editing book chapter content in Obsidian is a very productive means for
editing Markdown source content.
\end{establishedbox}
\begin{itemize}
\tightlist
\item
https://obsidian.md/
\item
\href{https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.14/obsidian_1.9.14_amd64.deb}{Deb
Package}
\end{itemize}
\begin{verbatim}
sudo apt install https://github.com/obsidianmd/obsidian-releases/releases/download/v1.9.14/obsidian_1.9.14_amd64.deb
\end{verbatim}
\subsubsection{Zotero}\label{zotero}
\begin{establishedbox}[Highly Recommended]
If you need to managed citations and references, Zotero integration is
highly recommended.
\end{establishedbox}
\begin{itemize}
\tightlist
\item
https://www.zotero.org/
\end{itemize}
\begin{verbatim}
sudo cp ./scripts/deps/zotero.list /etc/apt/sources.list.d/
\end{verbatim}
\begin{verbatim}
sudo apt update
\end{verbatim}
\begin{verbatim}
sudo apt install zotero
\end{verbatim}
\paragraph{Better BibTex for Zotero}\label{better-bibtex-for-zotero}
Install the Better BibTex Plugin for Zotero - Zotero \textgreater{} Tool
\textgreater{} Plugins
\paragraph{Export citations.bib}\label{export-citations.bib}
\begin{itemize}
\tightlist
\item
Zotero \textgreater{} File \textgreater{} Export Library
\textgreater{} Format: Better BibTeX
\item[$\square$]
Keep Updated
\item[$\square$]
Save to: \textasciitilde/Documents/Lib/zotero.bib
\item[$\square$]
Symlink your \textasciitilde/Documents/Lib/Citations.bib to
basic-book-builder/lib/zotero.bib
\end{itemize}
\paragraph{Zotero Connector Browser
Plugin}\label{zotero-connector-browser-plugin}
\begin{itemize}
\tightlist
\item
https://chromewebstore.google.com/detail/zotero-connector/ekhagklcjbdpajgpjgmbionohlpdbjgc
\end{itemize}
Provides you the ability to auto add Web resources to your Zotero
citation database.
\subsubsection{lmodern}\label{lmodern}
\begin{verbatim}
sudo apt install lmodern
\end{verbatim}
\subsubsection{epubcheck}\label{epubcheck}
\begin{verbatim}
sudo apt install epubcheck
\end{verbatim}
\subsubsection{foliate}\label{foliate}
An EPub Reader
\begin{itemize}
\tightlist
\item
https://johnfactotum.github.io/foliate/
\end{itemize}
\begin{verbatim}
sudo apt install https://github.com/johnfactotum/foliate/releases/download/2.6.4/com.github.johnfactotum.foliate_2.6.4_all.deb
\end{verbatim}
\subsubsection{calibre}\label{calibre}
An EPub Reader
\begin{itemize}
\tightlist
\item
https://calibre-ebook.com
\end{itemize}
\begin{verbatim}
sudo apt install calibre
\end{verbatim}
\section{Editing the Configuration}\label{editing-the-configuration}
\chapter{Appendix B: Editing the
Book}\label{appendix-b-editing-the-book}
\subsection{Configuration}\label{configuration}
There are a number of other config files for each format:
\begin{verbatim}
conf/
├── epub-metadata.xml
├── epub_template.html
├── epub.yaml
├── frontmatter_epub.md
├── frontmatter_epub.xhtml
├── frontmatter.html
├── frontmatter.tex
├── header.tex
├── html.yaml
├── latex.yaml
├── markdown.yaml
├── metadata.yaml
├── pandoc.yaml
├── pdf.yaml
├── style.css
└── style_epub.css
\end{verbatim}
\subsubsection{Main Config Files}\label{main-config-files}
\begin{itemize}
\tightlist
\item
metadata.yaml - Set Title, etc
\item
pandoc.yaml - Main Pandoc Config \#\#\#\# Per format Configs
\item
\texttt{pdf.yaml}
\item
\texttt{html.yaml}
\item
\texttt{latex.yaml}
\item
\texttt{epub.yaml}
\end{itemize}
\subsection{FrontMatter Config}\label{frontmatter-config}
There are 2 Version of the FrontMatter for PDF, and HTML bases formats
that set the Title, Author, Verizon, Copyright, etc\ldots{}
\begin{itemize}
\tightlist
\item
\texttt{frontmatter.tex}
\item
\texttt{frontmatter.html}
\item
\texttt{frontmatter\_epub.*} - Work in Progress
\end{itemize}
\begin{quote}
There is probably a better way to do this.
\end{quote}
\section{Editing the Content}\label{editing-the-content}
To edit the book open the \texttt{basic-book-builder} directory as an
Obsidian Vault.
\begin{itemize}
\tightlist
\item
Edit the Markdown content in the \texttt{chapters} directory.
\end{itemize}
\subsection{Citations}\label{citations}
\begin{quote}
Note: the Zotero database needs configured to export automatically to
\texttt{lib/citations.bib}
\end{quote}
To insert a Zotero Citation - Ensure the Zotero App and DB are running
on you system. - Alt + I (to insert citation) - Search for and select
citation reference
\section{Usage: Building the Book}\label{usage-building-the-book}
\subsubsection{PDF}\label{pdf}
\begin{verbatim}
make pdf
\end{verbatim}
\subsubsection{HTML}\label{html}
\begin{verbatim}
make html
\end{verbatim}
\subsubsection{LaTex}\label{latex}
\begin{verbatim}
make latex
\end{verbatim}
\subsubsection{Markdown}\label{markdown}
\begin{verbatim}
make markdown
\end{verbatim}
\subsubsection{EPub}\label{epub}
\begin{quote}
Note: This ePub configuration still needs tuning.
\end{quote}
\begin{verbatim}
make epub
\end{verbatim}
\backmatter
\chapter*{Glossary}\label{glossary}
@ -896,14 +576,30 @@ for citation processing with Pandoc. \\
\protect\phantomsection\label{refs}
\begin{CSLReferences}{1}{1}
\bibitem[\citeproctext]{ref-JohnHaverlackACEP}
\emph{John {Haverlack} \textbar{} {ACEP}}. n.d.
Https://www.uaf.edu/acep/about/our-team/john-haverlack.php.
\bibitem[\citeproctext]{ref-JehaverlackBasicbookbuilderPandoca}
\emph{Jehaverlack/Basic-Book-Builder: {A Pandoc} Workflow for Building
{PDF}, {HTML}, {EPUB}, and {LaTeX} Book Format.} n.d.
Https://github.com/jehaverlack/basic-book-builder.
\bibitem[\citeproctext]{ref-JohnHaverlackACEP}
\emph{John {Haverlack} \textbar{} {ACEP}}. n.d.
Https://www.uaf.edu/acep/about/our-team/john-haverlack.php.
\bibitem[\citeproctext]{ref-PandocIndex}
\emph{Pandoc - Index}. n.d. Https://pandoc.org/.
\bibitem[\citeproctext]{ref-JehaverlackBasicbookbuilderPandoca}
\emph{Jehaverlack/Basic-Book-Builder: {A Pandoc} Workflow for Building
{PDF}, {HTML}, {EPUB}, and {LaTeX} Book Format.} n.d.
Https://github.com/jehaverlack/basic-book-builder.
\bibitem[\citeproctext]{ref-JohnHaverlackACEP}
\emph{John {Haverlack} \textbar{} {ACEP}}. n.d.
Https://www.uaf.edu/acep/about/our-team/john-haverlack.php.
\bibitem[\citeproctext]{ref-PandocIndex}
\emph{Pandoc - Index}. n.d. Https://pandoc.org/.
\end{CSLReferences}
\backmatter

View File

@ -2,37 +2,6 @@
\contentsline {chapter}{\numberline {2}Getting Started}{2}{chapter.2}%
\contentsline {section}{\numberline {2.1}Cloning the Basic Book Builder}{2}{section.2.1}%
\contentsline {section}{\numberline {2.2}Setting Up Build Environment}{2}{section.2.2}%
\contentsline {chapter}{\numberline {A}Appendix A: Build Environment Notes}{3}{appendix.A}%
\contentsline {section}{\numberline {A.1}Installing Pre-Requisites}{3}{section.A.1}%
\contentsline {subsection}{\numberline {A.1.1}Required}{3}{subsection.A.1.1}%
\contentsline {subsubsection}{\numberline {A.1.1.1}Pandoc}{3}{subsubsection.A.1.1.1}%
\contentsline {subsubsection}{\numberline {A.1.1.2}Code Editor}{3}{subsubsection.A.1.1.2}%
\contentsline {subsubsection}{\numberline {A.1.1.3}jq and yq}{4}{subsubsection.A.1.1.3}%
\contentsline {subsubsection}{\numberline {A.1.1.4}texlive}{4}{subsubsection.A.1.1.4}%
\contentsline {subsubsection}{\numberline {A.1.1.5}MathJax}{4}{subsubsection.A.1.1.5}%
\contentsline {subsection}{\numberline {A.1.2}Optional}{4}{subsection.A.1.2}%
\contentsline {subsubsection}{\numberline {A.1.2.1}Obsidian}{4}{subsubsection.A.1.2.1}%
\contentsline {subsubsection}{\numberline {A.1.2.2}Zotero}{5}{subsubsection.A.1.2.2}%
\contentsline {paragraph}{\numberline {A.1.2.2.1}Better BibTex for Zotero}{5}{paragraph.A.1.2.2.1}%
\contentsline {paragraph}{\numberline {A.1.2.2.2}Export citations.bib}{5}{paragraph.A.1.2.2.2}%
\contentsline {paragraph}{\numberline {A.1.2.2.3}Zotero Connector Browser Plugin}{5}{paragraph.A.1.2.2.3}%
\contentsline {subsubsection}{\numberline {A.1.2.3}lmodern}{5}{subsubsection.A.1.2.3}%
\contentsline {subsubsection}{\numberline {A.1.2.4}epubcheck}{5}{subsubsection.A.1.2.4}%
\contentsline {subsubsection}{\numberline {A.1.2.5}foliate}{5}{subsubsection.A.1.2.5}%
\contentsline {subsubsection}{\numberline {A.1.2.6}calibre}{6}{subsubsection.A.1.2.6}%
\contentsline {section}{\numberline {A.2}Editing the Configuration}{6}{section.A.2}%
\contentsline {chapter}{\numberline {B}Appendix B: Editing the Book}{7}{appendix.B}%
\contentsline {subsection}{\numberline {B.0.1}Configuration}{7}{subsection.B.0.1}%
\contentsline {subsubsection}{\numberline {B.0.1.1}Main Config Files}{7}{subsubsection.B.0.1.1}%
\contentsline {subsection}{\numberline {B.0.2}FrontMatter Config}{8}{subsection.B.0.2}%
\contentsline {section}{\numberline {B.1}Editing the Content}{8}{section.B.1}%
\contentsline {subsection}{\numberline {B.1.1}Citations}{8}{subsection.B.1.1}%
\contentsline {section}{\numberline {B.2}Usage: Building the Book}{8}{section.B.2}%
\contentsline {subsubsection}{\numberline {B.2.0.1}PDF}{8}{subsubsection.B.2.0.1}%
\contentsline {subsubsection}{\numberline {B.2.0.2}HTML}{8}{subsubsection.B.2.0.2}%
\contentsline {subsubsection}{\numberline {B.2.0.3}LaTex}{8}{subsubsection.B.2.0.3}%
\contentsline {subsubsection}{\numberline {B.2.0.4}Markdown}{8}{subsubsection.B.2.0.4}%
\contentsline {subsubsection}{\numberline {B.2.0.5}EPub}{9}{subsubsection.B.2.0.5}%
\contentsline {chapter}{Glossary}{10}{appendix*.4}%
\contentsline {chapter}{Index}{12}{appendix*.5}%
\contentsline {chapter}{Bibliography}{14}{appendix*.6}%
\contentsline {chapter}{Glossary}{3}{chapter*.4}%
\contentsline {chapter}{Index}{5}{chapter*.5}%
\contentsline {chapter}{Bibliography}{7}{chapter*.6}%

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -4,9 +4,9 @@ input-files:
- chapters/00_Introduction.md
- chapters/01_Getting_Started.md
# - chapters/02_Features.md
- chapters/Appendix.md
- chapters/AppendixA.md
- chapters/AppendixB.md
# - chapters/Appendix.md
# - chapters/AppendixA.md
# - chapters/AppendixB.md
- chapters/Glossary.md
- chapters/Index.md
- chapters/Bibliography.md