X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=README.md;h=dadce20797258e5265483636324640963430f53f;hb=85e5062efbe34dc0399aca91c85a93a25b1c3a37;hp=22bd080e2e5f749762dd9bb1ab06837750111f1b;hpb=8dda4023a5e675351ea43924f8e477af05eadccc;p=ardour-manual-diverged diff --git a/README.md b/README.md index 22bd080..dadce20 100644 --- a/README.md +++ b/README.md @@ -4,39 +4,14 @@ This is the project that generates the static ardour manual website available at [manual.ardour.org](http://manual.ardour.org). -The site is built using ruby (I use 1.9[.3]) and [Jekyll](https://github.com/mojombo/jekyll) (a ruby gem). You should be able to just install ruby and then `gem install jekyll` to get it up and running. - -`import.rb` (which gets the content from drupal) requires the `nokogiri` gem, but there are no other dependencies for the jekyll part (just the things required by jekyll itself). +The site is built using ruby (I use 1.9[.3]) and [liquid](http://liquidmarkup.org/), a ruby gem. ### Get the code - git clone + git clone ardour-manual cd ardour-manual - -### Run it locally - -This will generate the final html and start a local webserver. - - jekyll --server - -It should then be available at [localhost:4000](http://localhost:4000) - -### Import content from drupal - -This will pull the content from the [ardour drupal manual](http://ardour.org/manual/ardour3) and turn it into the format used in `_manual/`. You shouldn't really need to run this. - - ruby import.rb - -It's quite slow… :) - - -### Upload static site to live server -Once the content has been built (using jekyll) you can put it live with this (assuming your ssh key has been put on the server): - - ./upload.sh - -## Strucuture of the content +## Structure of the content There are 2 different types of content: @@ -55,7 +30,7 @@ The _raw_ content is in `_manual/` directory and has a naming convention as foll ^ ^ ^ | | | | | extension is removed later - | | + | | | ends up as part of URL | only used for ordering @@ -104,9 +79,9 @@ All files to be processed should also have a special header at the top too: ---

My Actual Content

- + The `title` field will end up as an `h1` in the right panel. The `menu_title` is what is used in the menu tree on the left (if not preset it will default to using `title`). - + ### `.html` files These are almost normal html, but extended with [Liquid templates](http://liquidmarkup.org/). There are a couple of special tags created for this project. @@ -114,9 +89,53 @@ These are almost normal html, but extended with [Liquid templates](http://liquid - `{% tree %}` is what shows the manual structure in the left column - `{% children %}` shows the immediate list of children for a page -## manual.rb plugin -Much of the functionality comes from `_plugins/manual.rb` - it takes the _manual format_ (contained in `_manual/`) and mushes it around a bit into a tmp directory before letting jekyll do it's normal thing. It's all hooked into the jekyll command so no special actions are required. +## More Advanced Stuff + +You probably don't want or need to do any of this, but here are some +notes just in case you decide to anyway. + +### Run it locally + +You may want the manual available on a machine that doesn't have constant +internet access. You will need `git`, `ruby`, and the ruby gem `liquid` installed. + +1. Download code and build manual + + ``` + git clone ardour-manual + cd ardour-manual + cp -r source _site + ruby ./build.rb + chmod -R a+rx _site + ``` + +2. open `ardour-manual/_site/index.html` in your favorite web browser + + If this page doesn't open and function correctly, follow these optional steps to serve up the page with nginx. + +3. Install [nginx](http://wiki.nginx.org/Install) +4. Configure nginx server block in `/etc/nginx/sites-available/default` + + ``` + server { + listen 80; + server_name localhost; + + root ...path_to_.../ardour-manual/_site; + index index.html; + } + ``` + +5. Restart nginx server + + service nginx restart + +6. The manual will now be available at http://localhost + +### manual.rb plugin + +Much of the functionality comes from `_plugins/manual.rb` - it takes the _manual format_ (contained in `_manual/`) and mushes it around a bit into a tmp directory. This is to enable the directory tree to be understood, child page lists to be constructed, clean URLs, and the correct ordering of pages maintained. @@ -126,8 +145,8 @@ To allow the clean URLs (no `.html` extension) _and_ to support simple hosting ( E.g. `02_main/05_more/02_blah.html` after all processing is complete would end up in `_site/main/more/blah/index.html`. -The page format contained in the `_manual/` directory is different to the final rendered output (see special `_manual` content above) to make it simple to create content (you don't need to think about the `index.html` files). +The page format contained in the `_manual/` directory is different to the final rendered output (see special `_manual` content above) to make it simple to create content (you don't need to think about the `index.html` files). + - \ No newline at end of file