300 lines
No EOL
14 KiB
HTML
300 lines
No EOL
14 KiB
HTML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
|
|
|
|
<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="/Scratch/assets/css/main.css" />
|
|
<link rel="stylesheet" type="text/css" href="/Scratch/css/twilight.css" />
|
|
<link rel="stylesheet" type="text/css" href="/Scratch/css/idc.css" />
|
|
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://feeds.feedburner.com/yannespositocomen"/>
|
|
|
|
<link rel="alternate" lang="fr" xml:lang="fr" title="Récupérez mon système de blog" type="text/html" hreflang="fr" href="/Scratch/fr/blog/2010-06-15-Get-my-blog-engine/" />
|
|
<link rel="alternate" lang="en" xml:lang="en" title="Get my blog engine" type="text/html" hreflang="en" href="/Scratch/en/blog/2010-06-15-Get-my-blog-engine/" />
|
|
<script type="text/javascript" src="/Scratch/js/jquery-1.3.1.min.js"></script>
|
|
<script type="text/javascript" src="/Scratch/js/jquery.cookie.js"></script>
|
|
<script type="text/javascript" src="/Scratch/js/index.js"></script>
|
|
|
|
<title>Get my blog engine</title>
|
|
</head>
|
|
<body lang="en">
|
|
<script type="text/javascript">// <![CDATA[
|
|
document.write('<div id="blackpage"><img src="/Scratch/img/loading.gif" alt="loading..."/></div>');
|
|
// ]]>
|
|
</script>
|
|
|
|
<div id="content">
|
|
<div id="choix">
|
|
<div class="return"><a href="#entete">↓ Menu ↓</a></div>
|
|
<div id="choixlang">
|
|
<a href="/Scratch/fr/blog/2010-06-15-Get-my-blog-engine/" onclick="setLanguage('fr')">Version Française</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="titre">
|
|
<h1>
|
|
Get my blog engine
|
|
</h1>
|
|
|
|
</div>
|
|
|
|
<div class="flush"></div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="flush"></div>
|
|
<div id="afterheader">
|
|
<div class="corps">
|
|
<p>I published a <em>light</em> version of my blog engine based on <a href="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 <a href="http://github.com/yogsototh/nanoc3_blog">github.com</a>.</p>
|
|
|
|
<p>What this system provide?</p>
|
|
|
|
<ul>
|
|
<li>All <a href="http://nanoc.stoneship.org">nanoc</a> advantages,</li>
|
|
<li>Easy multi-language handling,</li>
|
|
<li>Syntax Coloration for most languages,</li>
|
|
<li><a href="http://intensedebate.org">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="http://graphviz.org">Graphviz</a> graph generation integration.</li>
|
|
</ul>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="corps">
|
|
|
|
|
|
<h1 class="first" id="main-documentation-page">Main Documentation Page</h1>
|
|
|
|
<h1 id="use-it-now">Use It NOW!</h1>
|
|
|
|
<p>Once installed (follow the README.md instructions).</p>
|
|
|
|
<pre class="twilight">
|
|
$ cd /root/of/nanoc3_blog
|
|
$ ./task/new_blog_entry Title of the blog
|
|
$ vi latest.md
|
|
$ ./task/recompile
|
|
</pre>
|
|
|
|
<p>Now your website reside into the <code>output</code> directory.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="corps">
|
|
|
|
|
|
<h1 class="first" 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 & Rendering</h3>
|
|
|
|
<h4 id="additional-keywords">additional keywords</h4>
|
|
|
|
<p>You can separate multi content div using the: <code>n</code><code>ewcorps</code> directive (see examples).</p>
|
|
|
|
<p>You can create div using <code>b</code><code>egindiv(classname)</code>, <code>e</code><code>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><</code><code>desc></code> (See source code for example).</p>
|
|
|
|
<h4 id="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><code>)</code> is replaced by <small>©</small>.</li>
|
|
<li><code>(r</code><code>)</code> is replaced by <small>®</small>.</li>
|
|
<li><code><</code><code>-</code> is replaced by ←.</li>
|
|
<li><code>-</code><code>></code> is replaced by →.</li>
|
|
</ul>
|
|
|
|
<h4 id="source-code">source code</h4>
|
|
|
|
<p>To write source code you should use the following format:</p>
|
|
|
|
<pre class="twilight">
|
|
<span class="MetaTagInline"><span class="MetaTagInline"><</span><span class="MetaTagInline">code</span> <span class="MetaTagInline">class</span>=<span class="String"><span class="String">"</span>ruby<span class="String">"</span></span> <span class="MetaTagInline">file</span>=<span class="String"><span class="String">"</span>filename.rb<span class="String">"</span></span><span class="MetaTagInline">></span></span>
|
|
The code
|
|
<span class="MetaTagInline"><span class="MetaTagInline"></</span><span class="MetaTagInline">cOde</span><span class="MetaTagInline">></span></span>
|
|
</pre>
|
|
|
|
<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">
|
|
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>
|
|
|
|
<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="http://nanoc.stoneship.org">nanoc</a> project.</p>
|
|
|
|
<p>Then look at the files inside your project:</p>
|
|
<div><table class="description" summary="no description"><tr class="assombris20"><td class="definitionCell">
|
|
README.md </td><td class="valueCell"> readme for the project (used by github) </td></tr><tr class="assombris10"><td class="definitionCell">
|
|
latest.md </td><td class="valueCell"> symbolic link to the last blog entry </td></tr><tr class="assombris20"><td class="definitionCell">
|
|
multi/ </td><td class="valueCell"> Directory containing multi-language articles </td></tr><tr class="assombris10"><td class="definitionCell">
|
|
tasks/ </td><td class="valueCell"> scripts for website live </td></tr><tr class="assombris20"><td class="definitionCell">
|
|
config.yaml </td><td class="valueCell"> global configuration file </td></tr><tr class="assombris10"><td class="definitionCell">
|
|
Rules </td><td class="valueCell"> generation rules </td></tr><tr class="assombris20"><td class="definitionCell">
|
|
content/ </td><td class="valueCell"> content files processed by nanoc </td></tr><tr class="assombris10"><td class="definitionCell">
|
|
layouts/ </td><td class="valueCell"> erb templates </td></tr><tr class="assombris20"><td class="definitionCell">
|
|
lib/ </td><td class="valueCell"> ruby libraries used to process files </td></tr><tr class="assombris10"><td class="definitionCell">
|
|
output/ </td><td class="valueCell"> website </td></tr><tr class="assombris20"><td class="definitionCell">
|
|
Rakefile </td><td class="valueCell"> not mandatory for this blog </td></tr>
|
|
</table></div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div id="choixrss">
|
|
<a id="rss" href="http://feeds.feedburner.com/yannespositocomen">
|
|
Subscribe
|
|
</a>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){
|
|
$('#comment').hide();
|
|
$('#clickcomment').click(showComments);
|
|
});
|
|
function showComments() {
|
|
$('#comment').show();
|
|
$('#clickcomment').fadeOut();
|
|
}
|
|
document.write('<div id="clickcomment">Comments</div>');
|
|
</script>
|
|
<div class="flush"></div>
|
|
<div class="corps" id="comment">
|
|
<h2 class="first">comments</h2>
|
|
<noscript>
|
|
Vous devez activer javascript pour commenter.
|
|
</noscript>
|
|
|
|
<script type="text/javascript">
|
|
var idcomments_acct = 'a307f0044511ff1b5cfca573fc0a52e7';
|
|
var idcomments_post_id = '/Scratch/en/blog/2010-06-15-Get-my-blog-engine/';
|
|
var idcomments_post_url = 'http://yannesposito.com/Scratch/en/blog/2010-06-15-Get-my-blog-engine/';
|
|
</script>
|
|
<span id="IDCommentsPostTitle" style="display:none"></span>
|
|
<script type='text/javascript' src='/Scratch/js/genericCommentWrapperV2.js'></script>
|
|
|
|
</div>
|
|
|
|
<div id="entete" class="corps_spaced">
|
|
<div id="liens">
|
|
<ul><li><a href="/Scratch/en/">Homepage</a></li>
|
|
<li><a href="/Scratch/en/blog/">Blog</a></li>
|
|
<li><a href="/Scratch/en/about/">About</a></li>
|
|
<li><a href="/Scratch/en/contact/">Contact</a></li></ul>
|
|
</div>
|
|
<div class="flush"></div>
|
|
<hr/>
|
|
<div id="next_before_articles">
|
|
<div id="previous_articles">
|
|
previous entries
|
|
|
|
<div class="previous_article">
|
|
<a href="/Scratch/en/blog/2010-06-14-multi-language-choices/">← multi language choices</a>
|
|
</div>
|
|
|
|
|
|
<div class="previous_article">
|
|
<a href="/Scratch/en/blog/2010-05-24-Trees--Pragmatism-and-Formalism/">← Trees; Pragmatism and Formalism</a>
|
|
</div>
|
|
|
|
|
|
<div class="previous_article">
|
|
<a href="/Scratch/en/blog/2010-05-19-How-to-cut-HTML-and-repair-it/">← How to repair a cutted XML?</a>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div id="next_articles">
|
|
next entries
|
|
|
|
<div class="next_article">
|
|
<a href="/Scratch/en/blog/2010-06-17-track-events-with-google-analytics/">Track Events with Google Analytics→ </a>
|
|
</div>
|
|
|
|
|
|
<div class="next_article">
|
|
<a href="/Scratch/en/blog/2010-06-17-hide-yourself-to-analytics/">Hide Yourself to your Analytics→ </a>
|
|
</div>
|
|
|
|
|
|
<div class="next_article">
|
|
<a href="/Scratch/en/blog/2010-06-19-jQuery-popup-the-easy-way/">jQuery popup the easy way→ </a>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<div class="flush"></div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div id="bottom">
|
|
<div>
|
|
<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Copyright ©, Yann Esposito</a>
|
|
</div>
|
|
<div id="lastmod">
|
|
Created: 06/15/2010
|
|
</div>
|
|
<div>
|
|
Entirely done with
|
|
<a href="http://www.vim.org">Vim</a>
|
|
and
|
|
<a href="http://nanoc.stoneship.org">nanoc</a>
|
|
</div>
|
|
<div>
|
|
<a href="/Scratch/en/validation/">Validation</a>
|
|
<a href="http://validator.w3.org/check?uri=referer"> [xhtml] </a>
|
|
.
|
|
<a href="http://jigsaw.w3.org/css-validator/check/referer?profile=css3"> [css] </a>
|
|
.
|
|
<a href="http://validator.w3.org/feed/check.cgi?url=http%3A//yannesposito.com/Scratch/en/blog/feed/feed.xml">[rss]</a>
|
|
</div>
|
|
</div>
|
|
<div class="clear"></div>
|
|
</div>
|
|
</body>
|
|
</html> |