You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

166 lines
10 KiB

<!DOCTYPE html>
<html lang="en">
<meta charset="utf-8">
<title>YBlog - Get my blog engine</title>
<meta name="keywords" content="blog, nanoc" />
<link rel="shortcut icon" type="image/x-icon" href="../../../../Scratch/img/favicon.ico" />
<link rel="stylesheet" type="text/css" href="/css/y.css" />
<link rel="stylesheet" type="text/css" href="/css/legacy.css" />
<link rel="alternate" type="application/rss+xml" title="RSS" href="/rss.xml" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="apple-touch-icon" href="../../../../Scratch/img/about/FlatAvatar@2x.png" />
<!--[if lt IE 9]>
<script src=""></script>
<!-- IndieAuth -->
<link href="" rel="me">
<link href="" rel="me">
<link href="" rel="me">
<link rel="pgpkey" href="../../../../pubkey.txt">
<body lang="en" class="article">
<div id="content">
<div id="header">
<div id="choix">
<span id="choixlang">
<a href="../../../../Scratch/fr/blog/2010-06-15-Get-my-blog-engine/">French</a>
<span class="tomenu"><a href="#navigation">↓ Menu ↓</a></span>
<span class="flush"></span>
<div id="titre">
<h1>Get my blog engine</h1>
<div class="flush"></div>
<div id="afterheader" class="article">
<div class="corps">
<p>I published a <em>light</em> version of my blog engine based on <a href="">nanoc</a> yesterday night. By <em>light</em>, I mean a lighter, more portable CSS (without round border). You can get it on <a href=""></a>.</p>
<p>What this system provide?</p>
<li>All <a href="">nanoc</a> advantages,</li>
<li>Easy multi-language handling,</li>
<li>Syntax Coloration for most languages,</li>
<li><a href="">intenseDebate</a> comments integration (asynchronous) ;</li>
<li>Portable with and without javascript, XHTML Strict 1.0 / CSS3,</li>
<li>Write in markdown format (no HTML editing needed),</li>
<li>Typographic ameliorations (no ‘:’ starting a line in French for example),</li>
<li><a href="">Graphviz</a> graph generation integration.</li>
<hr />
<h1 id="main-documentation-page">Main Documentation Page</h1>
<h1 id="use-it-now">Use It NOW!</h1>
<p>Once installed (follow the instructions).</p>
<div class="sourceCode" id="cb1"><pre class="sourceCode zsh"><code class="sourceCode zsh"><a class="sourceLine" id="cb1-1" title="1">$ <span class="kw">cd</span> /root/of/nanoc3_blog</a>
<a class="sourceLine" id="cb1-2" title="2">$ ./task/new_blog_entry Title of the blog</a>
<a class="sourceLine" id="cb1-3" title="3">$ vi</a>
<a class="sourceLine" id="cb1-4" title="4">$ ./task/recompile</a></code></pre></div>
<p>Now your website reside into the <code>output</code> directory.</p>
<hr />
<h1 id="documentation">Documentation</h1>
<h2 id="useful-things-to-know">Useful things to know</h2>
<h3 id="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>
<h3 id="edition-rendering">Edition &amp; Rendering</h3>
<h4 id="additional-keywords">additional keywords</h4>
<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>&lt;``desc&gt;</code> (See source code for example).</p>
<h4 id="typography">Typography</h4>
<p>In French all ‘:’, ‘;’, ‘!’ and ‘?’ are preceded automatically by <code>&amp;nbsp</code>. This enable not to have a line starting by a single special character.</p>
<p>You can use small caps using <code>&lt;sc&gt;</code> tags.</p>
<li><code>(c``)</code> is replaced by (c).</li>
<li><code>(r``)</code> is replaced by (r).</li>
<li><code>&lt;``-</code> is replaced by &lt;-.</li>
<li><code>-``&gt;</code> is replaced by -&gt;.</li>
<h4 id="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>
<h3 id="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>
<pre class="twilight">
<h3 id="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>
<h3 id="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>
<h2 id="details">Details</h2>
<p>To know more about this blog engine, you should look at <a href="">nanoc</a> project.</p>
<p>Then look at the files inside your project:</p>
<p><desc> : readme for the project (used by github) :: : 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>
<div id="afterarticle">
<div id="social">
<a href="/rss.xml" target="_blank" rel="noopener noreferrer nofollow" class="social">RSS</a>
<a href="" target="_blank" rel="noopener noreferrer nofollow" class="social">Tweet</a>
<a href="" target="_blank" rel="noopener noreferrer nofollow" class="social">FB</a>
<br />
<a class="message" href="../../../../Scratch/en/blog/Social-link-the-right-way/">These social sharing links preserve your privacy</a>
<div id="navigation">
<a href="../../../../">Home</a>
<span class="sep">¦</span>
<a href="../../../../Scratch/en/blog">Blog</a>
<span class="sep">¦</span>
<a href="../../../../Scratch/en/softwares">Softwares</a>
<span class="sep">¦</span>
<a href="../../../../Scratch/en/about">About</a>
<div id="totop"><a href="#header">↑ Top ↑</a></div>
<div id="bottom">
Published on 2010-06-15
<a href="">Follow @yogsototh</a>
<a rel="license" href="">Yann Esposito©</a>
Done with
<a href="" target="_blank" rel="noopener noreferrer nofollow"><strike>Vim</strike></a>
<a href="" target="_blank" rel="noopener noreferrer nofollow">spacemacs</a>
<span class="pala">&amp;</span>
<a href="" target="_blank" rel="noopener noreferrer nofollow"><strike>nanoc</strike></a>
<a href="" target="_blank" rel="noopener noreferrer nofollow">Hakyll</a>
<hr />
<div style="max-width: 100%">
<a href="">
<img src="../../../../Scratch/img/ada-logo.png" class="simple" style="height: 16px;
border-radius: 50%;
display:inline-block;" />
<code style="display:inline-block;
text-align: left;
vertical-align: top;
max-width: 85%;">