pixyll_ashawley 2.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.txt +22 -0
- data/README.md +252 -0
- data/_includes/ajaxify_content_form.html +30 -0
- data/_includes/footer.html +14 -0
- data/_includes/head.html +105 -0
- data/_includes/header.html +14 -0
- data/_includes/navigation.html +13 -0
- data/_includes/pagination.html +23 -0
- data/_includes/post_footer.html +10 -0
- data/_includes/share_buttons.html +41 -0
- data/_includes/social_links.html +59 -0
- data/_layouts/center.html +21 -0
- data/_layouts/default.html +32 -0
- data/_layouts/home.html +28 -0
- data/_layouts/page.html +11 -0
- data/_layouts/post.html +71 -0
- data/_sass/_animations.scss +60 -0
- data/_sass/_base.scss +34 -0
- data/_sass/_basscss.scss +25 -0
- data/_sass/_blockquotes.scss +16 -0
- data/_sass/_clearfix.scss +8 -0
- data/_sass/_code.scss +70 -0
- data/_sass/_footer.scss +29 -0
- data/_sass/_forms.scss +106 -0
- data/_sass/_gists.scss +12 -0
- data/_sass/_header.scss +50 -0
- data/_sass/_links.scss +53 -0
- data/_sass/_measure.scss +4 -0
- data/_sass/_media-queries.scss +64 -0
- data/_sass/_pagination.scss +52 -0
- data/_sass/_positions.scss +7 -0
- data/_sass/_posts.scss +48 -0
- data/_sass/_social-icons.scss +25 -0
- data/_sass/_tables.scss +45 -0
- data/_sass/_typography.scss +24 -0
- data/_sass/_variables.scss +121 -0
- data/_sass/basscss/_base-buttons.scss +28 -0
- data/_sass/basscss/_base-forms.scss +57 -0
- data/_sass/basscss/_base-reset.scss +20 -0
- data/_sass/basscss/_base-typography.scss +101 -0
- data/_sass/basscss/_buttons-blue.scss +27 -0
- data/_sass/basscss/_color-base.scss +28 -0
- data/_sass/basscss/_colors.scss +97 -0
- data/_sass/basscss/_syntax-highlighting.scss +119 -0
- data/_sass/basscss/_utility-headings.scss +37 -0
- data/_sass/basscss/_utility-typography.scss +38 -0
- data/_sass/basscss/_utility-white-space.scss +182 -0
- data/assets/css/main.scss +35 -0
- metadata +149 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 78c40fb447a731138505c351de3fc87931c53f2a
|
4
|
+
data.tar.gz: 9115e0d00ff485d434cf87c269a64705c16e5651
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: f73a50bf3b05bee743b1c001f1d52e01db6715b0b2a3cf6494686df00b776703f40eb17291ca631d334e5b8c2d4f7d815b670cc5f7796aaa657192563dcb0609
|
7
|
+
data.tar.gz: 1b025b57c1a39fd038736f5b6164cc522ada2dcf6be77c6237ec114e086b4a0e01ce3dc941a101591b59f1d05670fa216869de92ca5ea15d19c948a47c8918cf
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2014-2015 John Otander
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,252 @@
|
|
1
|
+
# Pixyll
|
2
|
+
|
3
|
+
[pixyll.com](http://www.pixyll.com)
|
4
|
+
|
5
|
+
![Pixyll screenshot](https://cloud.githubusercontent.com/assets/1424573/3847467/134aa236-1e66-11e4-8421-4e8c122118dc.png)
|
6
|
+
|
7
|
+
Pixyll is a simple, beautiful theme for Jekyll that emphasizes content rather than aesthetic fluff. It's mobile _first_, fluidly responsive, and delightfully lightweight.
|
8
|
+
|
9
|
+
It's pretty minimal, but leverages large type and drastic contrast to make a statement, on all devices.
|
10
|
+
|
11
|
+
This Jekyll theme was crafted with <3 by [John Otander](http://johnotander.com)
|
12
|
+
([@4lpine](https://twitter.com/4lpine)).
|
13
|
+
|
14
|
+
中文版 <https://github.com/ee0703/pixyll-zh-cn>.
|
15
|
+
|
16
|
+
## Getting Started
|
17
|
+
|
18
|
+
If you're completely new to Jekyll, I recommend checking out the documentation at <http://jekyllrb.com> or there's a tutorial by [Smashing Magazine](http://www.smashingmagazine.com/2014/08/01/build-blog-jekyll-github-pages/).
|
19
|
+
|
20
|
+
```
|
21
|
+
$ git clone -o upstream git@github.com:johnotander/pixyll.git
|
22
|
+
$ cd pixyll
|
23
|
+
$ gem install bundler # If you don't have bundler installed
|
24
|
+
$ bundle install
|
25
|
+
```
|
26
|
+
|
27
|
+
Alternatively, if want to install the theme as a Gem, you can add this
|
28
|
+
line to your Gemfile:
|
29
|
+
|
30
|
+
```ruby
|
31
|
+
gem "pixyll"
|
32
|
+
```
|
33
|
+
|
34
|
+
Then, add this line to your Jekyll site:
|
35
|
+
|
36
|
+
```yaml
|
37
|
+
theme: pixyll
|
38
|
+
```
|
39
|
+
|
40
|
+
And then execute:
|
41
|
+
|
42
|
+
$ bundle install
|
43
|
+
|
44
|
+
#### Verify your Jekyll version
|
45
|
+
|
46
|
+
It's important to also check your version of Jekyll since this project uses Native Sass which
|
47
|
+
is [only supported by 2.0+](http://jekyllrb.com/news/2014/05/06/jekyll-turns-2-0-0/).
|
48
|
+
|
49
|
+
### Fork, then clone
|
50
|
+
|
51
|
+
Fork the repo, and then clone it so you've got the code locally.
|
52
|
+
|
53
|
+
If `git remote -v` doesn't have your fork listed, you can do the following to add it:
|
54
|
+
|
55
|
+
```
|
56
|
+
git remote add origin git@github.com:USER/pixyll.git
|
57
|
+
```
|
58
|
+
|
59
|
+
Where `USER` above is your GitHub user name.
|
60
|
+
|
61
|
+
### Modify the `_config.yml`
|
62
|
+
|
63
|
+
The `_config.yml` located in the root of the Pixyll directory contains all of the configuration details
|
64
|
+
for the Jekyll site. The defaults are:
|
65
|
+
|
66
|
+
```yml
|
67
|
+
# Site settings
|
68
|
+
title: Pixyll
|
69
|
+
email: your_email@example.com
|
70
|
+
author: John Otander
|
71
|
+
description: "A simple, beautiful theme for Jekyll that emphasizes content rather than aesthetic fluff."
|
72
|
+
baseurl: ""
|
73
|
+
url: "http://pixyll.com"
|
74
|
+
|
75
|
+
# Build settings
|
76
|
+
markdown: kramdown
|
77
|
+
permalink: pretty
|
78
|
+
paginate: 3
|
79
|
+
```
|
80
|
+
|
81
|
+
### Jekyll Serve
|
82
|
+
|
83
|
+
Then, start the Jekyll Server. I always like to give the `--watch` option so it updates the generated HTML when I make changes.
|
84
|
+
|
85
|
+
```
|
86
|
+
$ jekyll serve --watch
|
87
|
+
```
|
88
|
+
|
89
|
+
Now you can navigate to `localhost:4000` in your browser to see the site.
|
90
|
+
|
91
|
+
### Using Github Pages
|
92
|
+
|
93
|
+
You can host your Jekyll site for free with Github Pages. [Click here](https://pages.github.com/) for more information.
|
94
|
+
|
95
|
+
If you are using the gem (see above), then you need to add the the
|
96
|
+
github-pages gem to your Gemfile:
|
97
|
+
|
98
|
+
```ruby
|
99
|
+
gem 'github-pages'
|
100
|
+
```
|
101
|
+
|
102
|
+
#### A configuration tweak if you're using a gh-pages sub-folder
|
103
|
+
|
104
|
+
In addition to your github-username.github.io repo that maps to the root url, you can serve up sites by using a gh-pages branch for other repos so they're available at github-username.github.io/repo-name.
|
105
|
+
|
106
|
+
This will require you to modify the `_config.yml` like so:
|
107
|
+
|
108
|
+
```yml
|
109
|
+
# Site settings
|
110
|
+
title: Repo Name
|
111
|
+
email: your_email@example.com
|
112
|
+
author: John Otander
|
113
|
+
description: "Repo description"
|
114
|
+
baseurl: "/repo-name"
|
115
|
+
url: "http://github-username.github.io"
|
116
|
+
|
117
|
+
# Build settings
|
118
|
+
markdown: kramdown
|
119
|
+
permalink: pretty
|
120
|
+
paginate: 3
|
121
|
+
```
|
122
|
+
|
123
|
+
This will ensure that the the correct relative path is constructed for your assets and posts. Also, in order to run the project locally, you will need to specify the blank string for the baseurl: `$ jekyll serve --baseurl ''`.
|
124
|
+
|
125
|
+
##### If you don't want the header to link back to the root url
|
126
|
+
|
127
|
+
You will also need to tweak the header include `/{{ site.baseurl }}`:
|
128
|
+
|
129
|
+
```html
|
130
|
+
<header class="site-header px2 px-responsive">
|
131
|
+
<div class="mt2 wrap">
|
132
|
+
<div class="measure">
|
133
|
+
<a href="{{ site.url }}/{{ site.baseurl }}">{{ site.title }}</a>
|
134
|
+
<nav class="site-nav right">
|
135
|
+
{% include navigation.html %}
|
136
|
+
</nav>
|
137
|
+
</div>
|
138
|
+
</div>
|
139
|
+
</header>
|
140
|
+
```
|
141
|
+
|
142
|
+
A relevant Jekyll Github Issue: <https://github.com/jekyll/jekyll/issues/332>
|
143
|
+
|
144
|
+
### Contact Form
|
145
|
+
|
146
|
+
The contact form uses <http://formspree.io>. It will require you to fill the form out and submit it once, before going live, to confirm your email.
|
147
|
+
|
148
|
+
More setup instructions and advanced options can be found at [http://formspree.io](http://formspree.io/)
|
149
|
+
|
150
|
+
|
151
|
+
### Disqus
|
152
|
+
|
153
|
+
To configure Disqus, set up a [Disqus site](https://disqus.com/admin/create/) with the same name as your site. Then, in `_config.yml`, edit the `disqus_shortname` value to enable Disqus.
|
154
|
+
|
155
|
+
### txtpen
|
156
|
+
|
157
|
+
To configure txtpen, set up a [txtpen site](https://txtpen.com/go) with the same name as your site. Then, in `_config.yml`, edit the `txtpen_sitename` value to enable txtpen
|
158
|
+
|
159
|
+
### Customizing the CSS
|
160
|
+
|
161
|
+
All variables can be found in the `_sass/_variables.scss` file, toggle these as you'd like to change the look and feel of Pixyll.
|
162
|
+
|
163
|
+
### Page Animation
|
164
|
+
|
165
|
+
If you would like to add a [fade-in-down effect](http://daneden.github.io/animate.css/), you can add `animated: true` to your `_config.yml`.
|
166
|
+
|
167
|
+
### AnchorJS
|
168
|
+
|
169
|
+
[AnchorJS](https://github.com/bryanbraun/anchorjs): _A JavaScript utility for adding deep anchor links to existing page content. AnchorJS is lightweight, accessible, and has no dependencies._ You can turn it on by toggling `enable_anchorjs`. Because it offers many ways for customization, tweaks should be done in `_includes/footer.html`. Default settings after turning AnchorJS on are:
|
170
|
+
|
171
|
+
```html
|
172
|
+
<script>
|
173
|
+
anchors.options.visible = 'always';
|
174
|
+
anchors.add('article h2, article h3, article h4, article h5, article h6');
|
175
|
+
</script>
|
176
|
+
```
|
177
|
+
|
178
|
+
See [documentation](http://bryanbraun.github.io/anchorjs/#basic-usage) for more options.
|
179
|
+
|
180
|
+
### Put in a Pixyll Plug
|
181
|
+
|
182
|
+
If you want to give credit to the Pixyll theme with a link to <http://pixyll.com> or my personal website <http://johnotander.com> somewhere, that'd be awesome. No worries if you don't.
|
183
|
+
|
184
|
+
### Web analytics and search engines
|
185
|
+
|
186
|
+
You can measure visits to your website either by using [Google Analytics](https://www.google.com/analytics/) tracking embed or the more advanced [Google Tag Manager](https://www.google.com/analytics/tag-manager/) container.
|
187
|
+
* For Google Analytics set up the value for `google_analytics`, it should be something like `google_analytics: UA-XXXXXXXX-X`.
|
188
|
+
* For Google Tag Manager set up the value for `google_tag_manager`, it should be something like: `google_tag_manager: GTM-XXXXX`.
|
189
|
+
* _Do not_ set both of above methods because this will cause conflicts and skew your reporting data.
|
190
|
+
* Remember that you need to properly configure the GTM container in its admin panel if you want it to work. More info is available in [GTM's docs](https://www.google.com/analytics/tag-manager/resources/).
|
191
|
+
|
192
|
+
Your website is, by default, set to be allowed for crawling and indexing by search engines. (Unless you made yourself a custom robots.txt file). You can use front matter settings on each page to control how search engines will it. Sometimes you may want to exclude a particular page from indexing or forbid Google to store a copy of your page in its cache. It is up to you. Use the `meta_robots` frontmatter key and assign values based on [this table](https://developers.google.com/webmasters/control-crawl-index/docs/robots_meta_tag?hl=en#valid-indexing--serving-directives). Some examples:
|
193
|
+
|
194
|
+
```yaml
|
195
|
+
# exclude page from index
|
196
|
+
meta_robots: noindex
|
197
|
+
|
198
|
+
# allow indexing, disallow caching
|
199
|
+
meta_robots: noarchive
|
200
|
+
|
201
|
+
# allow indexing, disallow crawling links
|
202
|
+
meta_robots: nofollow
|
203
|
+
|
204
|
+
# disallow indexing, follow links
|
205
|
+
meta_robots: noindex,follow
|
206
|
+
```
|
207
|
+
|
208
|
+
In order to get more information about your website's status in search engines, you can register it in [Google Search Console](https://www.google.com/webmasters/tools/home) and/or [Bing Webmaster Tools](http://www.bing.com/toolbox/webmaster). Both these tools will ask you to authorize your website with them and there are couple of ways to do that. Pixyll supports verification via meta tags - just fill in values for `google_verification` and/or `bing_verification` in `_config.yml`, the verification strings and meta tags will then be added automatically.
|
209
|
+
|
210
|
+
If search engine optimization is your thing, you can also set up `meta_description` values for each page/post. By default Pixyll uses `summary` to populate the `<meta name="description" content="...">` tag and falls back to `description` from `_config.yml` if `summary` is not present in page/post's front matter. The `summary` is also used for generating Open Graph tags. Why would you want to use a dedicated variable for meta description? Because character limit to properly display this description in search results (as a snippet) is way smaller than in Open Graph. It is recommended to keep it at 155-160 characters, for more in-depth info read [this article](https://moz.com/blog/i-cant-drive-155-meta-descriptions-in-2015).
|
211
|
+
|
212
|
+
And lastly - if you happen to write in language other than English be sure to change `og_locale` in `_config.yml` to reflect it.
|
213
|
+
|
214
|
+
### Enjoy
|
215
|
+
|
216
|
+
I hope you enjoy using Pixyll. If you encounter any issues, please feel free to let me know by creating an [issue](https://github.com/johnotander/pixyll/issues). I'd love to help.
|
217
|
+
|
218
|
+
## Upgrading Pixyll
|
219
|
+
|
220
|
+
Pixyll is always being improved by its users, so sometimes one may need to upgrade.
|
221
|
+
|
222
|
+
#### Ensure there's an upstream remote
|
223
|
+
|
224
|
+
If `git remote -v` doesn't have an upstream listed, you can do the following to add it:
|
225
|
+
|
226
|
+
```
|
227
|
+
git remote add upstream https://github.com/johnotander/pixyll.git
|
228
|
+
```
|
229
|
+
|
230
|
+
#### Pull in the latest changes
|
231
|
+
|
232
|
+
```
|
233
|
+
git pull upstream master
|
234
|
+
```
|
235
|
+
|
236
|
+
There may be merge conflicts, so be sure to fix the files that git lists if they occur. That's it!
|
237
|
+
|
238
|
+
## Thanks to the following
|
239
|
+
|
240
|
+
* [BASSCSS](http://basscss.com)
|
241
|
+
* [Jekyll](http://jekyllrb.com)
|
242
|
+
* [Refills](http://refills.bourbon.io/)
|
243
|
+
* [Solarized](http://ethanschoonover.com/solarized)
|
244
|
+
* [Animate.css](http://daneden.github.io/animate.css/)
|
245
|
+
|
246
|
+
## Contributing
|
247
|
+
|
248
|
+
1. Fork it
|
249
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
250
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
251
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
252
|
+
5. Create new Pull Request
|
@@ -0,0 +1,30 @@
|
|
1
|
+
<script>
|
2
|
+
var contactForm = document.querySelector('form'),
|
3
|
+
inputEmail = contactForm.querySelector('[name="email"]'),
|
4
|
+
textAreaMessage = contactForm.querySelector('[name="content"]'),
|
5
|
+
sendButton = contactForm.querySelector('button');
|
6
|
+
|
7
|
+
sendButton.addEventListener('click', function(event){
|
8
|
+
event.preventDefault();
|
9
|
+
|
10
|
+
sendButton.innerHTML = '{{ site.text.contact.ajax.sending }}';
|
11
|
+
|
12
|
+
var xhr = new XMLHttpRequest();
|
13
|
+
xhr.open('POST', '//formspree.io/{{ site.email }}', true);
|
14
|
+
xhr.setRequestHeader("Accept", "application/json")
|
15
|
+
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded")
|
16
|
+
|
17
|
+
xhr.send(
|
18
|
+
"email=" + inputEmail.value +
|
19
|
+
"&message=" + textAreaMessage.value);
|
20
|
+
|
21
|
+
xhr.onloadend = function (res) {
|
22
|
+
if (res.target.status === 200){
|
23
|
+
sendButton.innerHTML = '{{ site.text.contact.ajax.sent }}';
|
24
|
+
}
|
25
|
+
else {
|
26
|
+
sendButton.innerHTML = '{{ site.text.contact.ajax.error }}';
|
27
|
+
}
|
28
|
+
}
|
29
|
+
});
|
30
|
+
</script>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<footer class="center">
|
2
|
+
<div class="measure">
|
3
|
+
<small>
|
4
|
+
Theme crafted with <3 by <a href="http://johnotander.com">John Otander</a> (<a href="https://twitter.com/4lpine">@4lpine</a>).<br>
|
5
|
+
</> available on <a href="https://github.com/johnotander/pixyll">GitHub</a>.
|
6
|
+
</small>
|
7
|
+
</div>
|
8
|
+
</footer>
|
9
|
+
{% if site.enable_anchorjs %}<!-- AnchorJS -->
|
10
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.0.0/anchor.min.js"></script>
|
11
|
+
<script>
|
12
|
+
anchors.options.visible = 'always';
|
13
|
+
anchors.add('article h2, article h3, article h4, article h5, article h6');
|
14
|
+
</script>{% endif %}
|
data/_includes/head.html
ADDED
@@ -0,0 +1,105 @@
|
|
1
|
+
<head>
|
2
|
+
{% if site.google_tag_manager %}
|
3
|
+
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
|
4
|
+
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
|
5
|
+
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
|
6
|
+
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
|
7
|
+
})(window,document,'script','dataLayer','{{ site.google_tag_manager }}');</script>
|
8
|
+
{% endif %}
|
9
|
+
<meta charset="utf-8">
|
10
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
11
|
+
<title>{% if page.title %}{{ page.title | strip_html }} – {% endif %}{{ site.title | strip_html }}</title>
|
12
|
+
<link rel="dns-prefetch" href="//maxcdn.bootstrapcdn.com">
|
13
|
+
<link rel="dns-prefetch" href="//cdnjs.cloudflare.com">
|
14
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
15
|
+
<meta name="description" content="{% if page.meta_description %}{{ page.meta_description | xml_escape }}{% elsif page.summary %}{{ page.summary | xml_escape }}{% else %}{{ site.description | xml_escape }}{% endif %}">
|
16
|
+
{% if page.meta_robots %}<meta name="robots" content="{{ page.meta_robots }}">
|
17
|
+
{% else %}<meta name="robots" content="all">{% endif %}
|
18
|
+
<meta name="author" content="{{ site.author }}">
|
19
|
+
{% if site.fb_page %}<meta property="fb:pages" content="{{ site.fb_page_id }}" />{% endif %}
|
20
|
+
{% if page.categories %}<meta name="keywords" content="{{ page.categories | join: ', ' }}">{% endif %}
|
21
|
+
<link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}">
|
22
|
+
<link rel="alternate" type="application/rss+xml" title="RSS Feed for {{ site.title }}" href="{{ "/feed.xml" | prepend: site.baseurl }}" />
|
23
|
+
|
24
|
+
<!-- Custom CSS -->
|
25
|
+
<link rel="stylesheet" href="{{ "/assets/css/main.css" | prepend: site.baseurl }}?{{ site.time | date: "%Y%m%d%H%M" }}" type="text/css">
|
26
|
+
|
27
|
+
<!-- Fonts -->
|
28
|
+
{% if site.extended_fonts %}
|
29
|
+
<link href='//fonts.googleapis.com/css?family=Merriweather:900,900italic,300,300italic&subset=latin-ext,latin' rel='stylesheet' type='text/css'>
|
30
|
+
<link href='//fonts.googleapis.com/css?family=Lato:900,300&subset=latin-ext,latin' rel='stylesheet' type='text/css'>
|
31
|
+
{% else %}
|
32
|
+
<link href='//fonts.googleapis.com/css?family=Merriweather:900,900italic,300,300italic' rel='stylesheet' type='text/css'>
|
33
|
+
<link href='//fonts.googleapis.com/css?family=Lato:900,300' rel='stylesheet' type='text/css'>
|
34
|
+
{% endif %}
|
35
|
+
{% if site.show_social_icons or site.show_sharing_icons %}
|
36
|
+
<link href="//maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css" rel="stylesheet">
|
37
|
+
{% endif %}
|
38
|
+
|
39
|
+
<!-- MathJax -->
|
40
|
+
{% if site.enable_mathjax %}
|
41
|
+
<script type="text/javascript" async
|
42
|
+
src="//cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
|
43
|
+
</script>
|
44
|
+
{% endif %}
|
45
|
+
|
46
|
+
<!-- Verifications -->
|
47
|
+
{% if site.google_verification %}
|
48
|
+
<meta name="google-site-verification" content="{{ site.google_verification }}" />
|
49
|
+
{% endif %}
|
50
|
+
{% if site.bing_verification %}
|
51
|
+
<meta name="msvalidate.01" content="{{ site.bing_verification }}" />
|
52
|
+
{% endif %}
|
53
|
+
|
54
|
+
<!-- Open Graph -->
|
55
|
+
<!-- From: https://github.com/mmistakes/hpstr-jekyll-theme/blob/master/_includes/head.html -->
|
56
|
+
<meta property="og:locale" content="{{ site.text.og_locale }}">
|
57
|
+
<meta property="og:type" content="article">
|
58
|
+
<meta property="og:title" content="{% if page.title %}{{ page.title | xml_escape }}{% else %}{{ site.title | xml_escape }}{% endif %}">
|
59
|
+
<meta property="og:description" content="{% if page.description %}{{ page.description | xml_escape }}{% else %}{{ site.description | xml_escape }}{% endif %}">
|
60
|
+
<meta property="og:url" content="{{ site.url }}{{ page.url }}">
|
61
|
+
<meta property="og:site_name" content="{{ site.title | xml_escape }}">
|
62
|
+
{% if site.post_preview_image %}
|
63
|
+
<meta property="og:image" content="{{ site.url }}/images/me.jpeg">
|
64
|
+
{% endif %}
|
65
|
+
|
66
|
+
<!-- Twitter Card -->
|
67
|
+
<meta name="twitter:card" content="summary" />
|
68
|
+
{% if site.twitter_username %}
|
69
|
+
<meta name="twitter:site" content="@{{ site.twitter_username }}" />
|
70
|
+
<meta name="twitter:creator" content="@{{ site.twitter_username }}" />
|
71
|
+
{% endif %}
|
72
|
+
<meta name="twitter:title" content="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}" />
|
73
|
+
<meta name="twitter:description" content="{% if page.summary %}{{ page.summary }}{% else %}{{ site.description }}{% endif %}" />
|
74
|
+
<meta name="twitter:url" content="{{ site.url }}{{ page.url }}" />
|
75
|
+
{% if site.post_preview_image %}
|
76
|
+
<meta name="twitter:image" content="{{ site.url }}/images/me.jpeg" />
|
77
|
+
{% endif %}
|
78
|
+
|
79
|
+
<!-- Icons -->
|
80
|
+
<link rel="apple-touch-icon" sizes="57x57" href="/apple-touch-icon-57x57.png">
|
81
|
+
<link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-114x114.png">
|
82
|
+
<link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-72x72.png">
|
83
|
+
<link rel="apple-touch-icon" sizes="144x144" href="/apple-touch-icon-144x144.png">
|
84
|
+
<link rel="apple-touch-icon" sizes="60x60" href="/apple-touch-icon-60x60.png">
|
85
|
+
<link rel="apple-touch-icon" sizes="120x120" href="/apple-touch-icon-120x120.png">
|
86
|
+
<link rel="apple-touch-icon" sizes="76x76" href="/apple-touch-icon-76x76.png">
|
87
|
+
<link rel="apple-touch-icon" sizes="152x152" href="/apple-touch-icon-152x152.png">
|
88
|
+
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon-180x180.png">
|
89
|
+
<link rel="icon" type="image/png" href="/favicon-192x192.png" sizes="192x192">
|
90
|
+
<link rel="icon" type="image/png" href="/favicon-160x160.png" sizes="160x160">
|
91
|
+
<link rel="icon" type="image/png" href="/favicon-96x96.png" sizes="96x96">
|
92
|
+
<link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16">
|
93
|
+
<link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32">
|
94
|
+
|
95
|
+
{% if site.google_analytics %}
|
96
|
+
<script type="text/javascript">
|
97
|
+
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
98
|
+
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
99
|
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
100
|
+
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
101
|
+
ga('create', '{{ site.google_analytics }}', 'auto');
|
102
|
+
ga('send', 'pageview');
|
103
|
+
</script>
|
104
|
+
{% endif %}
|
105
|
+
</head>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<header class="site-header px2 px-responsive">
|
2
|
+
<div class="mt2 wrap">
|
3
|
+
<div class="measure">
|
4
|
+
<a href="{{ site.url }}" class="site-title">{{ site.title }}</a>
|
5
|
+
<nav class="site-nav">
|
6
|
+
{% include navigation.html %}
|
7
|
+
</nav>
|
8
|
+
<div class="clearfix"></div>
|
9
|
+
{% if site.show_social_icons %}
|
10
|
+
{% include social_links.html %}
|
11
|
+
{% endif %}
|
12
|
+
</div>
|
13
|
+
</div>
|
14
|
+
</header>
|