Site overhaul.

- Migrate to Jekyll 3.8.5
- New theme: http://jekyllthemes.org/themes/webjeda-cards/
- Use plugins for webmention and seo.
- informatics is not a special tag anymore.
parent 09ecc8d4
# Welcome to Jekyll!
#
# This config file is meant for settings that affect your whole blog, values
# which you are expected to set up once and rarely need to edit after that.
# For technical reasons, this file is *NOT* reloaded automatically when you use
# 'jekyll serve'. If you change this file, please restart the server process.
# Site settings
title: Emin Aksehirli
email: m@memin.tk
......@@ -9,10 +16,60 @@ url: "http://memin.tk" # the base hostname & protocol for your site
name: Emin Aksehirli
logo: "/res/img/logo/4color-square.svg"
# when true debug reloads are on
debug: false
#sidebar
default-image: "/res/img/logo/4color-square.svg" # If there is no featured image in a post then this image will be showed. Also on all pages this image will be showed. Use a 500x250 image.
# Build settings
markdown: kramdown
permalink: /:title/
paginate: 6
paginate_path: /page:num/
#hilighter: pygments
#seo
twitter:
username: EminAksehirli
card: summary
social:
links:
- https://twitter.com/EminAksehirli
- https://be.linkedin.com/in/eminaksehirli
- https://github.com/eminaksehirli
- https://gitlab.com/u/eminaksehirli
- https://keybase.io/emin
lang: en_US
defaults:
- scope:
path: ""
values:
image: "/res/img/logo/4color-square.svg"
# Sass style
sass:
style: compressed
# webmentions
webmentions:
username: memin.tk
# skip bad URLs for 5 days
cache_bad_uris_for: 5
cache_folder: .webmention-cache
# I moved to www and then to https, so…
legacy_domains:
- http://www.memin.tk
- https://memin.tk
- https://www.memin.tk
throttle_lookups:
last_week: daily
last_month: weekly
last_year: every 2 weeks
older: monthly
# pause_lookups: true
# Ruby Gems
plugins: [jekyll-paginate, jekyll-seo-tag, jekyll-webmention_io]
hilighter: pygments
{% if site.safe == false %}
<!-- During authoring, this automatically reloads the post as its changing -->
<script type="text/javascript">
(function() {
var qs = document.location.search;
var current_etag = qs.match(/etag=("?[a-zA-Z0-9_-]+)/);
if (current_etag !== null) { current_etag = current_etag[1]; }
var scrolly = qs.match(/scrolly=([0-9]+)/);
if (scrolly) {
scrolly = parseInt(scrolly[1]);
window.scrollTo(window.scrollX, scrolly);
setTimeout(function () {
window.scrollTo(window.scrollX, scrolly);
}, 10);
}
function check() {
var r = new XMLHttpRequest();
var url = document.location.href + ((qs && qs !== '') ? '&' : '?') + 'r=' + Math.random();
r.open('GET', url, true);
r.onreadystatechange = function() {
if (r.readyState == 4){
var found_etag = r.getResponseHeader('Etag').replace(/^"|"$/g);
//console.log('current_etag:', current_etag, 'found_etag:', found_etag);
if (current_etag === null) {
current_etag = found_etag;
} else if (found_etag !== current_etag) {
document.location.search =
'?etag=' + encodeURIComponent(found_etag) +
'&scrolly=' + window.scrollY;
return;
}
setTimeout(check, 500);
}
};
r.send(null);
}
check();
})();
</script>
{% endif %}
\ No newline at end of file
......@@ -47,7 +47,7 @@
<td><input class="com-text" type="text" size="25" name="test" /> (required)</td>
</tr>
<tr>
<td colspan="2"><textarea class="com-text" name="comment" rows="10" cols="60" ></textarea></td>
<td colspan="2"><textarea class="com-text" name="comment" rows="5" cols="60" ></textarea></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="submit" id="submit" value="Submit Comment" /></td>
......
<footer>
<p>
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/" class="cc"><img src="{{ '/res/img/cc-cc.png' | prepend: site.baseurl }}" class="cc" alt="Creative Commons">
<footer>
<div class="container">
<div class="row p20">
{% if site.copyright.name %}
<div class="col-md-9 text-left mt25">
<a rel="license" href="http://creativecommons.org/licenses/by/4.0/" class="cc"><img src="{{ '/res/img/cc-cc.png' | prepend: site.baseurl }}" class="cc" alt="Creative Commons">
<img src="{{'/res/img/cc-by.png' | prepend: site.baseurl }}" class="cc" alt="Creative Commons - Attribution"></a>
This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution License</a>
</p>
<p><a href="{{ '/feed.xml' |prepend: site.baseurl }}">RSS</a> - <a href="{{ '/atom.xml' |prepend: site.baseurl }}">Atom</a> - <a href="{{ '/about/#site' |prepend: site.baseurl }}">More</a>
</p>
</footer>
</div>
<!-- <div class="col-md-4 text-center mt25">All rights reserved by <a target="_blank" href="{{site.copyright.link}}">{{site.copyright.name}}</a></div>-->
{% endif %}
<div class="col-md-3 text-right mt25" >
{% if site.built-by %}
<!--<a target="_blank" href="http://webjeda.com"><img src="https://img.shields.io/badge/Built%20by-webjeda-blue.svg" alt="{{site.built-by}}"></a>
{% endif %} -->
</div>
<div class="col-md-3 text-center mt25">
<a href="{{ '/feed.xml' |prepend: site.baseurl }}">RSS</a> - <a href="{{ '/atom.xml' |prepend: site.baseurl }}">Atom</a> - <a href="{{ '/about/#site' |prepend: site.baseurl }}">More</a>
</div>
</div>
</div>
</footer>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}</title>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
{% seo %}
<!-- <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> -->
<link rel="stylesheet" href="{{site.baseurl}}/css/main.css">
<link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml" | prepend: site.baseurl | prepend: site.url }}">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<link rel="shortcut icon" href="{{ "/favicon.ico" | prepend: site.baseurl }}">
{% include webmention_id.html %}
{% webmentions_head %}
{% include lightbox.html %}
<link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" media="screen, projection" href="{{ "/res/screen.css" | prepend: site.baseurl }}" type="text/css">
<link rel="stylesheet" media="print" href="{{ "/res/print.css" | prepend: site.baseurl }}" type="text/css">
<link rel="stylesheet" type="text/css" href="{{ "/res/highlight.css" | prepend: site.baseurl }}">
<link rel="alternate" type="application/atom+xml" title="{{ site.title }}" href="{{ "/atom.xml" | prepend: site.baseurl }}">
<link rel="alternate" type="application/rss+xml" title="{{ site.title }}" href="{{ "/feed.xml" | prepend: site.baseurl }}" />
<link rel="shortcut icon" href="{{ "/favicon.ico" | prepend: site.baseurl }}">
{% include webmention.html %}
{% include social-tags.html %}
{% include lightbox.html %}
</head>
<header>
<h1 class="logo" onclick="document.location.href='/';"><a href="/"><img src="/res/img/logo-grad.png" height="50" alt="Glider" /></a></h1>
<ul class="navigation">
<li><a href="/informatics/"{% if page.url contains "/informatics/" %} class="active"{% endif %} title="What I say about computers and information">Informatics</a></li>
<li><a href="/projects/"{% if page.url contains "/projects/" %} class="active"{% endif %} title="Projects I am or was involved in">Projects</a></li>
<li><a href="/research/"{% if page.url contains "/research/" %} class="active"{% endif %} title="My Research">Research</a></li>
<li><a href="/about/"{% if page.url contains "/about/" %} class="active"{% endif %}>About</a></li>
</ul>
</header>
<header class="site-header">
<nav class="navbar navbar-default">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="{{site.baseurl}}/"><img src="/res/img/logo-grad.png" height="50" alt="Glider" /></a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse " id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right">
<li><a href="/">home</a></li>
<li><a href="/projects/">projects</a></li>
<li><a href="/research/">research</a></li>
<li><a href="/about/">about</a></li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
</header>
<a href="{{ post.url | prepend: site.baseurl }}" class="post-excerpt{% if post.thumbnail %} photo{% endif %}">
<div class="padded-content">
<div class="title">{{ post.title }}</div>
{% if post.thumbnail %}
<div class="image" style="background-image:url('{{ post.thumbnail |prepend: site.baseurl }}')"></div>
{% else %}
<div class="info">{{ post.date | date: "%b %Y" }}</div>
{% if post.summary %}
<span class="body">{{ post.summary | strip_html }}</span>
{% else %}
<span class="body">{{ post.excerpt | strip_html }}</span>
{% endif %}
{% endif %}
<div class="col-md-4 card">
<a href="{{ post.url | prepend: site.baseurl }}" class="index-anchor">
<div class="panel panel-default">
{% if post.thumbnail %}
<img width="100%" src="{{post.thumbnail}}" alt="{{post.title}}">
{% else %}
<img width="100%" src="/res/img/logo-grad.png" alt="{{site.title}}">
{% endif %}
<div class="panel-body">
<h3 class="panel-title pull-left">{{ post.title | truncate: 25 }}</h3><span class="post-meta pull-right"><small>{{ post.date | date: "%b %-d, %Y" }}</small></span>
</div>
<div class="panel-body"><small>
{{ post.excerpt | strip_html | strip_newlines | truncate: 180 }}</small>
</div>
</div>
</a>
</div>
</a>
<script type="text/javascript">
(function(f){
var onload = function(f) {
if (window.addEventListener) {
window.addEventListener('DOMContentLoaded', f, false);
} else {
window.attachEvent('onload', f);
}
};
onload(function(){
f();
if (window.addEventListener) {
window.addEventListener('resize', f, false);
} else {
window.attachEvent('resize', f);
}
});
})(function(){
var winw = window.innerWidth, w; //, width_thresholds = [680, 780];
w = window.__post_grid_width;
if ( (w !== undefined) &&
( (w === 680 && winw < 680) ||
(w === 780 && winw >= 680 && winw < 780) ||
(w === 10000 && winw >= 780)
)
)
{
// console.log('noop w:', w+ ', winw:', winw);
return;
} else {
window.__post_grid_width = w =
winw > 780 ? 10000 :
winw > 680 ? 780 :
680;
// console.log('op w:', w);
}
var posts = document.getElementById('recent-posts');
var child_nodes = posts.childNodes, k, node, h,
col_width, col0_y, col1_y, col1_x,
origin = {x:0, y:0}, node_count = 0, is_col0, row0_max_y;
posts.style.position = (window.__post_grid_width <= 680) ? null : 'relative';
for (k in child_nodes) {
node = child_nodes[k];
if (node.nodeType === Node.ELEMENT_NODE) {
if (node.className === 'breaker') {
if (window.__post_grid_width <= 680) {
node.style.height = null;
} else {
node.style.height = (Math.max(col0_y, col1_y) - row0_max_y) + 'px';
}
break;
}
if (col0_y === undefined) {
origin.x = node.offsetLeft;
origin.y = node.offsetTop;
col_width = node.clientWidth;
col0_y = origin.y + node.clientHeight;
row0_max_y = col0_y;
} else {
if (col1_y === undefined) {
col1_y = origin.y + node.clientHeight;
col1_x = origin.x + node.clientWidth;
if (col1_y > row0_max_y) {
row0_max_y = col1_y;
}
} else {
if (window.__post_grid_width <= 680) {
// console.log('Clear');
node.style.position = null;
node.style.width = null;
node.style.left = null;
node.style.top = null;
} else {
is_col0 = (node_count % 2) === 0;
node.style.position = 'absolute';
node.style.width = col_width + 'px';
if (is_col0) {
node.style.left = origin.x + 'px';
node.style.top = col0_y + 'px';
col0_y += node.clientHeight;
} else {
node.style.left = col1_x + 'px';
node.style.top = col1_y + 'px';
col1_y += node.clientHeight;
}
}
// console.dir(node);
}
}
++node_count;
}
}
});
</script>
<div class="col-md-4 mt20">
<div class="post-img">
{% if page.thumbnail %}
<img width="600" src="{{page.thumbnail}}" alt="{{page.title}}">
{% else %}
<img width="600" src="{{site.default-image}}" alt="memin.tk">
{% endif %}
</div>
<div class="mt10 recent">
<h2>Recent articles</h2>
<ul>
{% for post in site.related_posts limit:3 %}
<li>
<p><a href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a><small>&nbsp;&nbsp;{{ post.date | date_to_string }}</small></p>
</li>
{% endfor %}
</ul>
</div>
{% if site.fb-like-box %}
<div class="mt10">
<div class="fb-page" data-href="https://www.facebook.com/webjeda/" data-width="400" data-small-header="true" data-adapt-container-width="true" data-hide-cover="true" data-show-facepile="true"><blockquote cite="https://www.facebook.com/webjeda/" class="fb-xfbml-parse-ignore"><a href="{{site.fb-page-url}}">{{site.fb-page-title}}</a></blockquote></div>
</div>
{% endif %}
<br>
</div>
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@eminaksehirli">
<meta name="twitter:title" content="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}" />
<meta name="twitter:description" content="{% if page.summary %}{{ page.summary }}{% else %}{{ site.description }}{%endif%}" />
{% if page.thumbnail %}<meta name="twitter:image" content="{{ page.thumbnail | prepend: site.baseurl | prepend: site.url}}" />{% endif %}
<meta name="twitter:url" content="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}" />
<meta property="og:type" content="article">
<meta property="og:url" content="{{ page.url | remove_first:'index.html' | prepend: site.baseurl | prepend: site.url }}">
{% if page.title %}
<meta property="og:title" content="{{ page.title }}">
{% if page.summary %}
<meta property="og:description" content="{{ page.summary }}">
{% else if content %}
<meta property="og:description" content="{{ content | strip_html | truncatewords: 25 }}">
{% endif %}
{% else %}
<meta property="og:title" content="{{ site.title }}">
<meta property="og:description" content="{{ site.description }}">
{% endif %}
{% if page.thumbnail %}
<meta property="og:image" content="{{ page.thumbnail | prepend: site.baseurl | prepend: site.url }}">
{% else %}
<meta property="og:image" content="{{ site.logo | prepend: site.baseurl | prepend: site.url }}">
{% endif %}
<meta property="og:locale" content="en_US" />
<meta property="og:locale:alternate" content="tr_TR" />
<meta property="og:site_name" content="memin.tk">
<meta property="article:published_time" content="{{ page.date | date: "%Y-%m-%d" }}">
<meta property="article:modified_time" content="{{ page.path | modification_date | date: "%Y-%m-%d" }}">
<meta property="article:author" content="{{ site.name }}">
<link href="https://twitter.com/eminaksehirli" rel="me">
<link href="https://github.com/eminaksehirli" rel="me">
<link rel="pingback" href="https://webmention.io/memin.tk/xmlrpc" />
<link rel="webmention" href="https://webmention.io/memin.tk/webmention" />
<div class="share-page">
{% capture url %}{{ page.url | prepend: site.baseurl | prepend: site.url | uri_escape }}{% endcapture %}
<span class="share-text">Share this on &rarr;</span>
<div class="share-buttons">
<a href="https://twitter.com/intent/tweet?text={{ page.title | uri_escape }}&amp;url={{ url}}&amp;related={{ site.twitter_username }}" rel="nofollow" target="_blank" title="Share on Twitter"><img src={{ '/res/img/shr/twit.png' | prepend: site.baseurl}} alt="Twitter icon"/></a>
<a href="https://facebook.com/sharer.php?u={{ url }}" rel="nofollow" target="_blank" title="Share on Facebook"><img src={{ '/res/img/shr/face.png' | prepend: site.baseurl}} alt="Facebook icon"/></a>
<a href="https://plus.google.com/share?url={{ url }}" rel="nofollow" target="_blank" title="Share on Google+"><img src={{ '/res/img/shr/plus.png' | prepend: site.baseurl}} alt="Google+ icon"/></a>
<a href="http://pinterest.com/pin/create/button/?url={{ url }}&amp;description={{ page.title | uri_escape }}" rel="nofollow" target="_blank" title="Share on Pinterest"><img src={{ '/res/img/shr/pint.png' | prepend: site.baseurl}} alt="Pinterest icon" /></a>
<a href="http://www.linkedin.com/shareArticle?mini=true&amp;url={{ url }}&amp;title={{ page.title | uri_escape }}&amp;summary={{ page.summary | uri_escape}}&amp;source={{ site.url | uri_escape }}" rel="nofollow" target="_blank" title="Share on LinkedIn"><img src={{ '/res/img/shr/link.png' | prepend: site.baseurl}} alt="LinkedIn icon"/></a>
<a href="http://www.tumblr.com/share/link?url={{ url }}&amp;name={{ page.title | uri_escape }}&amp;description={{ page.summary | uri_escape}}" rel="nofollow" target="_blank" title="Share on Tumblr"><img src={{ '/res/img/shr/tumb.png' | prepend: site.baseurl}} alt="tubmlr icon"/></a>
<a href="http://www.reddit.com/submit?url={{ url }}&amp;title={{ page.title | uri_escape }}" rel="nofollow" target="_blank" title="Share on Reddit"><img src={{ '/res/img/shr/redd.png' | prepend: site.baseurl}} alt="Reddit icon"/></a>
</div>
</div>
---
# Jekyll layout that compresses HTML
# v3.0.1
# http://jch.penibelst.de/
# © 2014–2015 Anatol Broder
# MIT License
---
{% capture _LINE_FEED %}
{% endcapture %}{% if site.compress_html.ignore.envs contains jekyll.environment %}{{ content }}{% else %}{% capture _content %}{{ content }}{% endcapture %}{% assign _profile = site.compress_html.profile %}{% if site.compress_html.endings == "all" %}{% assign _endings = "html head body li dt dd p rt rp optgroup option colgroup caption thead tbody tfoot tr td th" | split: " " %}{% else %}{% assign _endings = site.compress_html.endings %}{% endif %}{% for _element in _endings %}{% capture _end %}</{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _end %}{% endfor %}{% if _profile and _endings %}{% assign _profile_endings = _content | size | plus: 1 %}{% endif %}{% for _element in site.compress_html.startings %}{% capture _start %}<{{ _element }}>{% endcapture %}{% assign _content = _content | remove: _start %}{% endfor %}{% if _profile and site.compress_html.startings %}{% assign _profile_startings = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.comments == "all" %}{% assign _comments = "<!-- -->" | split: " " %}{% else %}{% assign _comments = site.compress_html.comments %}{% endif %}{% if _comments.size == 2 %}{% capture _comment_befores %}.{{ _content }}{% endcapture %}{% assign _comment_befores = _comment_befores | split: _comments.first %}{% for _comment_before in _comment_befores %}{% if forloop.first %}{% continue %}{% endif %}{% capture _comment_outside %}{% if _carry %}{{ _comments.first }}{% endif %}{{ _comment_before }}{% endcapture %}{% capture _comment %}{% unless _carry %}{{ _comments.first }}{% endunless %}{{ _comment_outside | split: _comments.last | first }}{% if _comment_outside contains _comments.last %}{{ _comments.last }}{% assign _carry = false %}{% else %}{% assign _carry = true %}{% endif %}{% endcapture %}{% assign _content = _content | remove_first: _comment %}{% endfor %}{% if _profile %}{% assign _profile_comments = _content | size | plus: 1 %}{% endif %}{% endif %}{% assign _pre_befores = _content | split: "<pre" %}{% assign _content = "" %}{% for _pre_before in _pre_befores %}{% assign _pres = _pre_before | split: "</pre>" %}{% assign _pres_after = "" %}{% if _pres.size != 0 %}{% if site.compress_html.blanklines %}{% assign _lines = _pres.last | split: _LINE_FEED %}{% assign _lastchar = _pres.last | split: "" | last %}{% assign _outerloop = forloop %}{% capture _pres_after %}{% for _line in _lines %}{% assign _trimmed = _line | split: " " | join: " " %}{% if forloop.last and _lastchar == _LINE_FEED %}{% unless _outerloop.last %}{{ _LINE_FEED }}{% endunless %}{% continue %}{% endif %}{% if _trimmed != empty or forloop.last %}{% unless forloop.first %}{{ _LINE_FEED }}{% endunless %}{{ _line }}{% endif %}{% endfor %}{% endcapture %}{% else %}{% assign _pres_after = _pres.last | split: " " | join: " " %}{% endif %}{% endif %}{% capture _content %}{{ _content }}{% if _pre_before contains "</pre>" %}<pre{{ _pres.first }}</pre>{% endif %}{% unless _pre_before contains "</pre>" and _pres.size == 1 %}{{ _pres_after }}{% endunless %}{% endcapture %}{% endfor %}{% if _profile %}{% assign _profile_collapse = _content | size | plus: 1 %}{% endif %}{% if site.compress_html.clippings == "all" %}{% assign _clippings = "html head title base link meta style body article section nav aside h1 h2 h3 h4 h5 h6 hgroup header footer address p hr blockquote ol ul li dl dt dd figure figcaption main div table caption colgroup col tbody thead tfoot tr td th" | split: " " %}{% else %}{% assign _clippings = site.compress_html.clippings %}{% endif %}{% for _element in _clippings %}{% assign _edges = " <e;<e; </e>;</e>;</e> ;</e>" | replace: "e", _element | split: ";" %}{% assign _content = _content | replace: _edges[0], _edges[1] | replace: _edges[2], _edges[3] | replace: _edges[4], _edges[5] %}{% endfor %}{% if _profile and _clippings %}{% assign _profile_clippings = _content | size | plus: 1 %}{% endif %}{{ _content }}{% if _profile %} <table id="compress_html_profile_{{ site.time | date: "%Y%m%d" }}" class="compress_html_profile"> <thead> <tr> <td>Step <td>Bytes <tbody> <tr> <td>raw <td>{{ content | size }}{% if _profile_endings %} <tr> <td>endings <td>{{ _profile_endings }}{% endif %}{% if _profile_startings %} <tr> <td>startings <td>{{ _profile_startings }}{% endif %}{% if _profile_comments %} <tr> <td>comments <td>{{ _profile_comments }}{% endif %}{% if _profile_collapse %} <tr> <td>collapse <td>{{ _profile_collapse }}{% endif %}{% if _profile_clippings %} <tr> <td>clippings <td>{{ _profile_clippings }}{% endif %} </table>{% endif %}{% endif %}
<!DOCTYPE HTML>
---
layout: compress
---
<!DOCTYPE html>
<html lang="en" prefix="og: http://ogp.me/ns#">
{% include head.html %}
<body{% if page.wide_layout %} class="wide"{% endif %}>
{% include header.html %}
<!--div class="wrapper content"-->
{{ content }}
<!--/div-->
{% if paginator.page %}
<div id="paginator" class="content">
{% if paginator.next_page %}
<a href="/page{{ paginator.next_page }}/">Older entries</a>
{% endif %}
{% if paginator.previous_page %}
<a href="/page{{ paginator.previous_page }}/">Newer entries</a>
{% endif %}
<body>
{% include header.html %}
<div class="container">
<div class="wrapper">
{{ content }}
</div>
</div>
{% endif %}
{% include footer.html %}
{% unless page.no_footer %}
{% include footer.html %}
{% endunless %}
{% if site.debug %}
{% include autoreload-in-debug.html %}
{% endif %}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
<script src="{{site.baseurl}}/js/bootstrap.min.js"></script>
</body>
</html>
---
layout: default
---
<div class="content">
{{ content }}
<div class="row">
<div class="col-md-8">
<article class="post">
<header class="post-header">
<h1 class="post-title">{{ page.title }}</h1>
</header>
<div class="post-content">
{{ content }}
</div>
</article>
<!--</div>
{% include sidebar.html %}
</div>
-->
---
layout: default
---
<div class="content{% if page.photo_url %} photo-post{% endif %}">
<div class="post single">
{% unless page.photo_url %}
<h1>{{ page.title }}</h1>
<div class="info">{{ page.date | date: "%b %d, %Y" }}</div>
{% endunless %}
<div class="body">{{ content }}</div>
{% include tags.html %}
<div class="breaker"></div>
{% include share-buttons.html %}
{% include comment_template.html %}
{% capture url %}{{ page.url | prepend: site.baseurl | prepend: site.url | uri_escape }}{% endcapture %}
{% webmentions url %}
</div>
<div class="row">
<div class="col-md-8">
<article class="post" itemscope itemtype="http://schema.org/BlogPosting">
<header class="post-header">
<h1 class="post-title" itemprop="name headline">{{ page.title }}</h1>
<p class="post-meta"><time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">{{ page.date | date: "%b %-d, %Y" }}</time>{% if page.author %} • <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span itemprop="name">{{ page.author }}</span></span>{% endif %}</p>
</header>
<div class="post-content" itemprop="articleBody">
{{ content }}
</div>
</article>
<div class="row">
{% if site.disqus-shortname %}
{% include disqus.html %}
{% endif %}
</div>
<div class="row">
{% include tags.html %}
</div>
<div class="row p20">
{% include share-buttons.html %}
</div>
<div class="row p20">
{% include comment_template.html %}
</div>
<div class="row p10">
{% webmentions %}
</div>
<div class="row">
<ul class="pager">
{% if page.next.url %}
<li><a class="next" href="{{page.next.url | prepend: site.baseurl}}">&laquo; {{page.next.title}}</a></li>
{% endif %}
{% if page.previous.url %}
<li><a class="previous" href="{{page.previous.url | prepend: site.baseurl}}">{{page.previous.title}} &raquo;</a></li>
{% endif %}
</ul>
</div>
</div>
{% include sidebar.html %}
</div>
......@@ -18,7 +18,7 @@
# You should have received a copy of the GNU General Public License along
# with this program; if not, see <http://www.gnu.org/licences/>
class Jekyll::Post
class Jekyll::Document
alias :to_liquid_without_comments :to_liquid
def to_liquid(*args)
......
......@@ -10,13 +10,17 @@ module Jekyll
self.ext = '.html'
self.basename = 'index'
self.content = <<-EOS
<div class="posts">
<div class="content full-bleed" id="recent-posts">
{% for post in page.posts %}
{% include post-box.html %}
{% endfor %}
<div class="breaker"></div>
</div>
<div class="home">
<div class="row pack">
{% for post in page.posts %}
{% include post-box.html %}
{% endfor %}
</div>
</div>
EOS
......
# (c) Aaron Gustafson
# https://github.com/aarongustafson/jekyll-webmention_io
# Licence : MIT
#
# this liquid plugin insert a webmentions into your Octopress or Jekill blog
# using http://webmention.io/ and the following syntax:
#
# {% webmentions URL %}
# {% webmention_count URL %}
#
require 'json'
require 'net/http'
WEBMENTION_CACHE_DIR = File.expand_path('../../.webmention-cache', __FILE__)
FileUtils.mkdir_p(WEBMENTION_CACHE_DIR)
module Jekyll
class Webmentions < Liquid::Tag
def initialize(tagName, text, tokens)
super
@text = text
@api_endpoint = ""
end
def render(context)
output = super
targets = []
args = @text.split(/\s+/).map(&:strip)
args.each do |url|
target = lookup(context, url)
targets.push(target)
end
api_params = targets.collect { |v| "target[]=#{v}" }.join("&")
response = get_response(api_params)
site = context.registers[:site]
@converter = site.getConverterImpl(::Jekyll::Converters::Markdown)
html_output_for(response)
end
def html_output_for(response)
""
end
def url_params_for(api_params)
api_params.keys.sort.map do |k|
"#{CGI::escape(k)}=#{CGI::escape(api_params[k])}"
end.join('&')
end
def get_response(api_params)
api_uri = URI.parse(@api_endpoint + "?#{api_params}")
response = Net::HTTP.get(api_uri.host, api_uri.request_uri)
if response
JSON.parse(response)
else