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", "active": "dc8c249564ffac56",
"lastOpenFiles": [ "lastOpenFiles": [
"conf/sedK5OZdk",
"conf/sed0lodyQ",
"conf/sedVrX4GJ",
"templates/odt.yaml", "templates/odt.yaml",
"templates/frontmatter-docx.md", "templates/frontmatter-docx.md",
"templates/docx.yaml", "templates/docx.yaml",
@ -281,9 +284,6 @@
"conf/sed7Vpnn0", "conf/sed7Vpnn0",
"conf/latex.yaml", "conf/latex.yaml",
"conf/sedOEGv7F", "conf/sedOEGv7F",
"conf/header.tex",
"conf/style_epub.css",
"conf/style.css",
"chapters/Preface.md", "chapters/Preface.md",
"chapters/Index.md", "chapters/Index.md",
"chapters/Glossary.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 PANDOC = pandoc
XELATEX = xelatex -interaction=nonstopmode -halt-on-error -file-line-error XELATEX = xelatex -interaction=nonstopmode -halt-on-error -file-line-error
BASE = conf/pandoc.yaml BASE = conf/pandoc.yaml
@ -14,11 +14,13 @@ META_NAME := $(shell sed -n 's/^name:[[:space:]]*//p' $(METADATA))
LATEX_BUILD = build/latex LATEX_BUILD = build/latex
PDF_BUILD = build/pdf PDF_BUILD = build/pdf
HTML_BUILD = build/html HTML_BUILD = build/html
DOCX_BUILD = build/docx
ODT_BUILD = build/odt
EPUB_BUILD = build/epub EPUB_BUILD = build/epub
MD_BUILD = build/md 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 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 # EPUB
# ============================================================ # ============================================================
@ -139,6 +178,7 @@ markdown: bootstrap
@echo "Produced $(MD_BUILD)/$(META_NAME).md" @echo "Produced $(MD_BUILD)/$(META_NAME).md"
open $(MD_BUILD)/$(META_NAME).md
# ============================================================ # ============================================================
# CLEAN # CLEAN

View File

@ -30,81 +30,19 @@
\newlabel{cloning-the-basic-book-builder}{{2.1}{2}{Cloning the Basic Book Builder}{section.2.1}{}} \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 } \@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}{}} \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 \gdef \LT@i {\LT@entry
{1}{86.68152pt}\LT@entry {1}{86.68152pt}\LT@entry
{1}{383.07349pt}} {1}{383.07349pt}}
\newlabel{glossary}{{B.2.0.5}{10}{Glossary}{appendix*.4}{}} \newlabel{glossary}{{2.2}{3}{Glossary}{chapter*.4}{}}
\@writefile{toc}{\contentsline {chapter}{Glossary}{10}{appendix*.4}\protected@file@percent } \@writefile{toc}{\contentsline {chapter}{Glossary}{3}{chapter*.4}\protected@file@percent }
\@writefile{toc}{\contentsline {chapter}{Index}{12}{appendix*.5}\protected@file@percent } \@writefile{toc}{\contentsline {chapter}{Index}{5}{chapter*.5}\protected@file@percent }
\bibcite{ref-JehaverlackBasicbookbuilderPandoca}{\citeproctext }
\bibcite{ref-JohnHaverlackACEP}{\citeproctext } \bibcite{ref-JohnHaverlackACEP}{\citeproctext }
\bibcite{ref-PandocIndex}{\citeproctext }
\bibcite{ref-JehaverlackBasicbookbuilderPandoca}{\citeproctext }
\bibcite{ref-JohnHaverlackACEP}{\citeproctext } \bibcite{ref-JohnHaverlackACEP}{\citeproctext }
\newlabel{bibliography}{{B.2.0.5}{14}{Bibliography}{appendix*.6}{}} \bibcite{ref-PandocIndex}{\citeproctext }
\@writefile{toc}{\contentsline {chapter}{Bibliography}{14}{appendix*.6}\protected@file@percent } \newlabel{bibliography}{{2.2}{7}{Bibliography}{chapter*.6}{}}
\newlabel{refs}{{B.2.0.5}{14}{Bibliography}{section*.7}{}} \@writefile{toc}{\contentsline {chapter}{Bibliography}{7}{chapter*.6}\protected@file@percent }
\gdef \@abspage@last{19} \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 entering extended mode
restricted \write18 enabled. restricted \write18 enabled.
file:line:error style messages 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 (./basic-book-builder.aux
LaTeX Warning: Label `ref-JehaverlackBasicbookbuilderPandoca' multiply defined.
LaTeX Warning: Label `ref-JohnHaverlackACEP' multiply defined. LaTeX Warning: Label `ref-JohnHaverlackACEP' multiply defined.
LaTeX Warning: Label `ref-PandocIndex' multiply defined.
) )
\openout1 = `basic-book-builder.aux'. \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 LaTeX Font Info: Font shape `TU/NotoSerif(0)/b/n' will be
(Font) scaled to size 14.4pt on input line 358. (Font) scaled to size 14.4pt on input line 358.
[2] [2]
(./basic-book-builder.toc [1 (./basic-book-builder.toc)
])
\tf@toc=\write6 \tf@toc=\write6
\openout6 = `basic-book-builder.toc'. \openout6 = `basic-book-builder.toc'.
[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 [1
] [2
]
Chapter 1.
[1
] ]
Chapter 2. Chapter 2.
LaTeX Font Info: Font shape `TU/NotoSansMono(0)/m/n' will be 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 [2
] ]
Appendix A. Underfull \hbox (badness 10000) in alignment at lines 488--496
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 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| []|\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. []\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- 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. []\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- Https://www.uaf.edu/acep/about/our-team/john-
[] []
[14 [7
] [15 ] [8
] (./basic-book-builder.aux) ] (./basic-book-builder.aux)
LaTeX Warning: There were undefined references.
LaTeX Warning: There were multiply-defined labels. LaTeX Warning: There were multiply-defined labels.
) )
Here is how much of TeX's memory you used: Here is how much of TeX's memory you used:
36484 strings out of 478775 36419 strings out of 478775
752350 string characters out of 5850945 751624 string characters out of 5850945
1858991 words of memory out of 5000000 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 516036 words of font info for 92 fonts, out of 8000000 for 9000
14 hyphenation exceptions out of 8191 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}{% \fancypagestyle{plain}{%
\fancyhf{}% \fancyhf{}%
\fancyhead[C]{\leftmark} % Chapter title \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 \rfoot{\thepage} % Page number
\renewcommand{\headrulewidth}{0pt} \renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt}
@ -280,7 +280,7 @@
\fancyhead[C]{\leftmark} % Chapter title (centered) \fancyhead[C]{\leftmark} % Chapter title (centered)
% Footer % 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 \rfoot{\thepage} % Page number
% Line rules % Line rules
@ -313,7 +313,7 @@
{\Huge\bfseries Basic Book Builder \par} {\Huge\bfseries Basic Book Builder \par}
\vspace{0.4cm} \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} \vspace{1.2cm}
\includegraphics[width=0.5\textwidth]{lib/img/UAF-ACEP.png} \includegraphics[width=0.5\textwidth]{lib/img/UAF-ACEP.png}
@ -330,7 +330,7 @@
{\Large\bfseries Basic Book Builder \par} {\Large\bfseries Basic Book Builder \par}
\vspace{0.2cm} \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} \vspace{0.4cm}
\renewcommand{\arraystretch}{1.3} % row spacing \renewcommand{\arraystretch}{1.3} % row spacing
@ -421,15 +421,15 @@ Licensed under the Creative Commons Attribution-NoDerivatives 4.0 International
\chapter{Introduction}\label{introduction} \chapter{Introduction}\label{introduction}
This is a basic book (or article / document) builder template based on a This is a basic book (or article / document) builder template based on a
Pandoc(\citeproc{ref-PandocIndex}{\textbf{PandocIndex?}})\index{Pandoc} Pandoc(\citeproc{ref-PandocIndex}{\emph{Pandoc - Index},
build process in conjunction with a number of other tools to generate n.d.})\index{Pandoc} build process in conjunction with a number of other
PDF, HTML, LaTex, Markdown, ODT, DOCX, and Epub book output formats from tools to generate PDF, HTML, LaTex, Markdown, ODT, DOCX, and Epub book
a single set Markdown source content , which can optionally be edited as output formats from a single set Markdown source content , which can
an Obsidian vault. optionally be edited as an Obsidian vault.
This \textbf{basic book This \textbf{basic book
builder}(\citeproc{ref-JehaverlackBasicbookbuilderPandoca}{\textbf{JehaverlackBasicbookbuilderPandoca?}}) builder}(\citeproc{ref-JehaverlackBasicbookbuilderPandoca}{\emph{Jehaverlack/Basic-Book-Builder},
template has been curated by John n.d.}) template has been curated by John
Haverlack.(\citeproc{ref-JohnHaverlackACEP}{\emph{John {Haverlack} Haverlack.(\citeproc{ref-JohnHaverlackACEP}{\emph{John {Haverlack}
\textbar{} {ACEP}}, n.d.}) \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 For more information on setting up the build environment for your system
see Appendix A. 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 \backmatter
\chapter*{Glossary}\label{glossary} \chapter*{Glossary}\label{glossary}
@ -896,14 +576,30 @@ for citation processing with Pandoc. \\
\protect\phantomsection\label{refs} \protect\phantomsection\label{refs}
\begin{CSLReferences}{1}{1} \begin{CSLReferences}{1}{1}
\bibitem[\citeproctext]{ref-JohnHaverlackACEP} \bibitem[\citeproctext]{ref-JehaverlackBasicbookbuilderPandoca}
\emph{John {Haverlack} \textbar{} {ACEP}}. n.d. \emph{Jehaverlack/Basic-Book-Builder: {A Pandoc} Workflow for Building
Https://www.uaf.edu/acep/about/our-team/john-haverlack.php. {PDF}, {HTML}, {EPUB}, and {LaTeX} Book Format.} n.d.
Https://github.com/jehaverlack/basic-book-builder.
\bibitem[\citeproctext]{ref-JohnHaverlackACEP} \bibitem[\citeproctext]{ref-JohnHaverlackACEP}
\emph{John {Haverlack} \textbar{} {ACEP}}. n.d. \emph{John {Haverlack} \textbar{} {ACEP}}. n.d.
Https://www.uaf.edu/acep/about/our-team/john-haverlack.php. 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} \end{CSLReferences}
\backmatter \backmatter

View File

@ -2,37 +2,6 @@
\contentsline {chapter}{\numberline {2}Getting Started}{2}{chapter.2}% \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.1}Cloning the Basic Book Builder}{2}{section.2.1}%
\contentsline {section}{\numberline {2.2}Setting Up Build Environment}{2}{section.2.2}% \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 {chapter}{Glossary}{3}{chapter*.4}%
\contentsline {section}{\numberline {A.1}Installing Pre-Requisites}{3}{section.A.1}% \contentsline {chapter}{Index}{5}{chapter*.5}%
\contentsline {subsection}{\numberline {A.1.1}Required}{3}{subsection.A.1.1}% \contentsline {chapter}{Bibliography}{7}{chapter*.6}%
\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}%

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/00_Introduction.md
- chapters/01_Getting_Started.md - chapters/01_Getting_Started.md
# - chapters/02_Features.md # - chapters/02_Features.md
- chapters/Appendix.md # - chapters/Appendix.md
- chapters/AppendixA.md # - chapters/AppendixA.md
- chapters/AppendixB.md # - chapters/AppendixB.md
- chapters/Glossary.md - chapters/Glossary.md
- chapters/Index.md - chapters/Index.md
- chapters/Bibliography.md - chapters/Bibliography.md