jekyll-theme-geneva-noire 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c257e9dbe43a44b1bb92b4161f5e9871944ce6c95f5240e5f0766660691e6285
4
+ data.tar.gz: 27f0de2edef2d79e4970da51bbf20f9a95542d6de721aa17981e67c393c8c039
5
+ SHA512:
6
+ metadata.gz: def7f72d693609e3ea0d4ca9d5c27e3588182b5ee8940396726c24064b9c3a958a2d4aac89169df5b903b7ab932624b657d75f11183b8d21bd549c8b4ca99879
7
+ data.tar.gz: b06faf35ddc39dc92c0b7152420bb1789c76fbd66ca4bef412193051f6aa4662d62747c0d3a67dc5023967c3251109b9e7e10a7272c2b9d61e40511eabf11811
data/LICENSE ADDED
@@ -0,0 +1,28 @@
1
+ Copyright (C) 2014 Jacob Tomlinson
2
+
3
+ The contents of this website, which consists of the files in
4
+ * _config.yml
5
+ * _data
6
+ * _drafts
7
+ * _posts
8
+
9
+ are copyrighted and sole property of its author Jacob Tomlinson. It may not be
10
+ used, modified, syndicated or distributed without expressed permission from
11
+ the author.
12
+
13
+ However the website theme built using jekyll is Open Source under the following
14
+ GPLv3 license.
15
+
16
+
17
+ This program is free software: you can redistribute it and/or modify
18
+ it under the terms of the GNU General Public License as published by
19
+ the Free Software Foundation, either version 3 of the License, or
20
+ (at your option) any later version.
21
+
22
+ This program is distributed in the hope that it will be useful,
23
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
24
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25
+ GNU General Public License for more details.
26
+
27
+ You should have received a copy of the GNU General Public License
28
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
data/README.md ADDED
@@ -0,0 +1,56 @@
1
+ # Carte Noire
2
+
3
+ A simple Jekyll theme for blogging. Not named after the coffee.
4
+
5
+ ![Homepage](http://i.imgur.com/xlmHArV.png)
6
+
7
+ ### Article
8
+ ![Article](http://i.imgur.com/8rD8FfC.png)
9
+
10
+ ### Disqus Comments
11
+ ![Comments](http://i.imgur.com/TBZHQwF.png)
12
+
13
+ ### Posts grouped by year
14
+ ![All Posts](http://i.imgur.com/9bNs2Sc.png)
15
+
16
+ ### JavaScript Search
17
+ ![Search](http://i.imgur.com/yQqMeSl.png)
18
+
19
+ ### Menu by mmenu
20
+ ![Menu](http://i.imgur.com/SClrNSH.png)
21
+
22
+ ## Contact
23
+ If you wish to contact me regarding this theme please raise an issue on GitHub,
24
+ tweet me [@_jacobtomlinson](http://www.twitter.com/_jacobtomlinson) or email me
25
+ [jacob@jacobtomlinson.co.uk](mailto:jacob@jacobtomlinson.co.uk).
26
+
27
+ ## Contribution
28
+ Pull requests are very welcome.
29
+
30
+ ## Theme
31
+ This jekyll theme has been created from scratch. Ideas and inspiration are taken
32
+ from other places but the code is my own.
33
+
34
+ ## Tools and Libraries
35
+ The following tools and libraries are used in this theme
36
+
37
+ ### JavaScript
38
+ * [jQuery](http://jquery.com/)
39
+ * [MMenu](http://mmenu.frebsite.nl/)
40
+ * [HighlightJS](https://highlightjs.org/)
41
+ * [Simple Jekyll Search](https://github.com/christian-fei/Simple-Jekyll-Search)
42
+
43
+ ### CSS
44
+ * [Bootstrap](http://getbootstrap.com/)
45
+ * [Font Awesome](http://fortawesome.github.io/Font-Awesome/)
46
+
47
+ ### Social
48
+ * [AddThis](http://www.addthis.com/)
49
+ * [Disqus](https://disqus.com/)
50
+
51
+ ### Other
52
+ * [Real Favicon Generator](http://realfavicongenerator.net/)
53
+ * [Google Analytics](http://www.google.com/analytics/)
54
+
55
+ ## License
56
+ The jekyll theme, HTML, CSS and JavaScript is licensed under GPLv3 (unless stated otherwise in the file).
@@ -0,0 +1,86 @@
1
+ <div class="footer clearfix">
2
+ <div class="col-md-6">
3
+ {{ site.footer_left }}
4
+ </div>
5
+ <div class="col-md-6">
6
+ {{ site.footer_right }}
7
+ </div>
8
+ </div>
9
+
10
+ <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
11
+ <script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
12
+ <script src="{{ site.baseurl }}/js/jquery.mmenu.min.all.js"></script>
13
+ <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/8.7/highlight.min.js"></script>
14
+ <script>hljs.initHighlightingOnLoad();</script>
15
+ <script type="text/javascript">
16
+ $(document).ready(function() {
17
+ $("#my-menu").mmenu().on( "closed.mm", function() {
18
+ $(".menu-button").show();
19
+ });
20
+ $(".menu-button").click(function() {
21
+ $(".menu-button").hide();
22
+ $("#my-menu").trigger("open.mm");
23
+ });
24
+ });
25
+ </script>
26
+
27
+ {% if page.make-smaller-titles %}
28
+ <script type="text/javascript">
29
+
30
+ function setFontSize() {
31
+
32
+ var title, dateOfTitle, fontSizeOfTitle, listOfA, listOfSmall, listOfArticlesDiv, divWidth;
33
+
34
+ listOfArticlesDiv = document.getElementsByClassName("articles");
35
+
36
+ for (i = 0; i < listOfArticlesDiv.length; i++) {
37
+
38
+ listOfA = document.getElementsByClassName("articles")[i].getElementsByTagName("a");
39
+ listOfSmall = document.getElementsByClassName("articles")[i].getElementsByTagName("small");
40
+
41
+ divWidth = document.getElementsByClassName("articles")[i].offsetWidth;
42
+
43
+ for (k = 0; k < listOfSmall.length; k++) {
44
+
45
+ title = $(listOfA[k]);
46
+ dateOfTitle = $(listOfSmall[k]);
47
+
48
+ fontSizeOfTitle = startingFontSize;
49
+ title.css("font-size", fontSizeOfTitle);
50
+
51
+ while (title.width() + dateOfTitle.width() >= divWidth)
52
+ title.css("font-size", fontSizeOfTitle -= 0.5);
53
+
54
+ }
55
+ }
56
+ }
57
+
58
+ function getStartFontSize() {
59
+ try {
60
+ startingFontSize = parseInt($(document.getElementsByClassName("articles")[0].getElementsByTagName("a")[0]).css("font-size"));
61
+ setFontSize();
62
+ window.addEventListener('resize', setFontSize, true);
63
+ } catch (e) {}
64
+ }
65
+
66
+ $(document).ready(getStartFontSize);
67
+
68
+ </script>
69
+ {% endif %}
70
+
71
+ {% if site.google_analytics %}
72
+ <script type="text/javascript">
73
+ var _gaq = _gaq || [];
74
+ _gaq.push(['_setAccount', '{{ site.google_analytics }}']);
75
+ _gaq.push(['_trackPageview']);
76
+ (function () {
77
+ var ga = document.createElement('script');
78
+ ga.type = 'text/javascript';
79
+ ga.async = true;
80
+ ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
81
+
82
+ var s = document.getElementsByTagName('script')[0];
83
+ s.parentNode.insertBefore(ga, s);
84
+ })();
85
+ </script>
86
+ {% endif %}
@@ -0,0 +1,44 @@
1
+ <head>
2
+ <meta charset="utf-8" />
3
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
4
+ <title>{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}</title>
5
+ <meta name="description" content="{{ site.description }}">
6
+
7
+ <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
8
+ <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
9
+ <link rel="stylesheet" type="text/css" media="all" href="{{ site.baseurl }}/css/style.css" />
10
+ <link rel="stylesheet" type="text/css" media="all" href="{{ site.baseurl }}/css/jquery.mmenu.all.css" />
11
+ <link rel="stylesheet" href="{{ site.baseurl }}/css/highlightjs.piperita.css">
12
+
13
+ <!-- Favicons generated at http://realfavicongenerator.net/ -->
14
+ <link rel="apple-touch-icon" sizes="57x57" href="{{ site.baseurl }}/favicons/apple-touch-icon-57x57.png">
15
+ <link rel="apple-touch-icon" sizes="60x60" href="{{ site.baseurl }}/favicons/apple-touch-icon-60x60.png">
16
+ <link rel="apple-touch-icon" sizes="72x72" href="{{ site.baseurl }}/favicons/apple-touch-icon-72x72.png">
17
+ <link rel="apple-touch-icon" sizes="76x76" href="{{ site.baseurl }}/favicons/apple-touch-icon-76x76.png">
18
+ <link rel="apple-touch-icon" sizes="114x114" href="{{ site.baseurl }}/favicons/apple-touch-icon-114x114.png">
19
+ <link rel="apple-touch-icon" sizes="120x120" href="{{ site.baseurl }}/favicons/apple-touch-icon-120x120.png">
20
+ <link rel="apple-touch-icon" sizes="144x144" href="{{ site.baseurl }}/favicons/apple-touch-icon-144x144.png">
21
+ <link rel="apple-touch-icon" sizes="152x152" href="{{ site.baseurl }}/favicons/apple-touch-icon-152x152.png">
22
+ <link rel="apple-touch-icon" sizes="180x180" href="{{ site.baseurl }}/favicons/apple-touch-icon-180x180.png">
23
+ <link rel="icon" type="image/png" href="{{ site.baseurl }}/favicons/favicon-32x32.png" sizes="32x32">
24
+ <link rel="icon" type="image/png" href="{{ site.baseurl }}/favicons/android-chrome-192x192.png" sizes="192x192">
25
+ <link rel="icon" type="image/png" href="{{ site.baseurl }}/favicons/favicon-96x96.png" sizes="96x96">
26
+ <link rel="icon" type="image/png" href="{{ site.baseurl }}/favicons/favicon-16x16.png" sizes="16x16">
27
+ <link rel="manifest" href="{{ site.baseurl }}/favicons/manifest.json">
28
+ <link rel="shortcut icon" href="{{ site.baseurl }}/favicons/favicon.ico">
29
+ <meta name="msapplication-TileColor" content="#da532c">
30
+ <meta name="msapplication-TileImage" content="{{ site.baseurl }}/favicons/mstile-144x144.png">
31
+ <meta name="msapplication-config" content="{{ site.baseurl }}/favicons/browserconfig.xml">
32
+ <meta name="theme-color" content="#ffffff">
33
+
34
+ {% if site.addthis_id %}
35
+ <!-- Go to www.addthis.com/dashboard to customize your tools -->
36
+ <script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid={{ site.addthis_id }}"></script>
37
+ {% endif %}
38
+
39
+ {% if page.content contains '<script type="math/tex' %}
40
+ <!-- MathJax for LaTeX -->
41
+ <script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
42
+ {% endif %}
43
+
44
+ </head>
@@ -0,0 +1,14 @@
1
+ <nav id="my-menu">
2
+ <div>
3
+ <p>{{ site.title }}</p>
4
+
5
+ <ul class="pages">
6
+ <li><a href="{{ site.baseurl }}/"><i class="fa fa-home"></i> Home</a></li>
7
+ <li><a href="{{ site.baseurl }}/posts/"><i class="fa fa-archive"></i> All Posts</a></li>
8
+ <li><a href="{{ site.baseurl }}/search/"><i class="fa fa-search"></i> Search</a></li>
9
+ </ul>
10
+
11
+ {% include social_links.html %}
12
+ </div>
13
+ </nav>
14
+ <div class="menu-button" href="#menu"><i class="fa fa-bars"></i></div>
@@ -0,0 +1,12 @@
1
+ <p class="links">
2
+ {% if site.twitter_username %}<a href="https://www.twitter.com/{{ site.twitter_username }}" target="_new"><i class="fa fa-twitter"></i></a>{% endif %}
3
+ {% if site.linkedin_link %}<a href="{{ site.linkedin_link }}" target="_new"><i class="fa fa-linkedin"></i></a>{% endif %}
4
+ {% if site.xing_link %}<a href="{{ site.xing_link }}" target="_new"><i class="fa fa-xing"></i></a>{% endif %}
5
+ {% if site.google_plus_link %}<a href="{{ site.google_plus_link }}" target="_new"><i class="fa fa-google-plus"></i></a>{% endif %}
6
+ {% if site.facebook_link %}<a href="{{ site.facebook_link }}" target="_new"><i class="fa fa-facebook"></i></a>{% endif %}
7
+ {% if site.github_username %}<a href="https://github.com/{{ site.github_username }}" target="_new"><i class="fa fa-github-alt"></i></a>{% endif %}
8
+ {% if site.stackoverflow_link %}<a href="{{ site.stackoverflow_link }}" target="_new"><i class="fa fa-stack-overflow"></i></a>{% endif %}
9
+ {% if site.instagram_username %}<a href="https://www.instagram.com/{{ site.instagram_username }}" target="_new"><i class="fa fa-instagram"></i></a>{% endif %}
10
+ {% if site.reddit_username %}<a href="https://www.reddit.com/u/{{ site.reddit_username }}" target="_new"><i class="fa fa-reddit-alien"></i></a>{% endif %}
11
+ <a href="{{ site.baseurl }}/feed.xml" target="_new"><i class="fa fa-rss"></i></a>
12
+ </p>
@@ -0,0 +1,19 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+
4
+ {% include head.html %}
5
+
6
+ <body>
7
+
8
+ {% include header.html %}
9
+
10
+ <div class="page-content">
11
+ <div class="wrap">
12
+ {{ content }}
13
+ </div>
14
+ </div>
15
+
16
+ {% include footer.html %}
17
+
18
+ </body>
19
+ </html>
@@ -0,0 +1 @@
1
+ {{ content }}
@@ -0,0 +1,12 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <div class="container-fluid index">
6
+ <div class="row index all-posts">
7
+ <h2 class="header" itemprop="headline"> {{ page.title }} </h2>
8
+ <div class="col-md-12 content-panel articles">
9
+ {{ content }}
10
+ </div>
11
+ </div>
12
+ </div>
@@ -0,0 +1,187 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ {% if page.minutes %}
6
+ {% assign minutes = page.minutes %}
7
+ {% else %}
8
+ {% assign minutes = content | number_of_words | divided_by: 180 %}
9
+ {% if minutes == 0 %}{% assign minutes = 1 %}{% endif %}
10
+ {% endif %}
11
+
12
+ <div class="container-fluid single">
13
+ <div class="row">
14
+
15
+ <div itemscope itemtype="http://schema.org/Article" class="col-md-12 article">
16
+ {% if site.data.thumbnail[page.thumbnail] %}
17
+ <div class="thumb">
18
+ <img itemprop="image" src="{{ site.data.thumbnail[page.thumbnail] }}" alt="Thumbnail: {{ page.thumbnail }}" />
19
+ </div>
20
+ {% elsif page.thumbnail %}
21
+ <div class="thumb">
22
+ <i class="fa fa-{{ page.thumbnail }} fa-4x"></i>
23
+ </div>
24
+ {% endif %}
25
+
26
+ <h1 class="header" itemprop="name">{{ page.title }}</h1>
27
+
28
+ <div class="author">
29
+ <small><i>
30
+ {% if page.author %}
31
+ by
32
+ <span itemprop="author">
33
+ {% if site.google_plus_link %}
34
+ <a rel="author" href="{{ site.google_plus_link }}">
35
+ {% endif %}
36
+ <span itemprop="author" itemscope itemtype="http://schema.org/Person">
37
+ <span itemprop="name">{{ page.author }}</span>
38
+ </span>
39
+ {% if site.google_plus_link %}
40
+ </a>
41
+ {% endif %}
42
+ </span>
43
+ {% endif %}
44
+ on <span itemprop="datePublished" content="2014-08-28">{{ page.date | date: "%B %-d, %Y" }}</span>
45
+ {% if page.categories != empty %} under {% for category in page.categories limit:1 %}{{ category }}{% endfor %}{% endif %}
46
+ </i></small>
47
+ </div>
48
+
49
+ <div class="read-time">
50
+ <small>
51
+ {{ minutes }} minute read
52
+ </small>
53
+ </div>
54
+
55
+ <div class="content-panel content">
56
+
57
+ {% if page.series %}
58
+ This post is part of the series '{{ page.series }}':
59
+ <ol class="series">
60
+ {% for apost in site.posts reversed %}
61
+ {% if page.series == apost.series %}
62
+ <li>
63
+ {% if page.title == apost.title %}
64
+ {% assign nextpost = true %}
65
+ {{ apost.title }}
66
+ {% else %}
67
+ {% if nextpost == true %}
68
+ {% assign seriesnext = apost %}
69
+ {% endif %}
70
+ {% assign nextpost = false %}
71
+ <a href="{{ apost.url }}">{{ apost.title }}</a>
72
+ {% endif %}
73
+ </li>
74
+ {% endif %}
75
+ {% endfor %}
76
+ </ol>
77
+ {% endif %}
78
+
79
+ <span itemprop="articleBody">{{ content }}</span>
80
+
81
+ {% if page.series %}
82
+ {% if seriesnext %}
83
+ <i>Next post in the series:</i> <a href="{{ seriesnext.url }}">{{ seriesnext.title }}</a>
84
+ {% endif %}
85
+ {% endif %}
86
+
87
+ {% if site.addthis_id %}
88
+ <div class="share">
89
+ <!-- Go to www.addthis.com/dashboard to customize your tools -->
90
+ <div class="addthis_sharing_toolbox"></div>
91
+ </div>
92
+ {% endif %}
93
+
94
+ {% if page.tags and page.tags.size > 0 %}
95
+ <div class="tags">
96
+ <small>
97
+ <i class="fa fa-tags"></i>
98
+ {{ page.tags | join: ', ' }}
99
+ </small>
100
+ </div>
101
+ {% endif %}
102
+
103
+ </div>
104
+
105
+ {% if site.twitter_username and site.disqus_account %}
106
+ <div class="content-panel feedback">
107
+ I <i class="fa fa-heart"></i> feedback.<br />
108
+ Let me know what you think of this article on twitter <a href="http://www.twitter.com/{{ site.twitter_username }}">@{{ site.twitter_username }}</a> or leave a comment below!
109
+ </div>
110
+ {% elsif site.twitter_username %}
111
+ <div class="content-panel feedback">
112
+ I <i class="fa fa-heart"></i> feedback.<br />
113
+ Let me know what you think of this article on twitter <a href="http://www.twitter.com/{{ site.twitter_username }}">@{{ site.twitter_username }}</a>!
114
+ </div>
115
+ {% elsif site.disqus_account %}
116
+ <div class="content-panel feedback">
117
+ I <i class="fa fa-heart"></i> feedback.<br />
118
+ Let me know what you think of this article in the comment section below!
119
+ </div>
120
+ {% endif %}
121
+
122
+ {% if site.disqus_account %}
123
+ <div class="content-panel comments">
124
+ <div id="disqus_thread">
125
+ <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
126
+ <a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
127
+ </div>
128
+ </div>
129
+ {% endif %}
130
+
131
+ {% if site.related_posts.length > 0 %}
132
+ <div class="content-panel related clearfix">
133
+ {% for post in site.related_posts limit:1 %}
134
+ <div class="related-header">
135
+ <a href="{{ site.baseurl }}{{ post.url }}">Read More</a>
136
+ </div>
137
+ <div class="title">
138
+ <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a>
139
+ </div>
140
+ <div class="excerpt">
141
+ {% if post.summary %}
142
+ {{ post.summary | strip_html | truncatewords:30 }}
143
+ {% else %}
144
+ {{ post.excerpt | strip_html | truncatewords:30 }}
145
+ {% endif %}
146
+ <a href="{{ site.baseurl }}{{ post.url }}">Continue Reading</a>
147
+ </div>
148
+ {% endfor %}
149
+ <hr />
150
+ <div class="previous previous-next">
151
+ {% if page.previous %}
152
+ <p>
153
+ <a href="{{ site.baseurl }}{{ page.previous.url }}">{{ page.previous.title }}</a>
154
+ </p>
155
+ <p class="date">Published {{ page.previous.date | date: "%B %-d, %Y" }}</p>
156
+ {% endif %}
157
+ </div>
158
+ <div class="next previous-next">
159
+ {% if page.next %}
160
+ <p>
161
+ <a href="{{ site.baseurl }}{{ page.next.url }}">{{ page.next.title }}</a>
162
+ </p>
163
+ <p class="date">Published {{ page.next.date | date: "%B %-d, %Y" }}</p>
164
+ {% endif %}
165
+ </div>
166
+ </div>
167
+ {% endif %}
168
+
169
+ </div>
170
+
171
+ </div>
172
+
173
+ </div>
174
+
175
+ {% if site.disqus_account %}
176
+ <script type="text/javascript">
177
+ /* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
178
+ function disqus_config() { this.experiment.enable_scroll_container = true; }
179
+ var disqus_shortname = "{{ site.disqus_account }}"; // required: replace example with your forum shortname
180
+ /* * * DON'T EDIT BELOW THIS LINE * * */
181
+ (function() {
182
+ var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
183
+ dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
184
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
185
+ })();
186
+ </script>
187
+ {% endif %}