diff options
author | Case Duckworth | 2015-03-28 10:50:24 -0700 |
---|---|---|
committer | Case Duckworth | 2015-03-28 10:50:24 -0700 |
commit | 417eddb940ec0b364a11d459e27d5ae05d2c7d11 (patch) | |
tree | 291dd47551917c6cc1e5ec819b5d76312ee89f80 /process.txt | |
parent | Add backlinks pages (fixes #16). (diff) | |
download | autocento-417eddb940ec0b364a11d459e27d5ae05d2c7d11.tar.gz autocento-417eddb940ec0b364a11d459e27d5ae05d2c7d11.zip |
Add Abstract and Process Narrative
Diffstat (limited to 'process.txt')
-rw-r--r-- | process.txt | 53 |
1 files changed, 31 insertions, 22 deletions
diff --git a/process.txt b/process.txt index d048558..080dd0d 100644 --- a/process.txt +++ b/process.txt | |||
@@ -20,43 +20,52 @@ Process steps | |||
20 | ------------- | 20 | ------------- |
21 | 21 | ||
22 | 1. Write poems. | 22 | 1. Write poems. |
23 | 2. Convert to Markdown -- generally easy. | 23 | 2. Convert to Markdown. |
24 | - 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. | 24 | - 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. |
25 | - 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. | 25 | - 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. |
26 | - 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. | 26 | - 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. |
27 | 3. Compile to HTML with Pandoc. | 27 | 3. Compile to HTML with Pandoc. |
28 | - At first, I used this code in the shell to generate my HTML: | 28 | - At first, I used this code in the shell to generate my HTML: |
29 | ```bash | 29 | ```bash |
30 | for file in *.txt; do | 30 | for file in *.txt; do |
31 | pandoc "$file" -f markdown -t html5 --template=template.html -o "${file%txt}html" | 31 | pandoc "$file" -f markdown -t html5 \ |
32 | done | 32 | --template=template.html -o "${file%txt}html" |
33 | ``` | 33 | done |
34 | ``` | ||
34 | but this proved tedious with time. | 35 | but this proved tedious with time. |
35 | - After a lot of experimenting with different scripting languages, I finally realized that [`GNU make`][] would fit this task perfectly. | 36 | - After a lot of experimenting with different scripting languages, I finally realized that [`GNU make`][] would fit this task perfectly. |
36 | - You can see my makefile [here][] | 37 | - You can see my makefile [here][makefile]---it's kind of a mess, but it does the job. See below for a more detailed explanation of the makefile. |
37 | |||
38 | 4. Style the pages with CSS. | 38 | 4. Style the pages with CSS. |
39 | 4. Use Github to put them online. | 39 | - I use a pretty basic style for _Autocento_. You can see my stylesheet [here][stylesheet]. |
40 | - `git` has been used throughout to keep track of changes. | 40 | 4. Use [Github][] to put them online. |
41 | - It's a Version Control System -- usually used for code but adapted | 41 | - Github uses `git` under the hood---a Version Control System developed for keeping track of large code projects. |
42 | for creative writing. | 42 | - My workflow with `git` looks like this: |
43 | 5. Write Makefile for ease-of-compilation. | 43 | - Change files in the project directory---revise a poem, change the makefile, add a style, etc. |
44 | - A `makefile` is a collection of instructions to `make` that tells it how | 44 | - (If necessary, re-compile with `make`.) |
45 | to compile a set of files. | 45 | - `git status` tells me which files have changed, which have been added, and if any have been deleted. |
46 | - It's made the other parts of this much easier. | 46 | - `git add -A` adds all the changes to the _staging area_, or I can add individual files, depending on what I want to commit. |
47 | 6. Write _Hapax legomenon_ compiler. | 47 | - `git commit -m "[message]"` commits the changes to git. This means they're "saved"---if I do something I want to revert, I can `git revert` back to a commit and start again. |
48 | 7. Write compiler for backlinks. | 48 | - `git push` pushes the changes to the _remote repository_---in this case, the Github repo that serves <http://autocento.me>. |
49 | 8. (TODO) write compiler for Index of first lines and common titles. | 49 | - Lather, rinse, repeat. |
50 | 5. Write Makefile to extend build capabilities. | ||
51 | - 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. | ||
52 | - I'd like to build a compiler for the [Index of first lines][] and [Index of common titles][] once I have time. | ||
50 | 53 | ||
51 | The beauty of this system | 54 | The beauty of this system |
52 | ------------------------- | 55 | ------------------------- |
53 | 56 | ||
54 | - I can compile these poems into (almost) any format: `pandoc` supports a lot. | 57 | - I can compile these poems into (almost) any format: `pandoc` supports a lot. |
55 | - Once I complete the above process once, I can focus on revising my poems. | 58 | - Once I complete the above process once, I can focus on revising my poems. |
56 | - These poems are online for anyone to see and work off of. | 59 | - These poems are online for anyone to see and use for their own work. |
57 | - Something something intertextuality. | ||
58 | 60 | ||
59 | [John Gruber]: http://daringfireball.net/projects/markdown/ | 61 | [John Gruber]: http://daringfireball.net/projects/markdown/ |
60 | [extended Markdown syntax]: http://johnmacfarlane.net/pandoc/README.html#pandocs-markdown | 62 | [extended Markdown syntax]: http://johnmacfarlane.net/pandoc/README.html#pandocs-markdown |
61 | [`GNU make`]: https://www.gnu.org/software/make/manual/make.html | 63 | [`GNU make`]: https://www.gnu.org/software/make/manual/make.html |
62 | [here]: | 64 | [makefile]: https://github.com/duckwork/autocento/blob/gh-pages/makefile |
65 | [stylesheet]: https://github.com/duckwork/autocento/blob/gh-pages/style.css | ||
66 | [Github]: https://github.com | ||
67 | [Hapax legomenon]: hapax.html | ||
68 | [back-link]: makefile | ||
69 | [random link functionality]: trunk/lozenge.js | ||
70 | [Index of first lines]: first-lines.html | ||
71 | [Index of common titles]: common-titles.html | ||