<spanclass="tomenu"><ahref="#navigation">↓ Menu ↓</a></span>
<spanclass="flush"></span>
</div>
</div>
<divid="titre">
<h1>Get my blog engine</h1>
</div>
<divclass="flush"></div>
<divid="afterheader"class="article">
<divclass="corps">
<p>I published a <em>light</em> version of my blog engine based on <ahref="http://nanoc.stoneship.org">nanoc</a> yesterday night. By <em>light</em>, I mean a lighter, more portable CSS (without round border). You can get it on <ahref="http://github.com/yogsototh/nanoc3_blog">github.com</a>.</p>
<p>Now your website reside into the <code>output</code> directory.</p>
<hr/>
<h1id="documentation">Documentation</h1>
<h2id="useful-things-to-know">Useful things to know</h2>
<h3id="multi-language">Multi-language</h3>
<p>All files in <code>multi</code> are processed and copied in the <code>content</code> directory. For each file in multi, each line starting by ‘<code>fr:</code>’ are copied (without the <code>fr:</code> into the <code>content/html/fr/</code> tree, but not into the <code>content/html/en</code> tree. File not starting by <code>fr:</code> or <code>en:</code> are copied in each destinations.</p>
<p>If you want to add another language, you’ll have to modify <code>tasks/config</code>, and <code>config.yaml</code>, create a <code>content/html/xx</code> where <code>xx</code> is the language code.</p>
<h3id="edition-rendering">Edition & Rendering</h3>
<p>You can separate multi content div using the: <code>n``ewcorps</code> directive (see examples).</p>
<p>You can create div using <code>b``egindiv(classname)</code>, <code>e``nddiv</code>. (See some existing blog entries for example). Use the class <code>intro</code> for the abstract part.</p>
<p>You can create nice description table using <code><``desc></code> (See source code for example).</p>
<h4id="typography">Typography</h4>
<p>In French all ‘:’, ‘;’, ‘!’ and ‘?’ are preceded automatically by <code>&nbsp</code>. This enable not to have a line starting by a single special character.</p>
<p>You can use small caps using <code><sc></code> tags.</p>
<ul>
<li><code>(c``)</code> is replaced by (c).</li>
<li><code>(r``)</code> is replaced by (r).</li>
<li><code><``-</code> is replaced by <-.</li>
<li><code>-``></code> is replaced by ->.</li>
</ul>
<h4id="source-code">source code</h4>
<p>To write source code you should use the following format:</p>
<p>~~~~~~ {.html} ~~~~~~ {.ruby} The code </cOde> ~~~~~~</p>
<p>The <code>file</code> attribute is not required.</p>
<h3id="blog">blog</h3>
<p>If you want to make really long blog post, you can separate them into many files. To accomplish that, you simply have to make your files like:</p>
<preclass="twilight">
multi/blog/2010-06-01-the-title.md
multi/blog/2010-06-01-the-title/second_part.md
multi/blog/2010-06-01-the-title/third_part.md
</pre>
<h3id="mobileme">mobileme</h3>
<p>All files are intended to be generated into the <code>output/Scratch</code> directory. This was made like that to work nicely with iWeb organisation of websites.</p>
<h3id="menu">menu</h3>
<p>The order of post is done using the <code>menupriority</code> meta-data in the header of the files.</p>
<p>You can hide some file from the menu by setting: <code>isHidden: true</code> in the header.</p>
<h2id="details">Details</h2>
<p>To know more about this blog engine, you should look at <ahref="http://nanoc.stoneship.org">nanoc</a> project.</p>
<p>Then look at the files inside your project:</p>
<p><desc> README.md : readme for the project (used by github) :: latest.md : symbolic link to the last blog entry :: multi/ : Directory containing multi-language articles :: tasks/ : scripts for website live :: config.yaml : global configuration file :: Rules : generation rules :: content/ : content files processed by nanoc :: layouts/ : erb templates :: lib/ : ruby libraries used to process files :: output/ : website :: Rakefile : not mandatory for this blog :: </desc></p>