summary refs log tree commit diff stats
path: root/process.html
blob: 22468632a95ec8e23c42ed706be147a607320de2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<!DOCTYPE html>
<!-- AUTOCENTO OF THE BREAKFAST TABLE -->
<!-- vim: fdm=indent
-->
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="generator" content="pandoc">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
    <meta name="author" content="Case Duckworth">

    <title>Autocento of the breakfast table | Autocento of the breakfast table</title>
    <link rel="icon" type="image/png" href="trunk/favico.png" />

    <link rel="stylesheet" type="text/css" href="style.css">
    <script src="trunk/lozenge.js" type="text/javascript"> </script>
    <script src="trunk/hylo.js" type="text/javascript"> </script>

    <!--[if lt IE 9]>
    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"> </script>
    <![endif]-->
    </head>
<body id="process" class="meta">


    <article class="container">
        <header>
            <!-- title -->
            <h1 class="title">Autocento of the breakfast table</h1>
            <h1 class="subtitle">process narrative</h1>

            <div class="header-extra">

                            </div>
        </header>


        <section class="content prose">
            <section id="hi.-my-name-is-case-duckworth.-this-is-my-thesis." class="level2">
            <h2>Hi. My name is Case Duckworth. This is my thesis.</h2>
            <p><em>Autocento of the breakfast table</em> 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.</p>
            </section>
            <section id="process-steps" class="level2">
            <h2>Process steps</h2>
            <ol type="1">
            <li>Write poems.</li>
            <li>Convert to Markdown.
            <ul>
            <li>Markdown, originally by <a href="http://daringfireball.net/projects/markdown/">John Gruber</a>, is a lightweight markup language that allows me to focus on the <em>content</em> of my writing, knowing that I can work on the <em>presentation</em> later.</li>
            <li>The original <code>markdown.pl</code> program is buggy and inconsistent with how it applies styles to markup. It also only works to convert text to HTML.</li>
            <li>Because of these limitations, I’ve used John MacFarlane’s <a href="http://johnmacfarlane.net/pandoc/README.html#pandocs-markdown">extended Markdown syntax</a>, which lets me write richer documents and programmatically compile my work into multiple formats.</li>
            </ul></li>
            <li>Compile to HTML with Pandoc.
            <ul>
            <li><p>At first, I used this code in the shell to generate my HTML:</p>
            <pre class="sourceCode bash"><code class="sourceCode bash"><span class="kw">for</span> <span class="kw">file</span> in *.txt<span class="kw">;</span> <span class="kw">do</span>
    <span class="kw">pandoc</span> <span class="st">&quot;</span><span class="ot">$file</span><span class="st">&quot;</span> -f markdown -t html5 \
    --template=template.html -o <span class="st">&quot;</span><span class="ot">${file%</span>txt<span class="ot">}</span><span class="st">html&quot;</span>
<span class="kw">done</span></code></pre>
            but this proved tedious with time.</li>
            <li>After a lot of experimenting with different scripting languages, I finally realized that <a href="https://www.gnu.org/software/make/manual/make.html"><code>GNU make</code></a> would fit this task perfectly.</li>
            <li>You can see my makefile <a href="https://github.com/duckwork/autocento/blob/gh-pages/makefile">here</a>—it’s kind of a mess, but it does the job. See below for a more detailed explanation of the makefile.</li>
            </ul></li>
            <li>Style the pages with CSS.
            <ul>
            <li>I use a pretty basic style for <em>Autocento</em>. You can see my stylesheet <a href="https://github.com/duckwork/autocento/blob/gh-pages/style.css">here</a>.</li>
            </ul></li>
            <li>Use <a href="https://github.com">Github</a> to put them online.
            <ul>
            <li>Github uses <code>git</code> under the hood—a Version Control System developed for keeping track of large code projects.</li>
            <li>My workflow with <code>git</code> looks like this:
            <ul>
            <li>Change files in the project directory—revise a poem, change the makefile, add a style, etc.</li>
            <li>(If necessary, re-compile with <code>make</code>.)</li>
            <li><code>git status</code> tells me which files have changed, which have been added, and if any have been deleted.</li>
            <li><code>git add -A</code> adds all the changes to the <em>staging area</em>, or I can add individual files, depending on what I want to commit.</li>
            <li><code>git commit -m &quot;[message]&quot;</code> commits the changes to git. This means they’re “saved”—if I do something I want to revert, I can <code>git revert</code> back to a commit and start again.</li>
            <li><code>git push</code> pushes the changes to the <em>remote repository</em>—in this case, the Github repo that serves <a href="http://autocento.me" class="uri">http://autocento.me</a>.</li>
            <li>Lather, rinse, repeat.</li>
            </ul></li>
            </ul></li>
            <li>Write Makefile to extend build capabilities.
            <ul>
            <li>As of now, I’ve completed a <em><a href="hapax.html">Hapax legomenon</a></em> compiler, a <a href="makefile">back-link</a> compiler, and an updater for the <a href="trunk/lozenge.js">random link functionality</a> that’s on this site.</li>
            <li>I’d like to build a compiler for the <a href="first-lines.html">Index of first lines</a> and <a href="common-titles.html">Index of common titles</a> once I have time.</li>
            </ul></li>
            </ol>
            </section>
            <section id="the-beauty-of-this-system" class="level2">
            <h2>The beauty of this system</h2>
            <ul>
            <li>I can compile these poems into (almost) any format: <code>pandoc</code> supports a lot.</li>
            <li>Once I complete the above process once, I can focus on revising my poems.</li>
            <li>These poems are online for anyone to see and use for their own work.</li>
            </ul>
            </section>
        </section>
    </article>
    <nav>

        <!-- ANCHORS -->
        <div class="anchors">
            <a href="process_backlinks.htm" id="back-link" title="Links to this page">
                &phi;
            </a>
            <a href="index.html" id="cover-link" title="To cover">&loz;</a>
            <a href="#" id="lozenge" title="ERROR">&#x221d;</a>
        </div>

            </nav>


</body>
</html>