aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorm-r-r <raybaudroigm@gmail.com>2012-04-07 19:36:03 +0200
committerm-r-r <raybaudroigm@gmail.com>2012-04-07 19:36:03 +0200
commit261797ff47d96c47c3364110c100bf64701f7da5 (patch)
tree3242dd2ba40c67387cd5ac646d7831522eaad86b
parenta006f0a70f9e432908d97bd9ecdb37e4b8f5d328 (diff)
downloadpelican-themes-261797ff47d96c47c3364110c100bf64701f7da5.tar.gz
Added the dev-random theme
-rw-r--r--dev-random/LICENSE.txt14
-rw-r--r--dev-random/screenshot.pngbin0 -> 61791 bytes
-rw-r--r--dev-random/static/css/main.css270
-rw-r--r--dev-random/static/css/pygments.css69
-rw-r--r--dev-random/static/img/corner.pngbin0 -> 3629 bytes
-rw-r--r--dev-random/templates/archives.html30
-rw-r--r--dev-random/templates/article.html57
-rw-r--r--dev-random/templates/author.html5
-rw-r--r--dev-random/templates/base.html84
-rw-r--r--dev-random/templates/categories.html14
-rw-r--r--dev-random/templates/category.html5
-rw-r--r--dev-random/templates/index.html64
-rw-r--r--dev-random/templates/page.html10
-rw-r--r--dev-random/templates/tag.html4
-rw-r--r--dev-random/templates/tags.html14
15 files changed, 640 insertions, 0 deletions
diff --git a/dev-random/LICENSE.txt b/dev-random/LICENSE.txt
new file mode 100644
index 0000000..5a8e332
--- /dev/null
+++ b/dev-random/LICENSE.txt
@@ -0,0 +1,14 @@
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+ Version 2, December 2004
+
+ Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
+
+ Everyone is permitted to copy and distribute verbatim or modified
+ copies of this license document, and changing it is allowed as long
+ as the name is changed.
+
+ DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. You just DO WHAT THE FUCK YOU WANT TO.
+
diff --git a/dev-random/screenshot.png b/dev-random/screenshot.png
new file mode 100644
index 0000000..5ce64c4
--- /dev/null
+++ b/dev-random/screenshot.png
Binary files differ
diff --git a/dev-random/static/css/main.css b/dev-random/static/css/main.css
new file mode 100644
index 0000000..29818cb
--- /dev/null
+++ b/dev-random/static/css/main.css
@@ -0,0 +1,270 @@
+@import url("pygments.css");
+
+/******************************************************************************/
+/* General Style */
+/******************************************************************************/
+
+
+article, section,
+header, footer,
+aside, nav {
+ display: block;
+}
+
+html {
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+}
+
+body {
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ min-width: 750px;
+
+ background-color: white;
+ color: #101010;
+
+ font-family: helvetica, arial, freesans, clean, sans-serif;
+ font-size: 95%;
+ line-height: 1.35em;
+ letter-spacing: .1em;
+}
+
+h1, h2, h3,
+h4, h5, h6 {
+ color: #333333;
+
+ font-family: "Georgia", "FreeSerif", serif;
+ font-style: italic;
+ font-weight: bolder;
+}
+
+h1 a, h2 a,
+h3 a, h4 a,
+h5 a, h6 a {
+ color: inherit;
+
+ text-decoration: inherit;
+}
+
+h1 a:hover, h2 a:hover,
+h3 a:hover, h4 a:hover,
+h5 a:hover, h6 a:hover {
+ text-decoration: inherit;
+}
+
+a {
+ color: #2a6a88;
+
+ font-weight: bold;
+ text-decoration: none;
+}
+
+
+a:hover {
+ text-decoration: underline;
+}
+
+
+pre {
+ margin: 1em .5em;
+ padding: .75em;
+ border: 1px solid silver;
+ background: #111111;
+ color: #ffffff;
+
+ font-family: monospace;
+ line-height: 1.15em;
+
+ overflow: auto;
+}
+
+
+/******************************************************************************/
+/* Page Structure */
+/******************************************************************************/
+
+#page-header {
+ width: 60%;
+ margin: 1em auto 1em auto;
+
+ text-align: center;
+}
+
+
+#page-menu {
+ width: 100%;
+ margin: 0 0 2em 0;
+ padding: .2em 0em;
+
+ border-bottom: thin dashed gray;
+
+ text-align: center;
+}
+
+
+#page-content {
+ display: block;
+ width: 75%;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+
+#page-footer {
+ width: 100%;
+ margin-top: 2em;
+
+ border-top: thin dashed gray;
+
+ font-size: .7em;
+ font-weight: lighter;
+}
+
+
+/******************************************************************************/
+/* Specific Styles */
+/******************************************************************************/
+
+
+#page-header h1 {
+ margin: .2em auto .2em auto;
+
+ font-family: Georgia, "Times New Roman", Times, serif;
+ font-size: 2.8em;
+}
+
+#page-menu ul {
+ display: inline;
+ margin: 0;
+ padding: 0;
+
+ list-style-type: none;
+}
+
+#page-menu ul li {
+ display: inline;
+}
+
+#page-menu ul li a {
+ margin: .1em .4em;
+
+ font-size: 0.8em;
+ letter-spacing: 0.2em;
+ text-decoration: none;
+ font-variant: small-caps;
+}
+
+#page-content #page-title {
+ font-size: .9em;
+}
+
+
+.post {
+ clear: both;
+ margin: 1em 0 3em 0;
+}
+
+
+.post .post-header {
+ margin: 0;
+ padding: .1em;
+ font-family: Georgia, "Times New Roman", Times, serif;
+}
+
+
+.post .post-header time {
+ margin: 0;
+ padding: 0;
+
+ font-size: .7em;
+ line-height: 1em;
+ text-transform: uppercase;
+ letter-spacing: .2em;
+ font-weight: lighter;
+}
+
+
+.post .post-header h1 {
+ margin: 0;
+ padding: 0;
+
+ border-bottom: thin dashed silver;
+
+ font-size: 1.5em;
+ font-weight: bolder;
+ font-style: normal;
+ letter-spacing: 0.0em;
+ line-height: 1em;
+}
+
+.post .post-header h1:hover {
+ border-bottom: thin dashed #333;
+}
+
+.post .post-header .meta {
+ font-size: .9em;
+ letter-spacing: 0.2em;
+ text-decoration: none;
+}
+
+
+.post .post-content {
+ clear: both;
+ margin: 0;
+ padding: .5em .1em;
+}
+
+
+.post .post-footer {
+ clear: both;
+ margin: 0;
+ padding: .1em;
+
+ font-family: Georgia, "Times New Roman", Times, serif;
+}
+
+
+.post .post-footer .readmore {
+ font-size: 0.8em;
+ letter-spacing: 0.2em;
+ text-decoration: none;
+ font-variant: small-caps;
+}
+
+
+#page-footer p {
+ display: block;
+ width: 60%;
+
+ text-align: center;
+ margin-left: auto;
+ margin-right: auto;
+}
+
+
+
+/******************************************************************************/
+/* Misc */
+/******************************************************************************/
+
+#github-link {
+ display: block;
+ position: absolute;
+ top: 0;
+ left: 0;
+ width: 50px;
+ height: 100px;
+ background-image: url("../img/corner.png");
+ margin: 0;
+ border: none;
+ text-decoration: none;
+ color: transparent;
+ font-size: 0px;
+ text-decoration: none;
+}
+
diff --git a/dev-random/static/css/pygments.css b/dev-random/static/css/pygments.css
new file mode 100644
index 0000000..046ceca
--- /dev/null
+++ b/dev-random/static/css/pygments.css
@@ -0,0 +1,69 @@
+pre .hll { background-color: #333333 }
+pre .c { color: #008800; font-style: italic; background-color: #0f140f } /* Comment */
+pre .err { color: #ffffff } /* Error */
+pre .g { color: #ffffff } /* Generic */
+pre .k { color: #fb660a; font-weight: bold } /* Keyword */
+pre .l { color: #ffffff } /* Literal */
+pre .n { color: #ffffff } /* Name */
+pre .o { color: #ffffff } /* Operator */
+pre .x { color: #ffffff } /* Other */
+pre .p { color: #ffffff } /* Punctuation */
+pre .cm { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Multiline */
+pre .cp { color: #ff0007; font-weight: bold; font-style: italic; background-color: #0f140f } /* Comment.Preproc */
+pre .c1 { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Single */
+pre .cs { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Special */
+pre .gd { color: #ffffff } /* Generic.Deleted */
+pre .ge { color: #ffffff } /* Generic.Emph */
+pre .gr { color: #ffffff } /* Generic.Error */
+pre .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */
+pre .gi { color: #ffffff } /* Generic.Inserted */
+pre .go { color: #aaaaaa; } /* Generic.Output */
+pre .gp { color: #FFA500; } /* Generic.Prompt */
+pre .gs { color: #ffffff } /* Generic.Strong */
+pre .gu { color: #ffffff; font-weight: bold } /* Generic.Subheading */
+pre .gt { color: #ffffff } /* Generic.Traceback */
+pre .kc { color: #fb660a; font-weight: bold } /* Keyword.Constant */
+pre .kd { color: #fb660a; font-weight: bold } /* Keyword.Declaration */
+pre .kn { color: #fb660a; font-weight: bold } /* Keyword.Namespace */
+pre .kp { color: #fb660a } /* Keyword.Pseudo */
+pre .kr { color: #fb660a; font-weight: bold } /* Keyword.Reserved */
+pre .kt { color: #cdcaa9; font-weight: bold } /* Keyword.Type */
+pre .ld { color: #ffffff } /* Literal.Date */
+pre .m { color: #0086f7; font-weight: bold } /* Literal.Number */
+pre .s { color: #0086d2 } /* Literal.String */
+pre .na { color: #ff0086; font-weight: bold } /* Name.Attribute */
+pre .nb { color: #ffffff } /* Name.Builtin */
+pre .nc { color: #ffffff } /* Name.Class */
+pre .no { color: #0086d2 } /* Name.Constant */
+pre .nd { color: #ffffff } /* Name.Decorator */
+pre .ni { color: #ffffff } /* Name.Entity */
+pre .ne { color: #ffffff } /* Name.Exception */
+pre .nf { color: #ff0086; font-weight: bold } /* Name.Function */
+pre .nl { color: #ffffff } /* Name.Label */
+pre .nn { color: #ffffff } /* Name.Namespace */
+pre .nx { color: #ffffff } /* Name.Other */
+pre .py { color: #ffffff } /* Name.Property */
+pre .nt { color: #fb660a; font-weight: bold } /* Name.Tag */
+pre .nv { color: #fb660a } /* Name.Variable */
+pre .ow { color: #ffffff } /* Operator.Word */
+pre .w { color: #888888 } /* Text.Whitespace */
+pre .mf { color: #0086f7; font-weight: bold } /* Literal.Number.Float */
+pre .mh { color: #0086f7; font-weight: bold } /* Literal.Number.Hex */
+pre .mi { color: #0086f7; font-weight: bold } /* Literal.Number.Integer */
+pre .mo { color: #0086f7; font-weight: bold } /* Literal.Number.Oct */
+pre .sb { color: #0086d2 } /* Literal.String.Backtick */
+pre .sc { color: #0086d2 } /* Literal.String.Char */
+pre .sd { color: #0086d2 } /* Literal.String.Doc */
+pre .s2 { color: #0086d2 } /* Literal.String.Double */
+pre .se { color: #0086d2 } /* Literal.String.Escape */
+pre .sh { color: #0086d2 } /* Literal.String.Heredoc */
+pre .si { color: #0086d2 } /* Literal.String.Interpol */
+pre .sx { color: #0086d2 } /* Literal.String.Other */
+pre .sr { color: #0086d2 } /* Literal.String.Regex */
+pre .s1 { color: #0086d2 } /* Literal.String.Single */
+pre .ss { color: #0086d2 } /* Literal.String.Symbol */
+pre .bp { color: #ffffff } /* Name.Builtin.Pseudo */
+pre .vc { color: #fb660a } /* Name.Variable.Class */
+pre .vg { color: #fb660a } /* Name.Variable.Global */
+pre .vi { color: #fb660a } /* Name.Variable.Instance */
+pre .il { color: #0086f7; font-weight: bold } /* Literal.Number.Integer.Long */
diff --git a/dev-random/static/img/corner.png b/dev-random/static/img/corner.png
new file mode 100644
index 0000000..52e8690
--- /dev/null
+++ b/dev-random/static/img/corner.png
Binary files differ
diff --git a/dev-random/templates/archives.html b/dev-random/templates/archives.html
new file mode 100644
index 0000000..998890e
--- /dev/null
+++ b/dev-random/templates/archives.html
@@ -0,0 +1,30 @@
+{% extends "base.html" %}
+
+{% block content_title %}{{ SITENAME }} — Archives{% endblock %}
+
+{%- block content %}
+
+ <dl>
+ {% for article in articles %}
+ {% if loop.first or article.date.strftime('%Y %m') != articles[loop.index0-1].date.strftime('%Y %m') %}
+ <dt>
+ <h2>{{ article.date.strftime('%B %Y') }}</h2>
+ <ul>
+ {% endif %}
+
+ <li>
+ <a rel="bookmark"
+ href="{{ SITEURL }}/{{ article.url }}"
+ title="Lien permanent vers «{{ article.title }}»">
+ {{ article.title }}
+ </a>
+ </li>
+
+ {% if loop.last or article.date.strftime('%Y %m') != articles[loop.index0+1].date.strftime('%Y %m') %}
+ </ul>
+ </dt>
+ {% endif %}
+ {% endfor %}
+ </dl>
+
+{% endblock content -%}
diff --git a/dev-random/templates/article.html b/dev-random/templates/article.html
new file mode 100644
index 0000000..d85c7c5
--- /dev/null
+++ b/dev-random/templates/article.html
@@ -0,0 +1,57 @@
+{% extends "base.html" %}
+
+{% block headers %}
+ {{ super() }}
+ <meta name="author" content="{{ article.author }}" />
+ <meta name="keywords" content="{{ articles.tags|join(' ')}}" />
+{% endblock %}
+
+{% block title %}{{ article.title }} — {{ super() }}{% endblock %}
+
+{%- block content %}
+ <article class="post" id="page-content">
+ <header class="post-header">
+ <time datetime="{{ article.date.isoformat() }}" pubdate="pubdate">
+ {{ article.locale_date }}
+ </time>
+ <h1>
+ <a rel="bookmark"
+ href="{{ SITEURL }}/{{ article.url }}"
+ title="Lien permanent vers «{{ article.title }}»">
+ {{ article.title }}
+ </a>
+ </h1>
+ <div class="meta">
+ Dans «<a href="{{ SITEURL }}/category/{{ article.category }}.html">{{ article.category }}</a>»
+ par <a href="{{ SITEURL }}/author/{{article.author}}.html">{{ article.author}}</a>
+ </div>
+ </header>
+ <div class="post-content">
+ {{ article.content}}
+ </div>
+ <footer class="post-footer">
+ <div class="meta">
+ Posté dans «<a href="{{ SITEURL }}/category/{{ article.category }}.html">{{ article.category }}</a>»
+ par <a href="{{ SITEURL }}/author/{{article.author}}.html">{{ article.author}}</a><br />
+ Mots-clés: {% for tag in article.tags %} #<a href="{{ SITEURL }}/tag/{{ tag }}.html">{{ tag }}</a>{% endfor %}
+ </div>
+ </footer>
+ {% if DISQUS_SITENAME %}
+ <hr />
+ <div id="disqus_thread"></div>
+ <script type="text/javascript">
+ /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
+ var disqus_shortname = '{{ DISQUS_SITENAME }}'; // required: replace example with your forum shortname
+
+ /* * * DON'T EDIT BELOW THIS LINE * * */
+ (function() {
+ var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+ dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+ })();
+ </script>
+ <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
+ <a href="http://disqus.com" class="dsq-brlink">blog comments powered by <span class="logo-disqus">Disqus</span></a>
+ {% endif %}
+ </article>
+{% endblock content -%}
diff --git a/dev-random/templates/author.html b/dev-random/templates/author.html
new file mode 100644
index 0000000..165b74d
--- /dev/null
+++ b/dev-random/templates/author.html
@@ -0,0 +1,5 @@
+{% extends "index.html" %}
+
+{% block title %}{{ SITENAME }} — Articles de {{ author }}{% endblock %}
+
+{% block index_title %}Articles de <i>{{ author }}</i> :{% endblock %}
diff --git a/dev-random/templates/base.html b/dev-random/templates/base.html
new file mode 100644
index 0000000..bbb2fcf
--- /dev/null
+++ b/dev-random/templates/base.html
@@ -0,0 +1,84 @@
+<!DOCTYPE html>
+<html lang="{{ DEFAULT_LANG }}">
+ <head>
+ {% block headers %}
+ <meta charset="utf-8" />
+ <title>{% block title %}{{ SITENAME }}{%endblock%}</title>
+ <link rel="stylesheet" type="text/css" href="{{ SITEURL }}/theme/css/{{ CSS_FILE }}" />
+ <link rel="shortcut icon" type="text/css" href="{{ SITEURL }}/favicon.ico" />
+ <link rel="alternate" type="application/atom+xml"
+ title="{{ SITENAME }} — Flux Atom"
+ href="{{ SITEURL }}/{{ FEED }}" />
+ {% if FEED_RSS %}
+ <link rel ="alternate" type="application/rss+xml"
+ title="{{ SITENAME }} — Flux RSS"
+ href="{{ SITEURL }}/{{ FEED_RSS }}" />
+ {% endif %}
+ <!--[if lte IE 8]><script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
+ {% if GOOGLE_ANALYTICS %}
+ <script type="text/javascript">
+ // Google analytics:
+ var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
+ document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+ function enableGA() {
+ try {
+ var pageTracker = _gat._getTracker("{{ GOOGLE_ANALYTICS }}");
+ pageTracker._trackPageview();
+ _gaq.push(['_setCustomVar',
+ 1, // This custom var is set to slot #1. Required parameter.
+ 'User-Agent',
+ navigator.userAgent
+ ]);
+ console.log('GA loaded');
+ } catch(err) {
+ setTimeout(500,'enableGA()');
+ console.log('Waiting GA ...');
+ }
+ }
+ setTimeout('enableGA()', 200);
+ </script>
+ {% endif %}
+ {% endblock headers %}
+ </head>
+ <body>
+ <!--[if lt IE 7]>
+ <div style="font-size: small; background-color: black; color: white; position: fixed; bottom: 0; left: 0; right: 0;border-bottom: 1px solid gray; padding: 2px 5px;"
+ id="outdated">Il est recommandé d'utiliser un navigateur Web
+ moderne, comme <a href="http://www.mozilla.com/firefox/">Mozilla
+ Firefox</a> ou <a href="http://www.google.com/chrome/">Google
+ Chrome</a> pour voir ce site
+ </div>
+ <![endif]-->
+ <header id="page-header">
+ <h1>
+ <a href="{{ SITEURL }}/index.html">{{ SITENAME }}</a>
+ </h1>
+ </header>
+
+ <nav id="page-menu">
+ <ul>
+ {% for title, link in MENUITEMS %}
+ <li><a href="{{ link|format(SITEURL) }}">{{ title }}</a></li>
+ {% endfor %}
+ {% if DISPLAY_PAGES_ON_MENU %}
+ <li><a href="{{ SITEURL }}/index.html">Accueil</a></li>
+ {% for p in PAGES %}
+ <li {% if p == page %}class="active"{% endif %}><a href="{{ SITEURL }}/{{ p.url|e }}">{{ p.title }}</a></li>
+ {% endfor %}
+ {% else %}
+ {% for cat, null in categories %}
+ <li {% if cat == category %}class="active"{% endif %}><a href="{{ SITEURL }}/{{ cat.url|e }}">{{ cat }}</a></li>
+ {% endfor %}
+ {% endif %}
+ </ul>
+ </nav>
+
+ {% block content %}
+ {% endblock content %}
+
+ <footer id="page-footer">
+ <p> {{ FOOTER_TEXT or 'Powered by <a href="http://docs.notmyidea.org/alexis/pelican/">Pelican</a>' }}</p>
+ {% if GITHUB_URL %}<p><a id="github-link" href="{{ GITHUB_URL}}">Fork me on Github</a></p>{% endif %}
+ </footer>
+ </body>
+</html>
diff --git a/dev-random/templates/categories.html b/dev-random/templates/categories.html
new file mode 100644
index 0000000..ca9a7b1
--- /dev/null
+++ b/dev-random/templates/categories.html
@@ -0,0 +1,14 @@
+{% extends "base.html" %}
+
+{% block title %}{{ super() }} — Catégories{% endblock title %}
+
+{%- block content %}
+ <section id="page-content">
+ <h1>Catégories</h1>
+ <ul id="category-list">
+ {% for category, n in categories %}
+ <li><a href="{{ SITEURL }}/{{ category.url }}">{{ category }}</a> ({{ n|count }} articles)</li>
+ {% endfor %}
+ </ul>
+ </section>
+{% endblock content -%}
diff --git a/dev-random/templates/category.html b/dev-random/templates/category.html
new file mode 100644
index 0000000..6cff639
--- /dev/null
+++ b/dev-random/templates/category.html
@@ -0,0 +1,5 @@
+{% extends "index.html" %}
+
+{% block title %}{{ SITENAME }} — Articles dans la catégorie «{{ category }}»{% endblock %}
+
+{% block index_title %}Articles dans la catégorie <i>«{{ category }}»</i> :{% endblock %}
diff --git a/dev-random/templates/index.html b/dev-random/templates/index.html
new file mode 100644
index 0000000..ad01608
--- /dev/null
+++ b/dev-random/templates/index.html
@@ -0,0 +1,64 @@
+{% extends "base.html" %}
+
+{%- block content %}
+ <section id="page-content">
+ <h1 id="page-title">{% block index_title %}Tous les articles{% endblock index_title %}</h1>
+
+ {% for article in articles_page.object_list %}
+ <article class="post">
+ <header class="post-header">
+ <time datetime="{{ article.date.isoformat() }}" pubdate="pubdate">
+ {{ article.locale_date }}
+ </time>
+ <h1>
+ <a rel="bookmark"
+ href="{{ SITEURL }}/{{ article.url }}"
+ title="Lien permanent vers «{{ article.title }}»">
+ {{ article.title }}
+ </a>
+ </h1>
+ <div class="meta">
+ Dans «<a href="{{ SITEURL }}/category/{{ article.category }}.html">{{ article.category }}</a>»
+ par <a href="{{ SITEURL }}/author/{{article.author}}.html">{{ article.author}}</a>
+ </div>
+ </header>
+ <div class="post-content">
+ {{ article.summary }}
+ </div>
+ <footer class="post-footer">
+ <a class="readmore" href="{{ SITEURL }}/{{ article.url }}">Lire la suite...</a>
+ </footer>
+ </article>
+ {% endfor %}
+
+ {%- if articles_page %}
+ <nav id="pagination">
+ {%- if articles_page.has_previous() %}
+ <a id="first_page" href="{{ SITEURL }}/{{ page_name }}.html">&#60;&#60;</a>
+ <a id="prev_page" href="{{ SITEURL }}/{{ page_name }}{{ articles_page.previous_page_number() if articles_page.previous_page_number() != 1 else "" }}.html">&#60;</a>
+ {% else %}
+ <!-- <span id="first_page" class="a inactive">&#60;&#60;</span>
+ <span id="first_page" class="a inactive">&#60;</span> -->
+ {% endif -%}
+
+ {%- for i in range(1,articles_paginator.num_pages+1) %}
+ {%- if articles_page.number - 5 < i < articles_page.number + 5 %}
+ {%- if i == articles_page.number %}
+ <span class="a active">{{loop.index}}</span>
+ {% else %}
+ <a href="{{SITEURL}}/{{ page_name }}{{ ( i if i != 1 else "" ) }}.html">{{loop.index}}</a>
+ {% endif -%}
+ {% endif -%}
+ {% endfor -%}
+
+ {%- if articles_page.has_next() %}
+ <a id="next_page" href="{{ SITEURL }}/{{ page_name }}{{ articles_page.next_page_number() }}.html">&#62;</a>
+ <a id="last_page" href="{{ SITEURL }}/{{ page_name }}{{ articles_paginator.num_pages }}.html">&#62;&#62;</a>
+ {% else %}
+ <!-- <span id="next_page" class="a inactive">&#62;</span>
+ <span id="next_page" class="a inactive">&#62;&#62;</span> -->
+ {% endif -%}
+ </nav>
+ {%- endif%}
+ </section>
+{% endblock content -%}
diff --git a/dev-random/templates/page.html b/dev-random/templates/page.html
new file mode 100644
index 0000000..25acc8e
--- /dev/null
+++ b/dev-random/templates/page.html
@@ -0,0 +1,10 @@
+{% extends "base.html" %}
+
+{% block title %}{{ super() }} — {{ page.url }}{% endblock title %}
+
+{%- block content %}
+ <section id="page-content">
+ <h1>{{ page.title }}</h1>
+ {{ page.content }}
+ </section>
+{% endblock content -%}
diff --git a/dev-random/templates/tag.html b/dev-random/templates/tag.html
new file mode 100644
index 0000000..0eb2bab
--- /dev/null
+++ b/dev-random/templates/tag.html
@@ -0,0 +1,4 @@
+{% extends "index.html" %}
+
+{% block content_title %}Articles avec la mot clé « {{ tag }} » :{% endblock %}
+
diff --git a/dev-random/templates/tags.html b/dev-random/templates/tags.html
new file mode 100644
index 0000000..45b883b
--- /dev/null
+++ b/dev-random/templates/tags.html
@@ -0,0 +1,14 @@
+{% extends "base.html" %}
+
+{% block title %}{{ super() }} — Mots-clés{% endblock title %}
+
+{%- block content %}
+ <section id="page-content">
+ <h1>Mots-clés</h1>
+ <ul id="tagslist">
+ {% for tag in tag_cloud %}
+ <li class="tag-{{ tag.1 }}"><a href="{{ SITEURL }}/tag/{{ tag.0 }}.html">{{ tag.0 }}</a></li>
+ {% endfor %}
+ </ul>
+ </section>
+{% endblock content -%}