My Introducing Everything
post was the first written in and published through my
In fact, right after I wrote the post, I made the initial commit to my everything-wordpress repo. I was able to publish that blog post to Wordpress right from the command line! The code’s not pretty and the functionality is lacking, but I can improve that. Most importantly, it worked!
The Lone Crow was also stored in everything and published from the command line. I made some more edits to everything-wordpress, and had to delete the post several times (I can’t update an existing post yet), so I could try publishing again, but, hey, that worked too. And posting Thoughts on Manual Chores was smooth, thanks to those changes.
I’ve recently read an article on how we face a ‘digital Dark Age’. Our data locked in files or tied to programs that no longer work. Hey, that’s precisely what I want to prevent by moving my creative output to a single, central location which I have complete control over. It’s a major motivation for using simple text files. I’ll be curious to see what other solutions people come up with for this problem. Their ‘digital vellum’ is overkill for my needs here, but it’s certainly an interesting concept.
Over the past few weeks, I’ve been using
everything to store some new
writings, including this one.
Some thoughts so far:
- It’s exciting! I feel a greater urge to write, since it helps me flesh out this system and workflow.
- I’d like to codify the “rules” of this system into something like a “spec”.
Getting some use with the system is helping with that. At this time, the rules
are pretty simple. It’s a goal to keep it simple as I go forward.
- A git repository where you have nested folders
- Folders which are leaves on the tree must have at least one file, but could have more.
index.mdis the required file. It’s the content, written in Markdown.
index.yamlis an optional file. It’s the metadata, written in Markdown.
- I want to decouple my writings from the act of publishing. Right now, I
include some metadata in
everythingthat belongs outside it, since it’s related to publishing the post to Wordpress. Decoupling will help keep the writings focused, and make the entire system more extensible.
- I want to update a post from the command line. This will be made easier by
decoupling publishing from the
everythingrepo, so I can keep track of whether posts have been published before. All the relevant Wordpress metadata will be in a single, logical place then. This is one of the next things I’ll work on.
- I need to decide whether I want to add some binary files to the repo. Right now, if I have, say, an image or two for a specific blog post, I can add them, since they won’t take up much space and would be unlikely to change. I wouldn’t store an entire vacation’s worth of photos since that would drastically inflate the size of the repo. But having images related to posts actually be in the repository would be helpful. That way I could mention them within the post, and have them show on my blog too. I’ll also have to build support for posting images to Wordpress, so that will come in the near future too.
- I want a local way to preview what my markdown content will look like as HTML. I like writing the post in vim, but it’d be nice to proof-read it in the browser. This is a perfect opportunity for another integration point; one which should also be straight-forward to create! Update: I just installed vim-instant-markdown and that is working like a charm. I can see some things it’d be nice to improve upon, but it’s great for proof-reading this piece! I love open source software!
- It’d be nice to have a way to enforce some standards. The
index.yamlfiles under a directory. Starting the markdown file with a header that is also the piece’s title, followed by an empty line, followed by the content of the post. Maybe a command to generate the skeleton for a post is a start. Could some git hooks be used to validate that it’s a valid everything writing? Another cool integration point.
We’ll see how it shakes out as I use it more and as I import other writings into
it. I do have to say: I’m excited about