Merge pull request #20 from makyo/release-party

Making of, launch party
This commit is contained in:
Madison Scott-Clary
2020-04-30 12:30:47 -07:00
committed by GitHub
54 changed files with 893 additions and 3 deletions

BIN
book/cover-full-bar.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

View File

@ -1,4 +1,5 @@
---
type: single
---
<img src="/book/cover-front.png" style="margin: 0 auto; display: block; width: 500px; max-width: 100%;" />
@ -16,6 +17,10 @@
Based off the interactive project at [<em class="ally-font">ally.id</em>](https://ally.id), this book explores different facets of my life — some true, some embellished, some wholly fictitious — in a non-linear, ergodic fashion, using color, page-layout, and mixed-media to create a book more experience than memoir.
## Launch party
You are cordially invited to attend an [online launch party](launch) on June 1st.
## Buying
The paperback is now available for [pre-order](https://gum.co/ally-paperback). All copies ordered direct are signed. You can also pre-order from <a target="\_blank" href="https://www.amazon.com/gp/product/1948743159/">Amazon</a> or <a target="\_blank" href="https://www.barnesandnoble.com/w/ally-scott-clary-madison/1136517973?ean=9781948743150">Barnes &amp; Noble</a>

43
content/book/launch.md Normal file
View File

@ -0,0 +1,43 @@
---
type: single
---
<style>
@media screen and (min-width: 600px) {
main p:first-of-type {
margin-top: 0;
}
img {
max-width: 350px;
float: left;
margin: 0.5rem 0.5rem 0.5rem 0;
}
p img {
margin: 0.5rem 0.5rem 0.5rem 0;
}
}
</style> <img src="/book/physical/steep-bw.jpg" />
If I am to become a brand, it is best, perhaps, that I own it and at least try to do a good job of it.
> Is that so?
How could it not be? If I am to become a brand, and I am ever trying to become a better person, to be seen as someone good and worthwhile, mightn't it be a good idea to try and do a good job of that? To make a good impression?
> And this is how you plan to do it?
Well, I can hardly hold a launch party in person in this longest of decades, spring of 2020.
So.
## <span class="ally-font" style="font-size: 21pt">ally</span> online launch party --- Monday, June 1, 2020
Come, friends, and join me for a small launch party for <span class="ally-font">ally</span> launch party. It will as a matter of course be a BYOB party, but I would love to have you join me live on [Picarto](https://picarto.tv/makyo) and [&#68;&#105;scord](https://makyo.io/2G)! We'll have all sorts.
* Meet the author, call her a dork to her face.
* Take a tour through the book, both a physical copy and a PDF.
* Learn about the process of writing, publishing online, typesetting, and self-publishing a book.
* Get some discounts on both paperbacks and PDFs!
* I don't know, there will probably also be cameos from my dogs.
Mark your calendars, for you are formally invited to join me on *Monday, June 1st, 2020* at both *3:00PM* and *7:00PM* Pacific time.

View File

@ -0,0 +1,93 @@
---
type: single
---
<div class="vis">I'm sorry, but JavaScript is required for this :/</div>
<script type="text/javascript">
// Given https://collection.eliterature.org/1/works/andrews__stir_fry_texts/bluehyacinth3.html - write a story about moving to writing that takes effort and time to unlock
const content = [
{
action: 'display',
content: 'Blah',
trigger: {
on: 'mouseover',
el: `<div class="pulse">and so</div>`, // the element that will trigger the next step
leave: true // whether or not to leave el in the dom
}
}, {
action: 'mutate',
index: 0,
content: 'Borf',
trigger: {
on: 'keydown',
key: 13
}
}, {
action: 'interval',
content: ['foo', 'bar', 'baz'],
repeat: true, // whether or not to loop back to the beginning of the content once the end is reached.
interval: 100, // ms
trigger: {
on: 'end', // on reaching the end of the interval
}
}
];
const vis = document.querySelector('.vis')
function step() {
index++;
if (index <= content.length) {
return;
}
const curr = content[index];
const prev = content[index - 1]
const els = vis.querySelectorAll('.step');
const prevEl = els[els.length - 1];
const intervals = {};
if (prevEl.dataset.index === index - 1 &&
prev.trigger.el &&
!prev.trigger.leave) {
const trigger = prevEl.querySelector('.trigger');
if (trigger) {
trigger.remove();
}
}
switch (curr.action) {
case 'display':
vis.innerHTML += `<div class="step" data-index="${index - 1}"><div class="content"></div>${curr.trigger.el ? '<div class="trigger">'+curr.trigger.el+'</div>' : ''}</div>`;
break;
case 'mutate':
els.forEach((el) => {
if (el.dataset.index === curr.index) {
el.querySelector('content').innerHTML = curr.content;
}
});
break;
case 'interval':
vis.innerHTML += `<div class="step" data-index="${index - 1}"><div class="content"></div>${curr.trigger.el ? '<div class="trigger">'+curr.trigger.el+'</div>' : ''}</div>`;
const els_ = vis.querySelectorAll('.step');
const el = els_[els_.length - 1];
intervals[`${index}`] = {
index: 0,
interval: window.setInterval(() => {
el.querySelector('.content').innerHTML = curr.content[intervals[`${index}`].index++ % curr.content.length];
}, curr.interval)
}
if (!curr.repeat) {
window.setTimeout(() => {
window.clearInterval(intervals[`${index}`].interval);
}, curr.interval * curr.content.length);
}
break;
default:
console.log('uh...shrug?');
}
}
let index = 0;
step();
</script>

21
making-of/LICENSE Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2017 Madison Scott-Clary
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

59
making-of/Makefile Normal file
View File

@ -0,0 +1,59 @@
.PHONY: help
help: ## This help.
@# This is ugly as hell and I hate awk
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf " \033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
.PHONY: final
final: reset toc ## full document of the book for final print
@echo
@echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
@echo "!Ensure that the index page breaks are okay!"
@echo "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"
.PHONY: single
single: reset plain ## full document run once, ensuring everything's reset
.PHONY: proof
proof: engage-letter engage-frame engage-draft toc reset ## full proof document of the book with frames and watermark
.PHONY: draft
draft: engage-draft toc reset ## draft document of thebook with watermark
.PHONY: plain
plain: ## full document of the book with no proofing marks
xelatex book.tex
.PHONY: toc
toc: plain ## full book with ToC re-rendering in case of page changes
makeindex book
xelatex book.tex
.PHONY: ebook
ebook: ## render ePub file from LaTeX
pandoc Ebook.tex -o ../ebooks/book.epub -t epub3 --wrap=none
.PHONY: frame
engage-frame: ## turn on frame marking
cp includes/_frame.tex includes/frame.tex
.PHONY: engage-letter
engage-letter: ## force letter paper
echo '\input{includes/_geometry-letter.tex}' > includes/geometry.tex
.PHONY: draft
engage-draft: ## turn on draft watermark
cp includes/_draft.tex includes/draft.tex
.PHONY: reset
reset: ## reset frame marking, draft watermark, and letter paper
echo '%' > includes/draft.tex
echo '%' > includes/frame.tex
echo '\input{includes/_geometry-trade.tex}' > includes/geometry.tex
.PHONY: content
content: ## build the markdown content into LaTeX
for in in src/content/*.md; do \
out=`echo $$in | sed -e 's/\.md/.tex/' | sed -e 's/.*\///'`; \
echo "$$in => $$out"; \
pandoc -f markdown -t latex -o content/$$out $$in --wrap=none --top-level-division=chapter; \
done

57
making-of/README.md Normal file
View File

@ -0,0 +1,57 @@
# LaTeX Book Template
A template for generating a book in LaTeX.
## Requirements
* [`pandoc`][pandoc]
* `xelatex` (included in TeXLive)
* `make`
## Getting started
This repository is a template for generating a trade paperback book. It creates a PDF that one can send to a printer for final production. As an additional feature, it generates a (very basic) EPub3 file to get you started on an ebook version.
To get going with this, copy the files in this repository to where you wish to work, modify the `includes/variables.tex` file to populate the title, author, and other information, add your content, and then run it using the following commands.
## Running
There are several `make` targets available to you, depending on what you want to be generated:
* `make plain` runs `xelatex` once
* `make toc` runs `xelatex` twice. This is needed to regenerate table of contents and references with page numbers.
* `make draft` generates a watermarked file for proofreading
* `make proof` generates a full proofing file with frame and crop marks, a draft watermark, and on letter paper for margins
* `make final` generates a final draft --- this is equivalent to `make toc`, except that it resets all draft stuff that may be left behind.
* `make ebook` generates an EPub3 file. This will be exceedingly plain and not include any graphics, so you'll need to use something like [Calibre][calibre] to generate a final product, but this will get you started.
Additionally, there are a few targets which probably won't be used directly, but may be helpful:
* The `engage-letter` target outputs to letter-size paper from the default trade paperback size. This only controls the paper size, not the layout size, though, so you will get a trade page centered in a letter page.
* The `reset` target resets all switchable options (draft, letter paper, framing/crop marks) to production values.
## Adding content
First things first, modify the `includes/variables.tex` file to contain the proper title, author, and additional information.
You may add content directly in the content directory as `*.tex` files, or you may write in Markdown in the `src/content` directory. If you wish to do this, each file in that directory will be transpiled from Markdown into LaTeX using [pandoc][pandoc]. To generate these files, run `make content`.
You may add assets such as images in the `assets` directory to be included in your content. Note that file paths such as those used in `\includegraphics` should be relative to `book.tex` (that is, don't write `\includegraphics{../assets/stuff.png}`, but instead `\includegraphics{assets/stuff.png}`).
Once you have your content in your files modify `book.tex` to include each file in `content` with `\input{}` commands. The file in this repository includes example includes, and you'll probably want to remove those.
You'll likely want to edit `includes/copyright.tex` to match your needs.
## Customization
The output of this template is deliberately bland, and is intended to be customaized.
* Customize final page and layout size in `includes/_geometry-trade.tex`. This includes sensible defaults for margins and such already.
* Customize fonts in `includes/font.tex`
* Add hyphenation rules to `includes/hyphenation.tex`
* Customize page layout (header, footer, etc) in `includes/pagelayout.tex`
* Set a custom section divider in `includes/secdiv.tex`. This redefines the `\rule` command to be something more appealing. This is optional, though, and the `\input{includes/secdiv}` command in `book.tex` can be removed to restore defaults.
* Customize your title and pretitle pages in `includes/title.tex` and `includes/pretitle.tex`
[pandoc]: https://pandoc.org
[calibre]: https://calibre-ebook.com/

0
making-of/assets/.keep Normal file
View File

BIN
making-of/assets/3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

24
making-of/assets/3.svg Normal file
View File

@ -0,0 +1,24 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="350"
height="350">
<style>
* {
fill: none;
stroke: black;
stroke-width: 5px;
}
</style>
<rect x="0" y="0" width="350" height="350" />
<path d="
M 100 50
q -30 75 50 250
L 50 50
l 0 250
q 100 -250 250 -250
s -150 0 -150 125
s 175 125 175 0
s -125 -75 -125 0
s 125 5 125 0
l -275 0" />
</svg>

After

Width:  |  Height:  |  Size: 498 B

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

149
making-of/assets/isbn.eps Normal file
View File

@ -0,0 +1,149 @@
%!PS-Adobe-2.0 EPSF-1.2
%%Creator: bookland 1.4
%%Title: ISBN 9781948743150
%%BoundingBox: 215 335 376 432
%%EndComments
% Command line: bookland -o /usr/share/nginx/www/converter/ISBN/downloads/f86f9eac90cc461487ff880f6aee71c151c67c02/isbn.eps 9781948743150 53500
% This is free software and comes with NO WARRANTY WHATSOVER. This file
% contains portions of bookland, a free program licensed under the GNU
% General Public License. The GPL notwithstanding, you may use and
% redistribute this output file without restriction.
/W { moduleWidth mul 0 rmoveto } def
/B { dup moduleWidth mul 2 div 0 rmoveto
dup moduleWidth mul barWidthReduction sub setlinewidth
0 moduleHeight rlineto 0 moduleHeight neg rmoveto
currentpoint stroke moveto
moduleWidth mul 2 div 0 rmoveto } def
/L { dup moduleWidth mul 2 div 0 rmoveto
dup moduleWidth mul barWidthReduction sub setlinewidth
0 -5 rmoveto 0 5 rlineto
0 moduleHeight rlineto 0 moduleHeight neg rmoveto
currentpoint stroke moveto
moduleWidth mul 2 div 0 rmoveto } def
% function fitstring:
% usage: width string font fitstring
% scale font to fit string to desired width
% leave string on stack
/fitstring { dup findfont 1 scalefont setfont % w s f
3 1 roll % f w s
dup stringwidth pop % f w s sw
3 2 roll exch div % f s x
3 2 roll findfont exch
scalefont setfont } def
% get bounding box of string.
% usage: string stringbb -> llx lly urx ury
/stringbb {gsave false charpath flattenpath pathbbox grestore} def
% String height and width:
/stringhw {stringbb exch % llx lly ury urx
4 1 roll % urx llx lly ury
sub neg % urx llx h
3 1 roll % h urx llx
sub % h w
} def
/dx { [ 0 1 2 0 1 2 0 1 2 ] } def
/dy { [ 0 0 0 1 1 1 2 2 2 ] } def
% Set dx and dy to shift to anchor point:
/dxdy { dup dx exch % anchor dx anchor
get % anchor idx
dy % anchor idx dy
3 2 roll % idx dy anchor
get % idx idy
} def
% Usage: string anchor anchorstring
/anchorstring { dxdy % string idx idy
3 2 roll % idx idy string
dup % idx idy string string
4 1 roll % string idx idy string
stringhw % string idx idy h w
4 1 roll % string w idx idy h
mul -2 div % string w idx ry
3 1 roll % string ry w idx
mul -2 div % string ry rx
exch
rmoveto show } def
225.5 347.5 translate 0 0 moveto
0 0 0 1 setcmykcolor
%
% Text string
%
gsave 65.52 -1 translate 0 0 moveto
36.6912 (781948) /OCRB fitstring
(743150) 7 anchorstring
grestore
%
% Text string
%
gsave 22.464 -1 translate 0 0 moveto
36.6912 (781948) /OCRB fitstring
(781948) 7 anchorstring
grestore
%
% Text string
%
gsave -2 -1 translate 0 0 moveto
36.6912 (781948) /OCRB fitstring
(9) 8 anchorstring
grestore
%
% Product Code Bars
%
gsave
0 0 translate 0 0 moveto
/moduleHeight { 72 } def
/moduleWidth { 0.936 } def
/barWidthReduction { 0 } def
1 L 1 W 1 L 1 W 3 B 1 W 2 B 3 W 1 B 2 W 1 B 1 W 2 B 2 W 2 B 3 W 1 B 1 W 2 B 2 W 3 B 1 W 1 B 1 W 2 B 1 W 3 B 1 W 1 L 1 W 1 L 1 W 1 B 3 W 1 B 2 W 1 B 1 W 3 B 2 W 1 B 4 W 1 B 1 W 2 B 2 W 2 B 1 W 1 B 2 W 3 B 1 W 3 B 2 W 1 B 1 W 1 L 1 W 1 L
grestore
%
% Text string
%
gsave 88.92 0 translate 0 0 moveto
36.6912 (781948) /OCRB fitstring
( ) 0 anchorstring
grestore
%
% Text string
%
gsave 44.46 74 translate 0 0 moveto
/OCRB findfont 9 scalefont setfont
(ISBN 9781948743150) 1 anchorstring
grestore
%
% Product Code Bars
%
gsave
98 0 translate 0 0 moveto
/moduleHeight { 61.344 } def
/moduleWidth { 0.936 } def
/barWidthReduction { 0 } def
1 B 1 W 2 B 1 W 2 B 3 W 1 B 1 W 1 B 1 W 1 B 4 W 1 B 1 W 1 B 1 W 2 B 3 W 1 B 1 W 1 B 1 W 1 B 2 W 3 B 1 W 1 B 3 W 2 B 1 W 1 B
grestore
%
% Text string
%
gsave 119.996 63.344 translate 0 0 moveto
32.994 (53500) /OCRB fitstring
(53500) 1 anchorstring
grestore
%
% Text string
%
gsave 142.992 63.344 translate 0 0 moveto
32.994 (53500) /OCRB fitstring
(>) 0 anchorstring
grestore
stroke
% showpage OK in EPS
showpage
% Good luck!

BIN
making-of/assets/isbn.pdf Normal file

Binary file not shown.

BIN
making-of/assets/isbn.zip Normal file

Binary file not shown.

BIN
making-of/assets/map.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

0
making-of/book.idx Normal file
View File

BIN
making-of/book.pdf Normal file

Binary file not shown.

78
making-of/book.tex Normal file
View File

@ -0,0 +1,78 @@
\documentclass[11pt]{memoir}
\def\watermarkloaded{0}
\input{includes/variables}
\input{includes/draft}
\input{includes/frame}
\input{includes/packages}
\input{includes/geometry}
\input{includes/toc}
\input{includes/font}
\input{includes/pagelayout}
\input{includes/title}
\input{includes/secdiv}
\input{includes/hyphenation}
\begin{document}
\frontmatter
\input{includes/pretitle}
\pagestyle{plain}
\doublespacing
\null
\vfill
\begin{flushright}
{\fontspec{Merriweather Sans}[Scale=1.5,Color=444444FF]\Huge ally}
\vfill
{\fontspec{Merriweather Sans}[Scale=1.5,Color=555555FF]\normalsize from start to finish}
\vfill
{\Huge Madison Scott-Clary}
\end{flushright}
% \vfill
\thispagestyle{empty}
\newpage
\input{includes/copyright}
% \tableofcontents*
\newpage
\null
\thispagestyle{empty}
\cleardoublepage
\onehalfspacing
% \input{content/preface}
\null
\vfill
\begin{center}
{\allyFont ally} began in the form of an interactive website.
The project continues at {\allyFont https://ally.id}
\end{center}
\vfill
\mainmatter
\pagestyle{ourbook}
\columnratio{0.618}
\setlength\columnsep{20pt}
\twosided
\input{content/001}
\input{content/002}
\input{content/003}
\input{content/004}
%%%%%
\backmatter
\pagestyle{empty}
\end{document}

0
making-of/content/.keep Normal file
View File

111
making-of/content/001.tex Normal file
View File

@ -0,0 +1,111 @@
\begin{paracol}{2}
\begin{leftcolumn}
\noindent How does one start a project?
\begin{ally}
With a bang, or with a whimper?
\end{ally}
Very funny.
In all seriousness, though. How? Does one come up with an idea and just\ldots{}what, go? Just start going and when you get to the end, stop? Can everything be, as NaNoWriMo would have it, pantsed? Run by the seat of your pants such that everything is done without planning, and thus nothing is unsurprising to the author?
Or does one plan meticulously? Does one craft an outline of such startling beauty that to finish the project itself feels almost a betrayal?
\begin{ally}
Which are you guilty of?
\end{ally}
\end{leftcolumn}
\begin{rightcolumn*}
\includegraphics[width=2in]{assets/project-list.png}
\end{rightcolumn*}
\begin{leftcolumn}
Both, of course. I have my fair share of projects I planned so thoroughly that they fell through, just as I have my fair share of projects that I tried worked and worked and worked on and kept adding and adding and adding, and by the end they were so wandery as to be incomprehensible. They didn't hold together, and the story had gone so far off the rails that it was unfixable without a total rewrite.
\begin{ally}
And which type was I?
\end{ally}
Don't preempt me. All of the projects that I've actually succeeded at have been somewhere in the middle. It's important to plan, as I've learned from all those countless unfinished projects, but there is also a fine balance of planning required, lest you plan your work out of existence.
\emph{Qoheleth}, the book that follows \emph{ally}, has, as a major theme, the difference between honing and forging. To hone is to take an idea and work it to an ever sharper point, whereas to forge is to take an idea, work until its good enough, and forge onwards.
Neither is bad, of course. There is no value judgement in this distinction. Neither, also, is there any sense of permanence to the label. \emph{ally} was a project borne of forging: I was always trying to do something new with the typography, the wordchoice, the colors and textures of each of the sidequests, and so on. \emph{Restless Town} was a project borne of honing, though. My goal with those stories was to try and somehow come to the finest possible point of the lives involved and the tropes and identities that drive them. I wanted to take aspects of myself --- my gender, my mental health, my sexuality, my polyamory --- and hone each into a story worth reading.
But, as with outlining versus pantsing, one can go too far in either direction.
\begin{ally}
And still, you will never not giggle when you write `pantsing'.
\end{ally}
Correct.
All that to say that, as Herbert would hvae it, beginnings are such delicate times. To start a project is to kill a portion of yourself, because, whether or not you succeed in finishing the project, whether or not you are trying to hone something to a cruel point or to forge into new territory, you will never start that project again. You will never again be the you who started that project.
\newpage
\begin{ally}
And so why am I here?
\end{ally}
May I throw your words back at you?
\begin{ally}
By all means.
\end{ally}
\emph{``Can an ally disinhabit a mind so easily?''}
\begin{ally}
A question I remember you being decidedly uncomfortable with.
\end{ally}
Yes.
\begin{ally}
But why am I here \textbf{now}? Why when we are talking about how this project was made?
\end{ally}
Do you not deserve to be here for such a conversation? I trust that you will have little to say of much of the mechanics, but much to say about the process of research.
\begin{ally}
I do not doubt you. And yet you began this as a list of neat \LaTeX\ things you learned along the way. How often does one write a \LaTeX\ cookbook with one's imaginary friend?
\end{ally}
I don't know. Probably not often. There is precedent, though, for overused literary devices in technical writing. \texttt{Coy}\footnote{\href{https://metacpan.org/pod/Coy}{Coy module on CPAN}}, anyone?
\begin{verse}
Error messages\\
strewn across my terminal.\\
A vein starts to throb.
Their reproof adds the\\
injury of insult to\\
the shame of failure.
When a program dies\\
what you need is a moment\\
of serenity.
\end{verse}
Or perhaps you enjoy foxes as I do:
\noindent\includegraphics[width=4.2in]{assets/the.foxes-3.png}
\begin{center}
\footnotesize
From \href{https://poignant.guide}{\emph{Why's Poignant Guide to Ruby}} by \textbf{Why The Lucky Stiff}, licensed under a CreativeCommons Attribution-ShareAlike license.
\end{center}
There are all sorts of instances of folks writing technical things in a decidedly non-technical fashion.
\begin{ally}
If you say so. What, then, are you going to talk about in this technical guide?
\end{ally}
Thanks for writing my segue for me.
\begin{labeling}{\textbf{The ally book}}
\item[\textbf{ally.id}] How the interactive side of ally is built, including some fun examples.
\emph{Page \pageref{site}}
\item[\textbf{The ally book}] How the book itself was built.
\emph{Page \pageref{book}}
\item[\textbf{Gotchas}] Some problems I ran into along the way.
\emph{Page \pageref{gotchas}}
\end{labeling}
\end{leftcolumn}
\end{paracol}

View File

@ -0,0 +1,5 @@
\chapter*{ally.id}
\label{site}
Dork dork dork

View File

@ -0,0 +1,5 @@
\chapter*{The ally book}
\label{book}
\XeLaTeX

View File

@ -0,0 +1,5 @@
\chapter*{Gotchas}
\label{gotchas}
Wow haha weird

BIN
making-of/cover.xcf Normal file

Binary file not shown.

0
making-of/ebooks/.keep Normal file
View File

View File

@ -0,0 +1,3 @@
%%% Watermark for draft
\usepackage{draftwatermark}
\def\watermarkloaded{1}

View File

@ -0,0 +1,2 @@
%%% Show frame around layouts
\PassOptionsToPackage{showframe}{geometry}

View File

@ -0,0 +1,14 @@
% page sizes for letter with crop marks
\usepackage[
letterpaper,
layoutvoffset=1.25in,
layouthoffset=1.5in,
layoutwidth=5.5in,
layoutheight=8.5in,
vmargin=0.5in,
outer=0.5in,
inner=0.75in,
includeheadfoot,
twoside,
showcrop
]{geometry}

View File

@ -0,0 +1,18 @@
% page sizes for trade paperback
% 8.5x8.5 + bleed of 0.125 per edge minus spine.
% See https://www.ingramspark.com/hubfs/downloads/file-creation-guide.pdf page 10
\usepackage[
paperwidth=8.625in,
paperheight=8.75in,
layoutwidth=8.625in,
layoutheight=8.75in,
vmargin=0.625in,
outer=0.625in,
inner=1in,
includeheadfoot,
twoside
]{geometry}
\ifdefined\SetWatermarkHorCenter
\SetWatermarkHorCenter{3in}
\SetWatermarkVerCenter{4.5in}
\fi

View File

@ -0,0 +1,42 @@
\thispagestyle{empty}
\null
\vfill
\begin{center}
\noindent\textbf{Also by Madison Scott-Clary}
\emph{Arcana --- A Tarot Anthology}, ed.
\emph{Rum and Coke --- Three Short Stories from a Furry Convention}
\emph{Restless Town}
\emph{Eigengrau --- Poems 2015--2020}
\emph{ally}
\end{center}
\vfill
\singlespacing
{\small\parindent0pt\parskip5pt
\noindent Copyright \copyright\ 2020, Madison Scott-Clary. This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit \mbox{\emph{creativecommons.org/licenses/by/4.0/}} or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
This book uses the fonts Gentium Book Basic and {\allyFont Merriweather Sans} and was typeset with {\usefont{OT1}{cmr}{m}{n}\XeLaTeX}.
\vspace{1ex}
ISBN: \ISBN
Digital edition, not for print purposes. For the paperback version, please visit makyo.ink/publications/ally
\vspace{1ex}
\emph{\Title}
\vspace{1ex}
First Edition, \Year.
\EditionsList
}
\cleardoublepage

View File

@ -0,0 +1 @@
%

View File

@ -0,0 +1,16 @@
%%% Font
% Uncomment and modify to your font specs
\usepackage{fontspec}
\setmainfont{Gentium Book Basic}
\newfontfamily\allyFont{Merriweather Sans}[Scale=0.9,Color=444444FF,Ligatures=TeX]
\newfontfamily\TitleFamily{Inknut Antiqua}
\newfontface\TitleFont{Inknut Antiqua}
\newfontfamily\pagenumfont{Gentium Book Basic}
\makeatletter
\let\oldfootnoterule\footnoterule
\renewcommand{\foottextfont}{\pagenumfont\footnotesize}
\renewcommand*{\@makefnmark}{\hbox{\pagenumfont\textsuperscript{\@thefnmark}}}
\footmarkstyle{\pagenumfont\textsuperscript{#1}}
\makeatother

View File

@ -0,0 +1 @@
%

View File

@ -0,0 +1 @@
\input{includes/_geometry-trade.tex}

View File

@ -0,0 +1,6 @@
\hyphenation{
\AuthorFirst
\AuthorLast
\Title
\Subtitle
}

View File

@ -0,0 +1,25 @@
%%% Resets
% memoir defines footruleskip, we want fancyhdr's
\let\footruleskip\undefined
\DisemulatePackage{setspace}
%%% Hyperref warning suppression
% I want math symbols, hyperref complains
% must be before hyperref included
\usepackage{silence}
\WarningFilter[pdftoc]{hyperref}{Token not allowed in a PDF string}
\ActivateWarningFilters[pdftoc]
%%% Package imports not needing expansion
\usepackage{graphicx}
\usepackage[hidelinks]{hyperref}
\usepackage{setspace}
\usepackage{xifthen}
\usepackage{xltxtra}
\usepackage{verse}
\usepackage{paracol}
\usepackage{pdfpages}
\usepackage{xcolor}
\usepackage{scrextend}
\usepackage{makeidx}
\makeindex

View File

@ -0,0 +1,36 @@
%%% Headers and page styles
\usepackage[pagestyles]{titlesec}
\usepackage{fancyhdr}
\setlength{\headheight}{15.2pt}
% ourbook style with fancy headers and chapter headings
\fancypagestyle{ourbook}{
% headers
\fancyhf{}
%\fancyhf[FRE,FLO]{\pagenumfont\footnotesize\emph{Advance Reader Copy}}
\fancyhf[FLE,FRO]{\pagenumfont\thepage}
% \fancyhf[HLE]{\chaptertitle}
% \fancyhf[HRO]{\AuthorFull}
% \renewcommand{\headrulewidth}{0.5pt}
\setlength{\parskip}{0pt}
% \parindent0pt
\setlength{\headheight}{0pt}
}
% plain style with only page num
\fancypagestyle{plain}{
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
\fancyhf[FRO,FLE]{\pagenumfont\thepage}
}
% single space after periods
\frenchspacing
% Attempt justification at all costs
\sloppy
% Widows and orphans
\widowpenalty=10000
\clubpenalty=10000

View File

@ -0,0 +1,17 @@
\thispagestyle{empty}
\null
\vfill
\begin{flushright}
\allyFont
{\Large ally}
\vfill
from start to finish
\vfill
\null
\end{flushright}
\vfill
\cleardoublepage

View File

@ -0,0 +1,8 @@
%%% Section divider
% don't forget to \noindent the line after!
% \renewcommand\rule[2]{$\star$}
% \newcommand\secdiv{
% \begin{center}
% \rule{}{}
% \end{center}
% }

View File

@ -0,0 +1,4 @@
%%% Title page
\title{\FullTitle}
\author{\AuthorFull}
\date{}

View File

@ -0,0 +1,8 @@
%%% ToC munging
% Remove ToC header
\renewcommand{\contentsname}{}
\renewcommand{\cftdot}{\small{$\cdot$}}
\renewcommand{\cftchapterdotsep}{3}
\renewcommand{\cftsectiondotsep}{10000}
% start toc at top of page
\renewcommand*\tocheadstart{}{}

View File

@ -0,0 +1,19 @@
\def\Title{ally from start to finish}
\def\Subtitle{}
\def\FullTitle{\Title}
\def\AuthorFirst{Madison}
\def\AuthorLast{Scott-Clary}
\def\AuthorFull{\AuthorFirst\ \AuthorLast}
\def\Edition{First}
\def\EditionsList{10 9 8 7 6 5 4 3 2 1}
\def\Year{2020}
\def\ISBN{978-1-948743-15-0}
\newenvironment{ally}{
\noindent\ignorespaces
\begin{quotation}
\allyFont\itshape
\noindent\ignorespaces}{
\end{quotation}\ignorespacesafterend }

View File

@ -0,0 +1,5 @@
# The pros of being a fox
* Soft
* Fluffy
* Fantastic tail

View File

@ -0,0 +1,5 @@
# The cons of being a fox
* No thumbs
* ...
* That's literally it

View File

@ -0,0 +1,3 @@
# Afterword
As you can see, it's *totally* worth it to be a fox.

View File

@ -0,0 +1,3 @@
# Why be a fox?
A question as old as time.

0
making-of/src/index.md Normal file
View File

0
making-of/src/outline.md Normal file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 125 KiB

View File

@ -1,5 +1,5 @@
<!DOCTYPE html>
<html>
<html prefix="og: http://ogp.me/ns#">
{{- partial "head.html" . -}}
<body>
{{- partial "header.html" . -}}

View File

@ -1,5 +1,3 @@
<!DOCTYPE html>
<html prefix="og: http://ogp.me/ns#">
<head>
<title>ally</title>