Thanks to visit codestin.com
Credit goes to github.com

Skip to content

sJohnsonStoever/designNotebook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Design Notebook

By Samuel Johnson Stoever.
Screenshot of output with the stock set of example entries can be found in 'screenshot.png'.

A (very) simple blog-style static html 'notebook' generator with layout and design adopted from the bbv1 Wordpress theme by Aaron Adams, as used by the MIT Disobedience Project webpage.

The project consists of a pair of a very simple shell scripts, and a CSS style sheet. Notebook 'entries' are stored as markdown documents named so that the shell automatically orders them in chronological order as to avoid doing sorting within the script itself.

I'm not sure if the shell scripts are POSIX-compliant, though they have been tested (and work) both on OS X and Ubuntu Linux.

The only dependency normally not included in vanilla flavors of the aforementioned unix-like distributions is a markdown parser -- I use peg-multimarkdown by the marvelous Penney Fletcher. In fact, this project started out because Pelican, a static blog generator I used to use for my 'notebooks' does not support multimarkdown syntax, that and pelican has a bunch of dependencies that i didn't want to bother installing onto my girlfriend's laptop that I borrow from time to time.

Usage

To generate the notebook (example entries are provided) simply navigate to the base directory for the project and run publish.sh.

In order to make the notebook your own, simply delete all the entries in the 'entries' directory, and add a new entry by running 'newEntry.sh'. A new file will be created in the 'entries' directory using specific conventions.

Remember to leave two lines of whitespace after the last markdown header (e.g., Date: 2012-11-06 23:17:21) and the body of your entry. This condition will probably be removed as this software matures.

Also, remember to not add any extra markdown headers, or to remove any, even if you don't use them (e.g., the tags header).

Customization

The first task would be to customize the files in the 'site' directory, each one is resposible for text rendered in different parts of the page. Each of these can contain markdown syntax.

  • head1.md - The larger, top-most text in the header
  • head2.md - The smaller, bottom-most text in the header.
  • blogLinks.md - The links that are rendered in the leftPane, underneath the links for the in-document links for the notebook entries.
  • credit.md - The text that is rendered at the very bottom of the page.

The newEntry.sh script contains the variable editor (default is emacs) which is the editor that opens up the notebook entry once is has been generated.

The 'publish.sh' script contains the following variables:

  • ouputpath: where the html files generated by the software should be stored, default is 'output', so a sub-directory the project directory itself.
  • mdparser: the default markdown parser to use, default is multimarkdown.

Both scripts contain the variable dnbpath which should be used to set the path to the package if you'll be calling the scripts from outside the project directory. I recommend to leave the default value of '.', and to change directories within the shell alias, functions, or scripts that you'll use to call the scripts.

About

A (very) light static html notebook/blog generator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages