Friday, May 1, 2015

An easy way to create a well formatted Journal/Diary

Ever wanted to start journaling your journey through life in a journal or diary?

I decided it would be a good idea, but had the following 2 issues:
1) writing it out by hand is a pain - keyboards are how I interact with the written world.
2) just jotting stuff down in a text or word file looks shabby.

So I fixed those 2 problems. I made a LaTeX document for which you can add an entry by simply typing make newEntry - then start recording your story from that day. Then whenever you feel that you want to read everything in a pretty format, type make and a well formatted PDF pops out that you can read through at your leisure.

Here's a fictional example with a couple of entries so you can see the format:JournalExample.pdf

You'll note that the journal is divided into chapters. These can be set to whatever you like - an easy way to divide your life into successive stages for easy review in the future.

If you like the format, I have created a script which will generate everything needed to make your own Journal. Here's a link to the script:journalScript.sh

Usage instructions (You need BASH. Linux [yes] and Mac [presumably]. Windows would take some work to set up):
1) Download journalScript.sh
2) move journalScript.sh to a new directory (not necessary, but its going to generate a lot of extra files which you probably don't want cluttering up anywhere else)
3) open a terminal, navigate to the directory, and run chmod +x journalScript.sh
It will prompt you for a title and your name.
Everything should now be set up - the README has instructions at this point.
4) type make newStage into the terminal - it will prompt you for a stage name (chapter title)
5) type make newEntry into the terminal - it will spit out a file location where you can record today's experiences - just open it with your favorite text editor and look for the '%start here' lines
6) repeat steps 4 and 5 (step 4 should be used rarely, whereas step 5 is ~daily) until you die

To view your journal:
1) navigate to the directory and type make into your terminal
2) open the generated PDF in your favorite PDF viewer

To get fancy with what you can include in your journal, check out the LaTeX Wikibook.

LaTeX Newbies: The important thing to note is that a new paragraph is only started if you leave a blank line. All lines between blank lines will be formatted into a single paragraph. So be feel to start all your sentences on consecutive lines, as it won't look weird in the final document.

Please note that this assumes that your environment has LaTeX and GNUMake installed on it.Most Linux distros come with GNUMake, and LaTeX should be easy to find in your package repository. For Mac - you're on your own. But it shouldn't be too difficult.
Note: running this and just adding some empty stages and entries should provide a quick example of one way to organize a large multifile LaTeX document.