Autocento of the breakfast table
+process narrative
+ +Hi. My name is Case Duckworth. This is my thesis.
+Autocento of the breakfast table is an inter/hypertextual exploration of the workings of inspiration, revision, and obsession. I’ve compiled this work over multiple years, and recently linked it all together to form a (hopefully) more cohesive whole. To make this easier than collating everything by hand, I’ve relied on a process that leverages open-source technologies to publish my work onto a web platform.
+Process steps
+-
+
- Write poems. +
- Convert to Markdown.
+
-
+
- Markdown, originally by John Gruber, is a lightweight markup language that allows me to focus on the content of my writing, knowing that I can work on the presentation later. +
- The original
markdown.pl
program is buggy and inconsistent with how it applies styles to markup. It also only works to convert text to HTML.
+ - Because of these limitations, I’ve used John MacFarlane’s extended Markdown syntax, which lets me write richer documents and programmatically compile my work into multiple formats. +
+ - Compile to HTML with Pandoc.
+
-
+
At first, I used this code in the shell to generate my HTML:
+
+but this proved tedious with time.for file in *.txt; do +pandoc "$file" -f markdown -t html5 \ +--template=template.html -o "${file%txt}html" +done
+- After a lot of experimenting with different scripting languages, I finally realized that
GNU make
would fit this task perfectly.
+ - You can see my makefile here—it’s kind of a mess, but it does the job. See below for a more detailed explanation of the makefile. +
+ - Style the pages with CSS.
+
-
+
- I use a pretty basic style for Autocento. You can see my stylesheet here. +
+ - Use Github to put them online.
+
-
+
- Github uses
git
under the hood—a Version Control System developed for keeping track of large code projects.
+ - My workflow with
git
looks like this: +-
+
- Change files in the project directory—revise a poem, change the makefile, add a style, etc. +
- (If necessary, re-compile with
make
.)
+ git status
tells me which files have changed, which have been added, and if any have been deleted.
+git add -A
adds all the changes to the staging area, or I can add individual files, depending on what I want to commit.
+git commit -m "[message]"
commits the changes to git. This means they’re “saved”—if I do something I want to revert, I cangit revert
back to a commit and start again.
+git push
pushes the changes to the remote repository—in this case, the Github repo that serves http://autocento.me.
+- Lather, rinse, repeat. +
+
+ - Github uses
- Write Makefile to extend build capabilities.
+
-
+
- As of now, I’ve completed a Hapax legomenon compiler, a back-link compiler, and an updater for the random link functionality that’s on this site. +
- I’d like to build a compiler for the Index of first lines and Index of common titles once I have time. +
+
The beauty of this system
+-
+
- I can compile these poems into (almost) any format:
pandoc
supports a lot.
+ - Once I complete the above process once, I can focus on revising my poems. +
- These poems are online for anyone to see and use for their own work. +