Switch themes
10
404.html
Normal file
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
layout: default
|
||||
title: "404: Page not found"
|
||||
permalink: 404.html
|
||||
---
|
||||
|
||||
<div class="page">
|
||||
<h1 class="page-title">404: Page not found</h1>
|
||||
<p class="lead">Sorry, we've misplaced that URL or it's pointing to something that doesn't exist. <a href="{{ site.baseurl }}">Head back home</a> to try finding it again.</p>
|
||||
</div>
|
15
404.md
|
@ -1,15 +0,0 @@
|
|||
---
|
||||
layout: page
|
||||
title: "Page Not Found"
|
||||
description: "Page not found. Your pixels are in another canvas."
|
||||
---
|
||||
|
||||
Sorry, but the page you were trying to view does not exist --- perhaps you can try searching for it below.
|
||||
|
||||
<script type="text/javascript">
|
||||
var GOOG_FIXURL_LANG = 'en';
|
||||
var GOOG_FIXURL_SITE = '{{ site.url }}'
|
||||
</script>
|
||||
<script type="text/javascript"
|
||||
src="//linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js">
|
||||
</script>
|
11
Gemfile
|
@ -1,12 +1,3 @@
|
|||
source 'https://rubygems.org'
|
||||
ruby '2.1.4'
|
||||
|
||||
gem 'jekyll', '~> 2.4.0'
|
||||
gem 'jekyll-assets', '~> 0.10.0'
|
||||
|
||||
gem 'kramdown', '~> 1.4.2'
|
||||
gem 'therubyracer', '~> 0.12.1'
|
||||
gem 'less', '~> 2.6.0'
|
||||
|
||||
gem 'uglifier', '~> 2.5.3'
|
||||
gem 'yui-compressor', '~> 0.12.0'
|
||||
gem 'jekyll', '~> 2.5.2'
|
||||
|
|
63
Gemfile.lock
|
@ -4,20 +4,18 @@ GEM
|
|||
blankslate (2.1.2.4)
|
||||
celluloid (0.16.0)
|
||||
timers (~> 4.0.0)
|
||||
classifier-reborn (2.0.1)
|
||||
classifier-reborn (2.0.2)
|
||||
fast-stemmer (~> 1.0)
|
||||
coffee-script (2.3.0)
|
||||
coffee-script-source
|
||||
execjs
|
||||
coffee-script-source (1.8.0)
|
||||
colorator (0.1)
|
||||
commonjs (0.2.7)
|
||||
execjs (2.2.1)
|
||||
execjs (2.2.2)
|
||||
fast-stemmer (1.0.2)
|
||||
ffi (1.9.6)
|
||||
hike (1.2.3)
|
||||
hitimes (1.2.2)
|
||||
jekyll (2.4.0)
|
||||
jekyll (2.5.2)
|
||||
classifier-reborn (~> 2.0)
|
||||
colorator (~> 0.1)
|
||||
jekyll-coffeescript (~> 1.0)
|
||||
|
@ -32,78 +30,41 @@ GEM
|
|||
redcarpet (~> 3.1)
|
||||
safe_yaml (~> 1.0)
|
||||
toml (~> 0.1.0)
|
||||
jekyll-assets (0.10.0)
|
||||
jekyll (~> 2.0)
|
||||
sass (~> 3.2)
|
||||
sprockets (~> 2.10)
|
||||
sprockets-helpers
|
||||
sprockets-sass
|
||||
jekyll-coffeescript (1.0.1)
|
||||
coffee-script (~> 2.2)
|
||||
jekyll-gist (1.1.0)
|
||||
jekyll-paginate (1.0.0)
|
||||
jekyll-paginate (1.1.0)
|
||||
jekyll-sass-converter (1.2.1)
|
||||
sass (~> 3.2)
|
||||
jekyll-watch (1.1.1)
|
||||
jekyll-watch (1.1.2)
|
||||
listen (~> 2.7)
|
||||
json (1.8.1)
|
||||
kramdown (1.4.2)
|
||||
less (2.6.0)
|
||||
commonjs (~> 0.2.7)
|
||||
libv8 (3.16.14.7)
|
||||
kramdown (1.5.0)
|
||||
liquid (2.6.1)
|
||||
listen (2.7.11)
|
||||
listen (2.8.3)
|
||||
celluloid (>= 0.15.2)
|
||||
rb-fsevent (>= 0.9.3)
|
||||
rb-inotify (>= 0.9)
|
||||
mercenary (0.3.4)
|
||||
multi_json (1.10.1)
|
||||
mercenary (0.3.5)
|
||||
parslet (1.5.0)
|
||||
blankslate (~> 2.0)
|
||||
posix-spawn (0.3.9)
|
||||
pygments.rb (0.6.0)
|
||||
posix-spawn (~> 0.3.6)
|
||||
yajl-ruby (~> 1.1.0)
|
||||
rack (1.5.2)
|
||||
rb-fsevent (0.9.4)
|
||||
rb-inotify (0.9.5)
|
||||
ffi (>= 0.5.0)
|
||||
redcarpet (3.1.2)
|
||||
ref (1.0.5)
|
||||
redcarpet (3.2.1)
|
||||
safe_yaml (1.0.4)
|
||||
sass (3.4.5)
|
||||
sprockets (2.12.2)
|
||||
hike (~> 1.2)
|
||||
multi_json (~> 1.0)
|
||||
rack (~> 1.0)
|
||||
tilt (~> 1.1, != 1.3.0)
|
||||
sprockets-helpers (1.1.0)
|
||||
sprockets (~> 2.0)
|
||||
sprockets-sass (1.2.0)
|
||||
sprockets (~> 2.0)
|
||||
tilt (~> 1.1)
|
||||
therubyracer (0.12.1)
|
||||
libv8 (~> 3.16.14.0)
|
||||
ref
|
||||
tilt (1.4.1)
|
||||
sass (3.4.9)
|
||||
timers (4.0.1)
|
||||
hitimes
|
||||
toml (0.1.1)
|
||||
toml (0.1.2)
|
||||
parslet (~> 1.5.0)
|
||||
uglifier (2.5.3)
|
||||
execjs (>= 0.3.0)
|
||||
json (>= 1.8.0)
|
||||
yajl-ruby (1.1.0)
|
||||
yui-compressor (0.12.0)
|
||||
|
||||
PLATFORMS
|
||||
ruby
|
||||
|
||||
DEPENDENCIES
|
||||
jekyll (~> 2.4.0)
|
||||
jekyll-assets (~> 0.10.0)
|
||||
kramdown (~> 1.4.2)
|
||||
less (~> 2.6.0)
|
||||
therubyracer (~> 0.12.1)
|
||||
uglifier (~> 2.5.3)
|
||||
yui-compressor (~> 0.12.0)
|
||||
jekyll (~> 2.5.2)
|
||||
|
|
4
Makefile
|
@ -6,6 +6,6 @@ compile:
|
|||
|
||||
upload:
|
||||
@echo "=== Syncing files"
|
||||
@rsync -avz --no-o --no-g -e ssh --chmod=og=r -p --delete _site/ kempkens.io:/var/www/blog
|
||||
@rsync -avz --no-o --no-g -e ssh --chmod=og=r -p --delete _site/ kempkens.io:/home/webapps/blog
|
||||
@echo "=== Changing permissions"
|
||||
@ssh kempkens.io chown -R www-data:www-data /var/www/blog
|
||||
@ssh kempkens.io chown -R webapps:webapps /home/webapps/blog
|
||||
|
|
Before Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 68 KiB |
Before Width: | Height: | Size: 114 KiB |
Before Width: | Height: | Size: 64 KiB |
Before Width: | Height: | Size: 57 KiB |
Before Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 36 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 30 KiB |
Before Width: | Height: | Size: 58 KiB |
Before Width: | Height: | Size: 61 KiB |
Before Width: | Height: | Size: 84 KiB |
|
@ -1,31 +0,0 @@
|
|||
//= require plugins/jquery.dlmenu.js
|
||||
//= require plugins/jquery.fitvids.js
|
||||
//= require plugins/respond.js
|
||||
//= require plugins/socialcount.js
|
||||
|
||||
/*! Plugin options and other jQuery stuff */
|
||||
|
||||
// dl-menu options
|
||||
$(function() {
|
||||
$( '#dl-menu' ).dlmenu({
|
||||
animationClasses : { classin : 'dl-animate-in', classout : 'dl-animate-out' }
|
||||
});
|
||||
});
|
||||
|
||||
// FitVids options
|
||||
$(function() {
|
||||
$("article").fitVids();
|
||||
});
|
||||
|
||||
$(".close-menu").click(function () {
|
||||
$(".menu").toggleClass("disabled");
|
||||
$(".links").toggleClass("enabled");
|
||||
});
|
||||
|
||||
$(".about").click(function () {
|
||||
$("#about").css('display','block');
|
||||
});
|
||||
|
||||
$(".close-about").click(function () {
|
||||
$("#about").css('display','');
|
||||
});
|
|
@ -1,255 +0,0 @@
|
|||
/**
|
||||
* jquery.dlmenu.js v1.0.1
|
||||
* http://www.codrops.com
|
||||
*
|
||||
* Licensed under the MIT license.
|
||||
* http://www.opensource.org/licenses/mit-license.php
|
||||
*
|
||||
* Copyright 2013, Codrops
|
||||
* http://www.codrops.com
|
||||
*/
|
||||
;( function( $, window, undefined ) {
|
||||
|
||||
'use strict';
|
||||
|
||||
// global
|
||||
var Modernizr = window.Modernizr, $body = $( 'body' );
|
||||
|
||||
$.DLMenu = function( options, element ) {
|
||||
this.$el = $( element );
|
||||
this._init( options );
|
||||
};
|
||||
|
||||
// the options
|
||||
$.DLMenu.defaults = {
|
||||
// classes for the animation effects
|
||||
animationClasses : { classin : 'dl-animate-in-1', classout : 'dl-animate-out-1' },
|
||||
// callback: click a link that has a sub menu
|
||||
// el is the link element (li); name is the level name
|
||||
onLevelClick : function( el, name ) { return false; },
|
||||
// callback: click a link that does not have a sub menu
|
||||
// el is the link element (li); ev is the event obj
|
||||
onLinkClick : function( el, ev ) { return false; }
|
||||
};
|
||||
|
||||
$.DLMenu.prototype = {
|
||||
_init : function( options ) {
|
||||
|
||||
// options
|
||||
this.options = $.extend( true, {}, $.DLMenu.defaults, options );
|
||||
// cache some elements and initialize some variables
|
||||
this._config();
|
||||
|
||||
var animEndEventNames = {
|
||||
'WebkitAnimation' : 'webkitAnimationEnd',
|
||||
'OAnimation' : 'oAnimationEnd',
|
||||
'msAnimation' : 'MSAnimationEnd',
|
||||
'animation' : 'animationend'
|
||||
},
|
||||
transEndEventNames = {
|
||||
'WebkitTransition' : 'webkitTransitionEnd',
|
||||
'MozTransition' : 'transitionend',
|
||||
'OTransition' : 'oTransitionEnd',
|
||||
'msTransition' : 'MSTransitionEnd',
|
||||
'transition' : 'transitionend'
|
||||
};
|
||||
// animation end event name
|
||||
this.animEndEventName = animEndEventNames[ Modernizr.prefixed( 'animation' ) ] + '.dlmenu';
|
||||
// transition end event name
|
||||
this.transEndEventName = transEndEventNames[ Modernizr.prefixed( 'transition' ) ] + '.dlmenu',
|
||||
// support for css animations and css transitions
|
||||
this.supportAnimations = Modernizr.cssanimations,
|
||||
this.supportTransitions = Modernizr.csstransitions;
|
||||
|
||||
this._initEvents();
|
||||
|
||||
},
|
||||
_config : function() {
|
||||
this.open = false;
|
||||
this.$trigger = this.$el.children( '.dl-trigger' );
|
||||
this.$menu = this.$el.children( 'ul.dl-menu' );
|
||||
this.$menuitems = this.$menu.find( 'li:not(.dl-back)' );
|
||||
this.$el.find( 'ul.dl-submenu' ).prepend( '<li class="dl-back"><a href="#">back</a></li>' );
|
||||
this.$back = this.$menu.find( 'li.dl-back' );
|
||||
},
|
||||
_initEvents : function() {
|
||||
|
||||
var self = this;
|
||||
|
||||
this.$trigger.on( 'click.dlmenu', function() {
|
||||
|
||||
if( self.open ) {
|
||||
self._closeMenu();
|
||||
}
|
||||
else {
|
||||
self._openMenu();
|
||||
}
|
||||
return false;
|
||||
|
||||
} );
|
||||
|
||||
this.$menuitems.on( 'click.dlmenu', function( event ) {
|
||||
|
||||
event.stopPropagation();
|
||||
|
||||
var $item = $(this),
|
||||
$submenu = $item.children( 'ul.dl-submenu' );
|
||||
|
||||
if( $submenu.length > 0 ) {
|
||||
|
||||
var $flyin = $submenu.clone().css({
|
||||
opacity: 0,
|
||||
margin: 0
|
||||
}).insertAfter( self.$menu ),
|
||||
onAnimationEndFn = function() {
|
||||
self.$menu.off( self.animEndEventName ).removeClass( self.options.animationClasses.classout ).addClass( 'dl-subview' );
|
||||
$item.addClass( 'dl-subviewopen' ).parents( '.dl-subviewopen:first' ).removeClass( 'dl-subviewopen' ).addClass( 'dl-subview' );
|
||||
$flyin.remove();
|
||||
};
|
||||
|
||||
setTimeout( function() {
|
||||
$flyin.addClass( self.options.animationClasses.classin );
|
||||
self.$menu.addClass( self.options.animationClasses.classout );
|
||||
if( self.supportAnimations ) {
|
||||
self.$menu.on( self.animEndEventName, onAnimationEndFn );
|
||||
}
|
||||
else {
|
||||
onAnimationEndFn.call();
|
||||
}
|
||||
|
||||
self.options.onLevelClick( $item, $item.children( 'a:first' ).text() );
|
||||
} );
|
||||
|
||||
return false;
|
||||
|
||||
}
|
||||
else {
|
||||
self.options.onLinkClick( $item, event );
|
||||
}
|
||||
|
||||
} );
|
||||
|
||||
this.$back.on( 'click.dlmenu', function( event ) {
|
||||
|
||||
var $this = $( this ),
|
||||
$submenu = $this.parents( 'ul.dl-submenu:first' ),
|
||||
$item = $submenu.parent(),
|
||||
|
||||
$flyin = $submenu.clone().insertAfter( self.$menu );
|
||||
|
||||
var onAnimationEndFn = function() {
|
||||
self.$menu.off( self.animEndEventName ).removeClass( self.options.animationClasses.classin );
|
||||
$flyin.remove();
|
||||
};
|
||||
|
||||
setTimeout( function() {
|
||||
$flyin.addClass( self.options.animationClasses.classout );
|
||||
self.$menu.addClass( self.options.animationClasses.classin );
|
||||
if( self.supportAnimations ) {
|
||||
self.$menu.on( self.animEndEventName, onAnimationEndFn );
|
||||
}
|
||||
else {
|
||||
onAnimationEndFn.call();
|
||||
}
|
||||
|
||||
$item.removeClass( 'dl-subviewopen' );
|
||||
|
||||
var $subview = $this.parents( '.dl-subview:first' );
|
||||
if( $subview.is( 'li' ) ) {
|
||||
$subview.addClass( 'dl-subviewopen' );
|
||||
}
|
||||
$subview.removeClass( 'dl-subview' );
|
||||
} );
|
||||
|
||||
return false;
|
||||
|
||||
} );
|
||||
|
||||
},
|
||||
closeMenu : function() {
|
||||
if( this.open ) {
|
||||
this._closeMenu();
|
||||
}
|
||||
},
|
||||
_closeMenu : function() {
|
||||
var self = this,
|
||||
onTransitionEndFn = function() {
|
||||
self.$menu.off( self.transEndEventName );
|
||||
self._resetMenu();
|
||||
};
|
||||
|
||||
this.$menu.removeClass( 'dl-menuopen' );
|
||||
this.$menu.addClass( 'dl-menu-toggle' );
|
||||
this.$trigger.removeClass( 'dl-active' );
|
||||
|
||||
if( this.supportTransitions ) {
|
||||
this.$menu.on( this.transEndEventName, onTransitionEndFn );
|
||||
}
|
||||
else {
|
||||
onTransitionEndFn.call();
|
||||
}
|
||||
|
||||
this.open = false;
|
||||
},
|
||||
openMenu : function() {
|
||||
if( !this.open ) {
|
||||
this._openMenu();
|
||||
}
|
||||
},
|
||||
_openMenu : function() {
|
||||
var self = this;
|
||||
// clicking somewhere else makes the menu close
|
||||
$body.off( 'click' ).on( 'click.dlmenu', function() {
|
||||
self._closeMenu() ;
|
||||
} );
|
||||
this.$menu.addClass( 'dl-menuopen dl-menu-toggle' ).on( this.transEndEventName, function() {
|
||||
$( this ).removeClass( 'dl-menu-toggle' );
|
||||
} );
|
||||
this.$trigger.addClass( 'dl-active' );
|
||||
this.open = true;
|
||||
},
|
||||
// resets the menu to its original state (first level of options)
|
||||
_resetMenu : function() {
|
||||
this.$menu.removeClass( 'dl-subview' );
|
||||
this.$menuitems.removeClass( 'dl-subview dl-subviewopen' );
|
||||
}
|
||||
};
|
||||
|
||||
var logError = function( message ) {
|
||||
if ( window.console ) {
|
||||
window.console.error( message );
|
||||
}
|
||||
};
|
||||
|
||||
$.fn.dlmenu = function( options ) {
|
||||
if ( typeof options === 'string' ) {
|
||||
var args = Array.prototype.slice.call( arguments, 1 );
|
||||
this.each(function() {
|
||||
var instance = $.data( this, 'dlmenu' );
|
||||
if ( !instance ) {
|
||||
logError( "cannot call methods on dlmenu prior to initialization; " +
|
||||
"attempted to call method '" + options + "'" );
|
||||
return;
|
||||
}
|
||||
if ( !$.isFunction( instance[options] ) || options.charAt(0) === "_" ) {
|
||||
logError( "no such method '" + options + "' for dlmenu instance" );
|
||||
return;
|
||||
}
|
||||
instance[ options ].apply( instance, args );
|
||||
});
|
||||
}
|
||||
else {
|
||||
this.each(function() {
|
||||
var instance = $.data( this, 'dlmenu' );
|
||||
if ( instance ) {
|
||||
instance._init();
|
||||
}
|
||||
else {
|
||||
instance = $.data( this, 'dlmenu', new $.DLMenu( options, this ) );
|
||||
}
|
||||
});
|
||||
}
|
||||
return this;
|
||||
};
|
||||
|
||||
} )( jQuery, window );
|
|
@ -1,81 +0,0 @@
|
|||
/*global jQuery */
|
||||
/*jshint multistr:true, browser:true */
|
||||
/*!
|
||||
* FitVids 1.0
|
||||
*
|
||||
* Copyright 2011, Chris Coyier - http://css-tricks.com + Dave Rupert - http://daverupert.com
|
||||
* Credit to Thierry Koblentz - http://www.alistapart.com/articles/creating-intrinsic-ratios-for-video/
|
||||
* Released under the WTFPL license - http://sam.zoy.org/wtfpl/
|
||||
*
|
||||
* Date: Thu Sept 01 18:00:00 2011 -0500
|
||||
*/
|
||||
|
||||
(function( $ ){
|
||||
|
||||
"use strict";
|
||||
|
||||
$.fn.fitVids = function( options ) {
|
||||
var settings = {
|
||||
customSelector: null
|
||||
};
|
||||
|
||||
var div = document.createElement('div'),
|
||||
ref = document.getElementsByTagName('base')[0] || document.getElementsByTagName('script')[0];
|
||||
|
||||
div.className = 'fit-vids-style';
|
||||
div.innerHTML = '­<style> \
|
||||
.fluid-width-video-wrapper { \
|
||||
width: 100%; \
|
||||
position: relative; \
|
||||
padding: 0; \
|
||||
} \
|
||||
\
|
||||
.fluid-width-video-wrapper iframe, \
|
||||
.fluid-width-video-wrapper object, \
|
||||
.fluid-width-video-wrapper embed { \
|
||||
position: absolute; \
|
||||
top: 0; \
|
||||
left: 0; \
|
||||
width: 100%; \
|
||||
height: 100%; \
|
||||
} \
|
||||
</style>';
|
||||
|
||||
ref.parentNode.insertBefore(div,ref);
|
||||
|
||||
if ( options ) {
|
||||
$.extend( settings, options );
|
||||
}
|
||||
|
||||
return this.each(function(){
|
||||
var selectors = [
|
||||
"iframe[src*='player.vimeo.com']",
|
||||
"iframe[src*='www.youtube.com']",
|
||||
"iframe[src*='www.youtube-nocookie.com']",
|
||||
"iframe[src*='www.kickstarter.com']",
|
||||
"object",
|
||||
"embed"
|
||||
];
|
||||
|
||||
if (settings.customSelector) {
|
||||
selectors.push(settings.customSelector);
|
||||
}
|
||||
|
||||
var $allVideos = $(this).find(selectors.join(','));
|
||||
|
||||
$allVideos.each(function(){
|
||||
var $this = $(this);
|
||||
if (this.tagName.toLowerCase() === 'embed' && $this.parent('object').length || $this.parent('.fluid-width-video-wrapper').length) { return; }
|
||||
var height = ( this.tagName.toLowerCase() === 'object' || ($this.attr('height') && !isNaN(parseInt($this.attr('height'), 10))) ) ? parseInt($this.attr('height'), 10) : $this.height(),
|
||||
width = !isNaN(parseInt($this.attr('width'), 10)) ? parseInt($this.attr('width'), 10) : $this.width(),
|
||||
aspectRatio = height / width;
|
||||
if(!$this.attr('id')){
|
||||
var videoID = 'fitvid' + Math.floor(Math.random()*999999);
|
||||
$this.attr('id', videoID);
|
||||
}
|
||||
$this.wrap('<div class="fluid-width-video-wrapper"></div>').parent('.fluid-width-video-wrapper').css('padding-top', (aspectRatio * 100)+"%");
|
||||
$this.removeAttr('height').removeAttr('width');
|
||||
});
|
||||
});
|
||||
};
|
||||
})( jQuery );
|
|
@ -1,342 +0,0 @@
|
|||
/*! matchMedia() polyfill - Test a CSS media type/query in JS. Authors & copyright (c) 2012: Scott Jehl, Paul Irish, Nicholas Zakas. Dual MIT/BSD license */
|
||||
/*! NOTE: If you're already including a window.matchMedia polyfill via Modernizr or otherwise, you don't need this part */
|
||||
|
||||
window.matchMedia = window.matchMedia || (function( doc, undefined ) {
|
||||
|
||||
"use strict";
|
||||
|
||||
var bool,
|
||||
docElem = doc.documentElement,
|
||||
refNode = docElem.firstElementChild || docElem.firstChild,
|
||||
// fakeBody required for <FF4 when executed in <head>
|
||||
fakeBody = doc.createElement( "body" ),
|
||||
div = doc.createElement( "div" );
|
||||
|
||||
div.id = "mq-test-1";
|
||||
div.style.cssText = "position:absolute;top:-100em";
|
||||
fakeBody.style.background = "none";
|
||||
fakeBody.appendChild(div);
|
||||
|
||||
return function(q){
|
||||
|
||||
div.innerHTML = "­<style media=\"" + q + "\"> #mq-test-1 { width: 42px; }</style>";
|
||||
|
||||
docElem.insertBefore( fakeBody, refNode );
|
||||
bool = div.offsetWidth === 42;
|
||||
docElem.removeChild( fakeBody );
|
||||
|
||||
return {
|
||||
matches: bool,
|
||||
media: q
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}( document ));
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*! Respond.js v1.1.0: min/max-width media query polyfill. (c) Scott Jehl. MIT/GPLv2 Lic. j.mp/respondjs */
|
||||
(function( win ){
|
||||
|
||||
"use strict";
|
||||
|
||||
//exposed namespace
|
||||
var respond = {};
|
||||
win.respond = respond;
|
||||
|
||||
//define update even in native-mq-supporting browsers, to avoid errors
|
||||
respond.update = function(){};
|
||||
|
||||
//expose media query support flag for external use
|
||||
respond.mediaQueriesSupported = win.matchMedia && win.matchMedia( "only all" ).matches;
|
||||
|
||||
//if media queries are supported, exit here
|
||||
if( respond.mediaQueriesSupported ){
|
||||
return;
|
||||
}
|
||||
|
||||
//define vars
|
||||
var doc = win.document,
|
||||
docElem = doc.documentElement,
|
||||
mediastyles = [],
|
||||
rules = [],
|
||||
appendedEls = [],
|
||||
parsedSheets = {},
|
||||
resizeThrottle = 30,
|
||||
head = doc.getElementsByTagName( "head" )[0] || docElem,
|
||||
base = doc.getElementsByTagName( "base" )[0],
|
||||
links = head.getElementsByTagName( "link" ),
|
||||
requestQueue = [],
|
||||
|
||||
//loop stylesheets, send text content to translate
|
||||
ripCSS = function(){
|
||||
|
||||
for( var i = 0; i < links.length; i++ ){
|
||||
var sheet = links[ i ],
|
||||
href = sheet.href,
|
||||
media = sheet.media,
|
||||
isCSS = sheet.rel && sheet.rel.toLowerCase() === "stylesheet";
|
||||
|
||||
//only links plz and prevent re-parsing
|
||||
if( !!href && isCSS && !parsedSheets[ href ] ){
|
||||
// selectivizr exposes css through the rawCssText expando
|
||||
if (sheet.styleSheet && sheet.styleSheet.rawCssText) {
|
||||
translate( sheet.styleSheet.rawCssText, href, media );
|
||||
parsedSheets[ href ] = true;
|
||||
} else {
|
||||
if( (!/^([a-zA-Z:]*\/\/)/.test( href ) && !base) ||
|
||||
href.replace( RegExp.$1, "" ).split( "/" )[0] === win.location.host ){
|
||||
requestQueue.push( {
|
||||
href: href,
|
||||
media: media
|
||||
} );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
makeRequests();
|
||||
},
|
||||
|
||||
//recurse through request queue, get css text
|
||||
makeRequests = function(){
|
||||
if( requestQueue.length ){
|
||||
var thisRequest = requestQueue.shift();
|
||||
|
||||
ajax( thisRequest.href, function( styles ){
|
||||
translate( styles, thisRequest.href, thisRequest.media );
|
||||
parsedSheets[ thisRequest.href ] = true;
|
||||
|
||||
// by wrapping recursive function call in setTimeout
|
||||
// we prevent "Stack overflow" error in IE7
|
||||
win.setTimeout(function(){ makeRequests(); },0);
|
||||
} );
|
||||
}
|
||||
},
|
||||
|
||||
//find media blocks in css text, convert to style blocks
|
||||
translate = function( styles, href, media ){
|
||||
var qs = styles.match( /@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi ),
|
||||
ql = qs && qs.length || 0;
|
||||
|
||||
//try to get CSS path
|
||||
href = href.substring( 0, href.lastIndexOf( "/" ) );
|
||||
|
||||
var repUrls = function( css ){
|
||||
return css.replace( /(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g, "$1" + href + "$2$3" );
|
||||
},
|
||||
useMedia = !ql && media;
|
||||
|
||||
//if path exists, tack on trailing slash
|
||||
if( href.length ){ href += "/"; }
|
||||
|
||||
//if no internal queries exist, but media attr does, use that
|
||||
//note: this currently lacks support for situations where a media attr is specified on a link AND
|
||||
//its associated stylesheet has internal CSS media queries.
|
||||
//In those cases, the media attribute will currently be ignored.
|
||||
if( useMedia ){
|
||||
ql = 1;
|
||||
}
|
||||
|
||||
for( var i = 0; i < ql; i++ ){
|
||||
var fullq, thisq, eachq, eql;
|
||||
|
||||
//media attr
|
||||
if( useMedia ){
|
||||
fullq = media;
|
||||
rules.push( repUrls( styles ) );
|
||||
}
|
||||
//parse for styles
|
||||
else{
|
||||
fullq = qs[ i ].match( /@media *([^\{]+)\{([\S\s]+?)$/ ) && RegExp.$1;
|
||||
rules.push( RegExp.$2 && repUrls( RegExp.$2 ) );
|
||||
}
|
||||
|
||||
eachq = fullq.split( "," );
|
||||
eql = eachq.length;
|
||||
|
||||
for( var j = 0; j < eql; j++ ){
|
||||
thisq = eachq[ j ];
|
||||
mediastyles.push( {
|
||||
media : thisq.split( "(" )[ 0 ].match( /(only\s+)?([a-zA-Z]+)\s?/ ) && RegExp.$2 || "all",
|
||||
rules : rules.length - 1,
|
||||
hasquery : thisq.indexOf("(") > -1,
|
||||
minw : thisq.match( /\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/ ) && parseFloat( RegExp.$1 ) + ( RegExp.$2 || "" ),
|
||||
maxw : thisq.match( /\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/ ) && parseFloat( RegExp.$1 ) + ( RegExp.$2 || "" )
|
||||
} );
|
||||
}
|
||||
}
|
||||
|
||||
applyMedia();
|
||||
},
|
||||
|
||||
lastCall,
|
||||
|
||||
resizeDefer,
|
||||
|
||||
// returns the value of 1em in pixels
|
||||
getEmValue = function() {
|
||||
var ret,
|
||||
div = doc.createElement('div'),
|
||||
body = doc.body,
|
||||
fakeUsed = false;
|
||||
|
||||
div.style.cssText = "position:absolute;font-size:1em;width:1em";
|
||||
|
||||
if( !body ){
|
||||
body = fakeUsed = doc.createElement( "body" );
|
||||
body.style.background = "none";
|
||||
}
|
||||
|
||||
body.appendChild( div );
|
||||
|
||||
docElem.insertBefore( body, docElem.firstChild );
|
||||
|
||||
ret = div.offsetWidth;
|
||||
|
||||
if( fakeUsed ){
|
||||
docElem.removeChild( body );
|
||||
}
|
||||
else {
|
||||
body.removeChild( div );
|
||||
}
|
||||
|
||||
//also update eminpx before returning
|
||||
ret = eminpx = parseFloat(ret);
|
||||
|
||||
return ret;
|
||||
},
|
||||
|
||||
//cached container for 1em value, populated the first time it's needed
|
||||
eminpx,
|
||||
|
||||
//enable/disable styles
|
||||
applyMedia = function( fromResize ){
|
||||
var name = "clientWidth",
|
||||
docElemProp = docElem[ name ],
|
||||
currWidth = doc.compatMode === "CSS1Compat" && docElemProp || doc.body[ name ] || docElemProp,
|
||||
styleBlocks = {},
|
||||
lastLink = links[ links.length-1 ],
|
||||
now = (new Date()).getTime();
|
||||
|
||||
//throttle resize calls
|
||||
if( fromResize && lastCall && now - lastCall < resizeThrottle ){
|
||||
win.clearTimeout( resizeDefer );
|
||||
resizeDefer = win.setTimeout( applyMedia, resizeThrottle );
|
||||
return;
|
||||
}
|
||||
else {
|
||||
lastCall = now;
|
||||
}
|
||||
|
||||
for( var i in mediastyles ){
|
||||
if( mediastyles.hasOwnProperty( i ) ){
|
||||
var thisstyle = mediastyles[ i ],
|
||||
min = thisstyle.minw,
|
||||
max = thisstyle.maxw,
|
||||
minnull = min === null,
|
||||
maxnull = max === null,
|
||||
em = "em";
|
||||
|
||||
if( !!min ){
|
||||
min = parseFloat( min ) * ( min.indexOf( em ) > -1 ? ( eminpx || getEmValue() ) : 1 );
|
||||
}
|
||||
if( !!max ){
|
||||
max = parseFloat( max ) * ( max.indexOf( em ) > -1 ? ( eminpx || getEmValue() ) : 1 );
|
||||
}
|
||||
|
||||
// if there's no media query at all (the () part), or min or max is not null, and if either is present, they're true
|
||||
if( !thisstyle.hasquery || ( !minnull || !maxnull ) && ( minnull || currWidth >= min ) && ( maxnull || currWidth <= max ) ){
|
||||
if( !styleBlocks[ thisstyle.media ] ){
|
||||
styleBlocks[ thisstyle.media ] = [];
|
||||
}
|
||||
styleBlocks[ thisstyle.media ].push( rules[ thisstyle.rules ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//remove any existing respond style element(s)
|
||||
for( var j in appendedEls ){
|
||||
if( appendedEls.hasOwnProperty( j ) ){
|
||||
if( appendedEls[ j ] && appendedEls[ j ].parentNode === head ){
|
||||
head.removeChild( appendedEls[ j ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//inject active styles, grouped by media type
|
||||
for( var k in styleBlocks ){
|
||||
if( styleBlocks.hasOwnProperty( k ) ){
|
||||
var ss = doc.createElement( "style" ),
|
||||
css = styleBlocks[ k ].join( "\n" );
|
||||
|
||||
ss.type = "text/css";
|
||||
ss.media = k;
|
||||
|
||||
//originally, ss was appended to a documentFragment and sheets were appended in bulk.
|
||||
//this caused crashes in IE in a number of circumstances, such as when the HTML element had a bg image set, so appending beforehand seems best. Thanks to @dvelyk for the initial research on this one!
|
||||
head.insertBefore( ss, lastLink.nextSibling );
|
||||
|
||||
if ( ss.styleSheet ){
|
||||
ss.styleSheet.cssText = css;
|
||||
}
|
||||
else {
|
||||
ss.appendChild( doc.createTextNode( css ) );
|
||||
}
|
||||
|
||||
//push to appendedEls to track for later removal
|
||||
appendedEls.push( ss );
|
||||
}
|
||||
}
|
||||
},
|
||||
//tweaked Ajax functions from Quirksmode
|
||||
ajax = function( url, callback ) {
|
||||
var req = xmlHttp();
|
||||
if (!req){
|
||||
return;
|
||||
}
|
||||
req.open( "GET", url, true );
|
||||
req.onreadystatechange = function () {
|
||||
if ( req.readyState !== 4 || req.status !== 200 && req.status !== 304 ){
|
||||
return;
|
||||
}
|
||||
callback( req.responseText );
|
||||
};
|
||||
if ( req.readyState === 4 ){
|
||||
return;
|
||||
}
|
||||
req.send( null );
|
||||
},
|
||||
//define ajax obj
|
||||
xmlHttp = (function() {
|
||||
var xmlhttpmethod = false;
|
||||
try {
|
||||
xmlhttpmethod = new win.XMLHttpRequest();
|
||||
}
|
||||
catch( e ){
|
||||
xmlhttpmethod = new win.ActiveXObject( "Microsoft.XMLHTTP" );
|
||||
}
|
||||
return function(){
|
||||
return xmlhttpmethod;
|
||||
};
|
||||
})();
|
||||
|
||||
//translate CSS
|
||||
ripCSS();
|
||||
|
||||
//expose update for re-running respond later on
|
||||
respond.update = ripCSS;
|
||||
|
||||
//adjust on resize
|
||||
function callMedia(){
|
||||
applyMedia( true );
|
||||
}
|
||||
if( win.addEventListener ){
|
||||
win.addEventListener( "resize", callMedia, false );
|
||||
}
|
||||
else if( win.attachEvent ){
|
||||
win.attachEvent( "onresize", callMedia );
|
||||
}
|
||||
})(this);
|
|
@ -1,352 +0,0 @@
|
|||
/*! SocialCount - v0.1.6 - 2013-08-08
|
||||
* https://github.com/filamentgroup/SocialCount
|
||||
* Copyright (c) 2013 zachleat; Licensed MIT */
|
||||
|
||||
;(function( win, doc, $ ) {
|
||||
|
||||
var $loadingIndicator,
|
||||
$count;
|
||||
|
||||
function featureTest( prop, unprefixedProp ) {
|
||||
var style = doc.createElement('social').style,
|
||||
prefixes = 'webkit Moz o ms'.split(' ');
|
||||
|
||||
if( unprefixedProp in style ) {
|
||||
return true;
|
||||
}
|
||||
for( var j = 0, k = prefixes.length; j < k; j++ ) {
|
||||
if( ( prefixes[ j ] + prop ) in style ) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function removeFileName( src ) {
|
||||
var split = src.split( '/' );
|
||||
split.pop();
|
||||
return split.join( '/' ) + '/';
|
||||
}
|
||||
|
||||
function resolveServiceDir() {
|
||||
var baseUrl;
|
||||
|
||||
$( 'script' ).each(function() {
|
||||
var src = this.src || '',
|
||||
dir;
|
||||
if( src.match( SocialCount.scriptSrcRegex ) ) {
|
||||
baseUrl = removeFileName( src );
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
return baseUrl;
|
||||
}
|
||||
|
||||
var SocialCount = {
|
||||
// For A-grade experience, require querySelector (IE8+) and not BlackBerry or touchscreen
|
||||
isGradeA: 'querySelectorAll' in doc && !win.blackberry && !('ontouchstart' in window) &&
|
||||
// Note that this feature test does not account for the Windows Phone version that includes IE9
|
||||
// IE 10 desktop (non-touch) returns 0 for msMaxTouchPoints
|
||||
( typeof window.navigator.msMaxTouchPoints === 'undefined' || window.navigator.msMaxTouchPoints === 0 ),
|
||||
minCount: 1,
|
||||
serviceUrl: 'service/index.php',
|
||||
initSelector: '.socialcount',
|
||||
classes: {
|
||||
js: 'js',
|
||||
gradeA: 'grade-a',
|
||||
active: 'active',
|
||||
touch: 'touch',
|
||||
hover: 'hover',
|
||||
noTransforms: 'no-transforms',
|
||||
showCounts: 'counts',
|
||||
countContent: 'count',
|
||||
minCount: 'minimum',
|
||||
activateOnHover: 'activate-on-hover',
|
||||
activateOnClick: 'activate-on-click'
|
||||
},
|
||||
thousandCharacter: 'K',
|
||||
millionCharacter: 'M',
|
||||
missingResultText: '-',
|
||||
activateOnClick: false, // default is hover
|
||||
selectors: {
|
||||
facebook: '.facebook',
|
||||
twitter: '.twitter',
|
||||
googleplus: '.googleplus'
|
||||
},
|
||||
locale: (function() {
|
||||
var locale = doc.documentElement ? ( doc.documentElement.lang || '' ) : '';
|
||||
locale = locale.replace(/\-/, '_');
|
||||
return locale.match(/\w{2}_\w{2}/) ? locale : '';
|
||||
})(),
|
||||
googleplusTooltip: 'table.gc-bubbleDefault',
|
||||
scriptSrcRegex: /socialcount[\w.]*.js/i,
|
||||
plugins: {
|
||||
init: [],
|
||||
bind: []
|
||||
},
|
||||
|
||||
// private, but for testing
|
||||
cache: {},
|
||||
|
||||
removeFileName: removeFileName,
|
||||
resolveServiceDir: resolveServiceDir,
|
||||
|
||||
isCssAnimations: function() {
|
||||
return featureTest( 'AnimationName', 'animationName' );
|
||||
},
|
||||
isCssTransforms: function() {
|
||||
return featureTest( 'Transform', 'transform' );
|
||||
},
|
||||
getUrl: function( $el ) {
|
||||
return $el.attr('data-url') || location.href;
|
||||
},
|
||||
// Currently only available on Twitter
|
||||
getShareText: function( $el ) {
|
||||
return $el.attr('data-share-text' ) || '';
|
||||
},
|
||||
getFacebookAction: function( $el ) {
|
||||
return ( $el.attr('data-facebook-action' ) || 'like' ).toLowerCase();
|
||||
},
|
||||
isCountsEnabled: function( $el ) {
|
||||
return $el.attr('data-counts') === 'true';
|
||||
},
|
||||
isSmallSize: function( $el ) {
|
||||
return $el.is( '.socialcount-small' );
|
||||
},
|
||||
getCounts: function( $el, url ) {
|
||||
var map = SocialCount.selectors,
|
||||
cache = SocialCount.cache,
|
||||
counts = {},
|
||||
$networkNode,
|
||||
$countNode,
|
||||
j;
|
||||
|
||||
for( j in map ) {
|
||||
$networkNode = $el.find( map[ j ] );
|
||||
$countNode = $networkNode.find( '.' + SocialCount.classes.countContent );
|
||||
|
||||
if( $countNode.length ) {
|
||||
counts[ j ] = $countNode;
|
||||
} else {
|
||||
counts[ j ] = $count.clone();
|
||||
$networkNode.append( counts[ j ] );
|
||||
}
|
||||
}
|
||||
|
||||
if( !cache[ url ] ) {
|
||||
cache[ url ] = $.ajax({
|
||||
url: resolveServiceDir() + SocialCount.serviceUrl,
|
||||
data: {
|
||||
url: url
|
||||
},
|
||||
dataType: 'json'
|
||||
});
|
||||
}
|
||||
|
||||
cache[ url ].done( function complete( data ) {
|
||||
for( var j in data ) {
|
||||
if( data.hasOwnProperty( j ) ) {
|
||||
if( counts[ j ] && data[ j ] > SocialCount.minCount ) {
|
||||
counts[ j ].addClass( SocialCount.classes.minCount )
|
||||
.html( SocialCount.normalizeCount( data[ j ] ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return cache[ url ];
|
||||
},
|
||||
init: function( $el ) {
|
||||
var facebookAction = SocialCount.getFacebookAction( $el ),
|
||||
classes = [ facebookAction ],
|
||||
isSmall = SocialCount.isSmallSize( $el ),
|
||||
url = SocialCount.getUrl( $el ),
|
||||
initPlugins = SocialCount.plugins.init,
|
||||
countsEnabled = SocialCount.isCountsEnabled( $el );
|
||||
|
||||
classes.push( SocialCount.classes.js );
|
||||
|
||||
if( SocialCount.isGradeA ) {
|
||||
classes.push( SocialCount.classes.gradeA );
|
||||
}
|
||||
if( !SocialCount.isCssTransforms() ) {
|
||||
classes.push( SocialCount.classes.noTransforms );
|
||||
}
|
||||
if( countsEnabled ) {
|
||||
classes.push( SocialCount.classes.showCounts );
|
||||
}
|
||||
if( SocialCount.activateOnClick ) {
|
||||
classes.push( SocialCount.classes.activateOnClick );
|
||||
} else {
|
||||
classes.push( SocialCount.classes.activateOnHover );
|
||||
}
|
||||
if( SocialCount.locale ) {
|
||||
classes.push( SocialCount.locale );
|
||||
}
|
||||
$el.addClass( classes.join(' ') );
|
||||
|
||||
for( var j = 0, k = initPlugins.length; j < k; j++ ) {
|
||||
initPlugins[ j ].call( $el );
|
||||
}
|
||||
|
||||
if( SocialCount.isGradeA ) {
|
||||
SocialCount.bindEvents( $el, url, facebookAction, isSmall );
|
||||
}
|
||||
|
||||
if( countsEnabled && !isSmall ) {
|
||||
SocialCount.getCounts( $el, url );
|
||||
}
|
||||
},
|
||||
normalizeCount: function( count ) {
|
||||
if( !count && count !== 0 ) {
|
||||
return SocialCount.missingResultText;
|
||||
}
|
||||
// > 1M
|
||||
if( count >= 1000000 ) {
|
||||
return Math.floor( count / 1000000 ) + SocialCount.millionCharacter;
|
||||
}
|
||||
// > 100K
|
||||
if( count >= 100000 ) {
|
||||
return Math.floor( count / 1000 ) + SocialCount.thousandCharacter;
|
||||
}
|
||||
if( count > 1000 ) {
|
||||
return ( count / 1000 ).toFixed( 1 ).replace( /\.0/, '' ) + SocialCount.thousandCharacter;
|
||||
}
|
||||
return count;
|
||||
},
|
||||
bindEvents: function( $el, url, facebookAction, isSmall ) {
|
||||
function bind( $a, html, jsUrl ) {
|
||||
// IE bug (tested up to version 9) with :hover rules and iframes.
|
||||
var isTooltipActive = false,
|
||||
isHoverActive = false;
|
||||
|
||||
$a.closest( 'li' ).bind( 'mouseenter', function( event ) {
|
||||
var $li = $( this ).closest( 'li' );
|
||||
|
||||
$li.addClass( SocialCount.classes.hover );
|
||||
|
||||
isHoverActive = true;
|
||||
|
||||
$( document ).on( 'mouseenter.socialcount mouseleave.socialcount', SocialCount.googleplusTooltip, function( event ) {
|
||||
isTooltipActive = event.type === 'mouseenter';
|
||||
|
||||
if( !isTooltipActive && !isHoverActive ) {
|
||||
$li.removeClass( SocialCount.classes.hover );
|
||||
}
|
||||
});
|
||||
}).bind( 'mouseleave', function( event ) {
|
||||
var self = this;
|
||||
window.setTimeout(function() {
|
||||
isHoverActive = false;
|
||||
|
||||
if( !isTooltipActive && !isHoverActive ) {
|
||||
$( document ).off( '.socialcount' );
|
||||
$( self ).closest( 'li' ).removeClass( SocialCount.classes.hover );
|
||||
}
|
||||
}, 0);
|
||||
});
|
||||
|
||||
$a.one( SocialCount.activateOnClick ? 'click' : 'mouseover', function( event ) {
|
||||
if( SocialCount.activateOnClick ) {
|
||||
event.preventDefault();
|
||||
event.stopPropagation();
|
||||
}
|
||||
|
||||
var $self = $( this ),
|
||||
$parent = $self.closest( 'li' ),
|
||||
$loading = $loadingIndicator.clone(),
|
||||
$content = $( html ),
|
||||
$button = $( '<div class="button"/>' ).append( $content ),
|
||||
js,
|
||||
$iframe,
|
||||
deferred = $.Deferred();
|
||||
|
||||
deferred.promise().always(function() {
|
||||
// Remove Loader
|
||||
var $iframe = $parent.find('iframe');
|
||||
|
||||
if( $iframe.length ) {
|
||||
$iframe.bind( 'load', function() {
|
||||
$loading.remove();
|
||||
});
|
||||
} else {
|
||||
$loading.remove();
|
||||
}
|
||||
});
|
||||
|
||||
$parent
|
||||
.addClass( SocialCount.classes.active )
|
||||
.append( $loading )
|
||||
.append( $button );
|
||||
|
||||
if( jsUrl ) {
|
||||
js = doc.createElement( 'script' );
|
||||
js.src = jsUrl;
|
||||
|
||||
// IE8 doesn't do script onload.
|
||||
if( js.attachEvent ) {
|
||||
js.attachEvent( 'onreadystatechange', function() {
|
||||
if( js.readyState === 'loaded' || js.readyState === 'complete' ) {
|
||||
deferred.resolve();
|
||||
}
|
||||
});
|
||||
} else {
|
||||
$( js ).bind( 'load', deferred.resolve );
|
||||
}
|
||||
|
||||
doc.body.appendChild( js );
|
||||
} else if( $content.is( 'iframe' ) ) {
|
||||
deferred.resolve();
|
||||
}
|
||||
});
|
||||
} // end bind()
|
||||
|
||||
if( !isSmall ) {
|
||||
var shareText = SocialCount.getShareText( $el );
|
||||
|
||||
bind( $el.find( SocialCount.selectors.facebook + ' a' ),
|
||||
'<iframe src="//www.facebook.com/plugins/like.php?href=' + encodeURIComponent( url ) +
|
||||
( SocialCount.locale ? '&locale=' + SocialCount.locale : '' ) +
|
||||
'&send=false&layout=button_count&width=100&show_faces=true&action=' + facebookAction +
|
||||
'&colorscheme=light&font=arial&height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden;" allowTransparency="true"></iframe>' );
|
||||
|
||||
bind( $el.find( SocialCount.selectors.twitter + ' a' ),
|
||||
'<a href="https://twitter.com/share" class="twitter-share-button"' +
|
||||
' data-url="' + encodeURIComponent( url ) + '"' +
|
||||
( shareText ? ' data-text="' + shareText + '"': '' ) +
|
||||
' data-count="none" data-dnt="true">Tweet</a>',
|
||||
'//platform.twitter.com/widgets.js' );
|
||||
|
||||
bind( $el.find( SocialCount.selectors.googleplus + ' a' ),
|
||||
'<div class="g-plusone" data-size="medium" data-annotation="none"></div>',
|
||||
'//apis.google.com/js/plusone.js' );
|
||||
}
|
||||
|
||||
// Bind events on other non-stock widgets, like sharethis
|
||||
var bindPlugins = SocialCount.plugins.bind;
|
||||
for( var j = 0, k = bindPlugins.length; j < k; j++ ) {
|
||||
bindPlugins[ j ].call( $el, bind, url, isSmall );
|
||||
}
|
||||
} // end bindEvents()
|
||||
};
|
||||
|
||||
$(function() {
|
||||
// Thanks to http://codepen.io/ericmatthys/pen/FfcEL
|
||||
$loadingIndicator = $('<div>')
|
||||
.addClass('loading')
|
||||
.html( SocialCount.isCssAnimations() ? new Array(4).join('<div class="dot"></div>') : 'Loading' );
|
||||
|
||||
$count = $('<span>')
|
||||
.addClass( SocialCount.classes.countContent )
|
||||
.html(' ');
|
||||
|
||||
$( SocialCount.initSelector ).each(function() {
|
||||
var $el = $(this);
|
||||
SocialCount.init($el);
|
||||
});
|
||||
});
|
||||
|
||||
window.SocialCount = SocialCount;
|
||||
|
||||
}( window, window.document, jQuery ));
|
9597
_assets/javascripts/vendor/jquery-1.9.1.js
vendored
|
@ -1,66 +0,0 @@
|
|||
.CodeRay {
|
||||
font-family: @code-font;
|
||||
.font(12);
|
||||
color: #d0d0d0;
|
||||
margin-bottom: 1.5em;
|
||||
.rounded(3px);
|
||||
}
|
||||
|
||||
.CodeRay .code pre {
|
||||
margin: 0;
|
||||
padding: 1em;
|
||||
background-color: #272822;
|
||||
border: 1px solid darken(@body-color, 5);
|
||||
}
|
||||
|
||||
div.CodeRay { }
|
||||
span.CodeRay { white-space: pre; border: 0px; padding: 2px }
|
||||
|
||||
table.CodeRay { border-collapse: collapse; width: 100%; padding: 2px }
|
||||
table.CodeRay td {
|
||||
padding: 1em 0.5em;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.CodeRay .line-numbers, .CodeRay .no {
|
||||
color: #8f908a;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.CodeRay .line-numbers a {
|
||||
color: #8f908a;
|
||||
}
|
||||
|
||||
.CodeRay .line-numbers tt { font-weight: bold }
|
||||
.CodeRay .line-numbers .highlighted { color: red }
|
||||
.CodeRay .line { display: block; float: left; width: 100%; }
|
||||
.CodeRay span.line-numbers { padding: 0 24px 0 4px; }
|
||||
.CodeRay .code { width: 100% }
|
||||
|
||||
ol.CodeRay { font-size: 10pt }
|
||||
ol.CodeRay li { white-space: pre }
|
||||
|
||||
.CodeRay .code pre { overflow: auto }
|
||||
.CodeRay .debug { color:white ! important; background:blue ! important; }
|
||||
|
||||
.CodeRay .doctype,
|
||||
.CodeRay .key,
|
||||
.CodeRay .instance-variable { color: #f8f8f2; }
|
||||
.CodeRay .attribute-name { color: #a6e22e;}
|
||||
.CodeRay .symbol,
|
||||
.CodeRay .integer,
|
||||
.CodeRay .float { color: #ff658b; }
|
||||
.CodeRay .string { color: #2dc900; }
|
||||
.CodeRay .keyword { color: #66d9ef; }
|
||||
.CodeRay .function,
|
||||
.CodeRay .class { color: #a6e22e; }
|
||||
.CodeRay .regexp,
|
||||
.CodeRay .constant,
|
||||
.CodeRay .tag { color: #f92672; }
|
||||
.CodeRay .modifier,
|
||||
.CodeRay .predefined-constant { color: #ff84e4; }
|
||||
.CodeRay .comment { color: #75715e; }
|
||||
.CodeRay .error { color: #ecc; }
|
||||
.CodeRay .content { color: #e6db74; }
|
||||
.CodeRay .delimiter { color: #e6db74; }
|
||||
.CodeRay .inline { color: #e6db74; }
|
|
@ -1,355 +0,0 @@
|
|||
.dl-menuwrapper {
|
||||
width: 100%;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: 1000;
|
||||
-webkit-perspective: 1000px;
|
||||
-moz-perspective: 1000px;
|
||||
perspective: 1000px;
|
||||
-webkit-perspective-origin: 50% 200%;
|
||||
-moz-perspective-origin: 50% 200%;
|
||||
perspective-origin: 50% 200%;
|
||||
@media @medium {
|
||||
position: fixed;
|
||||
max-width: 175px;
|
||||
top: 25px;
|
||||
left: 25px;
|
||||
}
|
||||
button {
|
||||
top: 0;
|
||||
left: 0;
|
||||
background: @comp-color;
|
||||
border: none;
|
||||
width: 48px;
|
||||
height: 45px;
|
||||
text-indent: -900em;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
cursor: pointer;
|
||||
outline: none;
|
||||
.border-radius(0,3px,0,0);
|
||||
opacity: 0.6;
|
||||
@media @medium {
|
||||
.border-radius(3px,3px,3px,3px);
|
||||
}
|
||||
}
|
||||
button:hover,
|
||||
button.dl-active,
|
||||
ul {
|
||||
background: #aaa;
|
||||
}
|
||||
button:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
width: 68%;
|
||||
height: 5px;
|
||||
background: @white;
|
||||
top: 10px;
|
||||
left: 16%;
|
||||
box-shadow:
|
||||
0 10px 0 @white,
|
||||
0 20px 0 @white;
|
||||
}
|
||||
button.dl-active {
|
||||
display: none;
|
||||
}
|
||||
ul {
|
||||
padding: 0;
|
||||
list-style: none;
|
||||
-webkit-transform-style: preserve-3d;
|
||||
-moz-transform-style: preserve-3d;
|
||||
transform-style: preserve-3d;
|
||||
}
|
||||
li {
|
||||
position: relative;
|
||||
h4 {
|
||||
margin:0;
|
||||
padding: 15px 20px 0;
|
||||
color: fade(@white,90);
|
||||
}
|
||||
p {
|
||||
margin: 0;
|
||||
padding: 15px 20px;
|
||||
.font-rem(14);
|
||||
color: fade(@white,80);
|
||||
a {
|
||||
display: inline;
|
||||
padding: 0;
|
||||
.font-rem(14);
|
||||
}
|
||||
}
|
||||
i {
|
||||
display: inline-block;
|
||||
width: 2em;
|
||||
}
|
||||
a {
|
||||
display: block;
|
||||
position: relative;
|
||||
padding: 15px 20px;
|
||||
.font-rem(14);
|
||||
line-height: 20px;
|
||||
font-weight: 300;
|
||||
color: @white;
|
||||
outline: none;
|
||||
}
|
||||
&.dl-back > a {
|
||||
padding-left: 30px;
|
||||
background: rgba(0,0,0,0.2);
|
||||
}
|
||||
&.dl-back:after,
|
||||
> a:not(:only-child):after {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
line-height: 50px;
|
||||
font-family: 'fontawesome';
|
||||
color: @white;
|
||||
speak: none;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
content: "\f105";
|
||||
}
|
||||
&.dl-back:after {
|
||||
left: 10px;
|
||||
color: rgba(212,204,198,0.5);
|
||||
-webkit-transform: rotate(180deg);
|
||||
-moz-transform: rotate(180deg);
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
> a:after {
|
||||
right: 10px;
|
||||
color: rgba(0,0,0,0.15);
|
||||
}
|
||||
}
|
||||
.dl-menu {
|
||||
margin: 0;
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
max-width: 400px;
|
||||
overflow-y: auto;
|
||||
max-height: 600px;
|
||||
opacity: 0;
|
||||
pointer-events: none;
|
||||
box-shadow: 0 12px 24px fade(@black,35);
|
||||
-webkit-transform: translateY(10px);
|
||||
-moz-transform: translateY(10px);
|
||||
transform: translateY(10px);
|
||||
-webkit-backface-visibility: hidden;
|
||||
-moz-backface-visibility: hidden;
|
||||
backface-visibility: hidden;
|
||||
@media @medium {
|
||||
.border-radius(3px,3px,3px,3px);
|
||||
max-height: 650px;
|
||||
}
|
||||
}
|
||||
.dl-menu.dl-menu-toggle {
|
||||
-webkit-transition: all 0.3s ease;
|
||||
-moz-transition: all 0.3s ease;
|
||||
transition: all 0.3s ease;
|
||||
}
|
||||
.dl-menu.dl-menuopen {
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
-webkit-transform: translateY(0px);
|
||||
-moz-transform: translateY(0px);
|
||||
transform: translateY(0px);
|
||||
}
|
||||
.dl-submenu {
|
||||
.rounded(3px);
|
||||
box-shadow: 0 12px 24px fade(@black,35);
|
||||
}
|
||||
/* Hide the inner submenus */
|
||||
li .dl-submenu {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
/*
|
||||
When a submenu is openend, we will hide all li siblings.
|
||||
For that we give a class to the parent menu called "dl-subview".
|
||||
We also hide the submenu link.
|
||||
The opened submenu will get the class "dl-subviewopen".
|
||||
All this is done for any sub-level being entered.
|
||||
*/
|
||||
.dl-menu.dl-subview li,
|
||||
.dl-menu.dl-subview li.dl-subviewopen > a,
|
||||
.dl-menu.dl-subview li.dl-subview > a {
|
||||
display: none;
|
||||
}
|
||||
.dl-menu.dl-subview li.dl-subview,
|
||||
.dl-menu.dl-subview li.dl-subview .dl-submenu,
|
||||
.dl-menu.dl-subview li.dl-subviewopen,
|
||||
.dl-menu.dl-subview li.dl-subviewopen > .dl-submenu,
|
||||
.dl-menu.dl-subview li.dl-subviewopen > .dl-submenu > li {
|
||||
display: block;
|
||||
}
|
||||
/* Animation classes for moving out and in */
|
||||
.dl-menu.dl-animate-out {
|
||||
-webkit-animation: MenuAnimOut 0.4s ease;
|
||||
-moz-animation: MenuAnimOut 0.4s ease;
|
||||
animation: MenuAnimOut 0.4s ease;
|
||||
}
|
||||
@-webkit-keyframes MenuAnimOut {
|
||||
100% {
|
||||
-webkit-transform: translateZ(300px);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
@-moz-keyframes MenuAnimOut {
|
||||
100% {
|
||||
-moz-transform: translateZ(300px);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
@keyframes MenuAnimOut {
|
||||
100% {
|
||||
transform: translateZ(300px);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
.dl-menu.dl-animate-in {
|
||||
-webkit-animation: MenuAnimIn 0.4s ease;
|
||||
-moz-animation: MenuAnimIn 0.4s ease;
|
||||
animation: MenuAnimIn 0.4s ease;
|
||||
}
|
||||
@-webkit-keyframes MenuAnimIn {
|
||||
0% {
|
||||
-webkit-transform: translateZ(300px);
|
||||
opacity: 0;
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@-moz-keyframes MenuAnimIn {
|
||||
0% {
|
||||
-moz-transform: translateZ(300px);
|
||||
opacity: 0;
|
||||
}
|
||||
100% {
|
||||
-moz-transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@keyframes MenuAnimIn {
|
||||
0% {
|
||||
transform: translateZ(300px);
|
||||
opacity: 0;
|
||||
}
|
||||
100% {
|
||||
transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
.dl-menuwrapper > .dl-submenu.dl-animate-in {
|
||||
-webkit-animation: SubMenuAnimIn 0.4s ease;
|
||||
-moz-animation: SubMenuAnimIn 0.4s ease;
|
||||
animation: SubMenuAnimIn 0.4s ease;
|
||||
}
|
||||
@-webkit-keyframes SubMenuAnimIn {
|
||||
0% {
|
||||
-webkit-transform: translateZ(-300px);
|
||||
opacity: 0;
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@-moz-keyframes SubMenuAnimIn {
|
||||
0% {
|
||||
-moz-transform: translateZ(-300px);
|
||||
opacity: 0;
|
||||
}
|
||||
100% {
|
||||
-moz-transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
@keyframes SubMenuAnimIn {
|
||||
0% {
|
||||
transform: translateZ(-300px);
|
||||
opacity: 0;
|
||||
}
|
||||
100% {
|
||||
transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
}
|
||||
.dl-menuwrapper > .dl-submenu.dl-animate-out {
|
||||
-webkit-animation: SubMenuAnimOut 0.4s ease;
|
||||
-moz-animation: SubMenuAnimOut 0.4s ease;
|
||||
animation: SubMenuAnimOut 0.4s ease;
|
||||
}
|
||||
@-webkit-keyframes SubMenuAnimOut {
|
||||
0% {
|
||||
-webkit-transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: translateZ(-300px);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
@-moz-keyframes SubMenuAnimOut {
|
||||
0% {
|
||||
-moz-transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
100% {
|
||||
-moz-transform: translateZ(-300px);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
@keyframes SubMenuAnimOut {
|
||||
0% {
|
||||
transform: translateZ(0px);
|
||||
opacity: 1;
|
||||
}
|
||||
100% {
|
||||
transform: translateZ(-300px);
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
/* No Touch Fallback */
|
||||
.no-touch .dl-menuwrapper li a:hover {
|
||||
background: rgba(255,248,213,0.1);
|
||||
}
|
||||
/* No JS Fallback */
|
||||
.no-js {
|
||||
.dl-trigger {
|
||||
display: none;
|
||||
}
|
||||
.dl-menuwrapper .dl-menu {
|
||||
position: relative;
|
||||
opacity: 1;
|
||||
pointer-events: auto;
|
||||
-webkit-transform: none;
|
||||
-moz-transform: none;
|
||||
transform: none;
|
||||
}
|
||||
.dl-menuwrapper li .dl-submenu {
|
||||
display: block;
|
||||
}
|
||||
.dl-menuwrapper li.dl-back {
|
||||
display: none;
|
||||
}
|
||||
.dl-menuwrapper li > a:not(:only-child) {
|
||||
background: rgba(0,0,0,0.1);
|
||||
}
|
||||
.dl-menuwrapper li > a:not(:only-child):after {
|
||||
content: '';
|
||||
}
|
||||
}
|
||||
// Menu Color
|
||||
.dl-menuwrapper button:hover,
|
||||
.dl-menuwrapper button.dl-active,
|
||||
.dl-menuwrapper ul {
|
||||
background: @comp-color;
|
||||
}
|
||||
// Fix for IE
|
||||
.dl-menu li {
|
||||
display: none
|
||||
}
|
||||
.dl-menuopen li {
|
||||
display: block
|
||||
}
|
|
@ -1,485 +0,0 @@
|
|||
hr {
|
||||
display: block;
|
||||
margin: 1em 0;
|
||||
padding: 0;
|
||||
height: 1px;
|
||||
border: 0;
|
||||
border-top: 1px solid #ccc;
|
||||
border-bottom: 1px solid #fff;
|
||||
}
|
||||
|
||||
// Figures and images
|
||||
// --------------------------------------------------
|
||||
figure {
|
||||
margin: 0;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
.clearfix();
|
||||
img {
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
a {
|
||||
img {
|
||||
.translate(0, 0);
|
||||
-webkit-transition-duration: 0.25s;
|
||||
-moz-transition-duration: 0.25s;
|
||||
-o-transition-duration: 0.25s;
|
||||
&:hover {
|
||||
.translate(0, -5px);
|
||||
.box-shadow(0 0 10px fade(@base-color, 20));
|
||||
}
|
||||
}
|
||||
}
|
||||
&.half {
|
||||
@media @large {
|
||||
img {
|
||||
width: 310px;
|
||||
float: left;
|
||||
margin-right: 10px;
|
||||
}
|
||||
figcaption {
|
||||
clear: left;
|
||||
}
|
||||
}
|
||||
}
|
||||
&.third {
|
||||
@media @large {
|
||||
img {
|
||||
width: 200px;
|
||||
float: left;
|
||||
margin-right: 10px;
|
||||
}
|
||||
figcaption {
|
||||
clear: left;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
svg:not(:root) {
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
// Buttons
|
||||
// --------------------------------------------------
|
||||
.btn {
|
||||
display: inline-block;
|
||||
margin-bottom: 20px;
|
||||
padding: 8px 20px;
|
||||
.font-rem(14);
|
||||
background-color: @primary;
|
||||
color: @white;
|
||||
border-width: 2px !important;
|
||||
border-style: solid !important;
|
||||
border-color: @primary;
|
||||
.rounded(3px);
|
||||
&:visited {
|
||||
color: @white;
|
||||
}
|
||||
&:hover {
|
||||
background-color: @white;
|
||||
color: @primary;
|
||||
}
|
||||
}
|
||||
.btn-success {
|
||||
background-color: @success;
|
||||
color: @white;
|
||||
border-color: @success;
|
||||
&:visited {
|
||||
color: @white;
|
||||
}
|
||||
&:hover {
|
||||
background-color: @white;
|
||||
color: @success;
|
||||
}
|
||||
}
|
||||
.btn-warning {
|
||||
background-color: @warning;
|
||||
color: @white;
|
||||
border-color: @warning;
|
||||
&:visited {
|
||||
color: @white;
|
||||
}
|
||||
&:hover {
|
||||
background-color: @white;
|
||||
color: @warning;
|
||||
}
|
||||
}
|
||||
.btn-danger {
|
||||
background-color: @danger;
|
||||
color: @white;
|
||||
border-color: @danger;
|
||||
&:visited {
|
||||
color: @white;
|
||||
}
|
||||
&:hover {
|
||||
background-color: @white;
|
||||
color: @danger;
|
||||
}
|
||||
}
|
||||
.btn-info {
|
||||
background-color: @info;
|
||||
color: @white;
|
||||
border-color: @info;
|
||||
&:visited {
|
||||
color: @white;
|
||||
}
|
||||
&:hover {
|
||||
background-color: @white;
|
||||
color: @info;
|
||||
}
|
||||
}
|
||||
|
||||
// Well
|
||||
// --------------------------------------------------
|
||||
.well {
|
||||
padding: 20px;
|
||||
border: 1px solid @comp-color;
|
||||
.rounded(4px);
|
||||
}
|
||||
|
||||
// Animations
|
||||
// --------------------------------------------------
|
||||
.animated{-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:1s;-moz-animation-duration:1s;-ms-animation-duration:1s;-o-animation-duration:1s;animation-duration:1s;}.animated.hinge{-webkit-animation-duration:2s;-moz-animation-duration:2s;-ms-animation-duration:2s;-o-animation-duration:2s;animation-duration:2s;}@-webkit-keyframes fadeIn {
|
||||
0% {opacity: 0;} 100% {opacity: 1;}
|
||||
}
|
||||
|
||||
@-moz-keyframes fadeIn {
|
||||
0% {opacity: 0;}
|
||||
100% {opacity: 1;}
|
||||
}
|
||||
|
||||
@-o-keyframes fadeIn {
|
||||
0% {opacity: 0;}
|
||||
100% {opacity: 1;}
|
||||
}
|
||||
|
||||
@keyframes fadeIn {
|
||||
0% {opacity: 0;}
|
||||
100% {opacity: 1;}
|
||||
}
|
||||
|
||||
.fadeIn {
|
||||
-webkit-animation-name: fadeIn;
|
||||
-moz-animation-name: fadeIn;
|
||||
-o-animation-name: fadeIn;
|
||||
animation-name: fadeIn;
|
||||
}
|
||||
@-webkit-keyframes fadeInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(-20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
-webkit-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes fadeInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-moz-transform: translateY(-20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
-moz-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes fadeInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-o-transform: translateY(-20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
-o-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes fadeInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
transform: translateY(-20px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
.fadeInDown {
|
||||
-webkit-animation-name: fadeInDown;
|
||||
-moz-animation-name: fadeInDown;
|
||||
-o-animation-name: fadeInDown;
|
||||
animation-name: fadeInDown;
|
||||
}
|
||||
@-webkit-keyframes fadeInDownBig {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
-webkit-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes fadeInDownBig {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-moz-transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
-moz-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes fadeInDownBig {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-o-transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
-o-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes fadeInDownBig {
|
||||
0% {
|
||||
opacity: 0;
|
||||
transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
100% {
|
||||
opacity: 1;
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
.fadeInDownBig {
|
||||
-webkit-animation-name: fadeInDownBig;
|
||||
-moz-animation-name: fadeInDownBig;
|
||||
-o-animation-name: fadeInDownBig;
|
||||
animation-name: fadeInDownBig;
|
||||
}
|
||||
@-webkit-keyframes bounceIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-webkit-transform: scale(.3);
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
-webkit-transform: scale(1.05);
|
||||
}
|
||||
|
||||
70% {
|
||||
-webkit-transform: scale(.9);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes bounceIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-moz-transform: scale(.3);
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
-moz-transform: scale(1.05);
|
||||
}
|
||||
|
||||
70% {
|
||||
-moz-transform: scale(.9);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes bounceIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-o-transform: scale(.3);
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
-o-transform: scale(1.05);
|
||||
}
|
||||
|
||||
70% {
|
||||
-o-transform: scale(.9);
|
||||
}
|
||||
|
||||
100% {
|
||||
-o-transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes bounceIn {
|
||||
0% {
|
||||
opacity: 0;
|
||||
transform: scale(.3);
|
||||
}
|
||||
|
||||
50% {
|
||||
opacity: 1;
|
||||
transform: scale(1.05);
|
||||
}
|
||||
|
||||
70% {
|
||||
transform: scale(.9);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: scale(1);
|
||||
}
|
||||
}
|
||||
|
||||
.bounceIn {
|
||||
-webkit-animation-name: bounceIn;
|
||||
-moz-animation-name: bounceIn;
|
||||
-o-animation-name: bounceIn;
|
||||
animation-name: bounceIn;
|
||||
}
|
||||
@-webkit-keyframes bounceInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-webkit-transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
60% {
|
||||
opacity: 1;
|
||||
-webkit-transform: translateY(30px);
|
||||
}
|
||||
|
||||
80% {
|
||||
-webkit-transform: translateY(-10px);
|
||||
}
|
||||
|
||||
100% {
|
||||
-webkit-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-moz-keyframes bounceInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-moz-transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
60% {
|
||||
opacity: 1;
|
||||
-moz-transform: translateY(30px);
|
||||
}
|
||||
|
||||
80% {
|
||||
-moz-transform: translateY(-10px);
|
||||
}
|
||||
|
||||
100% {
|
||||
-moz-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@-o-keyframes bounceInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
-o-transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
60% {
|
||||
opacity: 1;
|
||||
-o-transform: translateY(30px);
|
||||
}
|
||||
|
||||
80% {
|
||||
-o-transform: translateY(-10px);
|
||||
}
|
||||
|
||||
100% {
|
||||
-o-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
@keyframes bounceInDown {
|
||||
0% {
|
||||
opacity: 0;
|
||||
transform: translateY(-2000px);
|
||||
}
|
||||
|
||||
60% {
|
||||
opacity: 1;
|
||||
transform: translateY(30px);
|
||||
}
|
||||
|
||||
80% {
|
||||
transform: translateY(-10px);
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
|
||||
.bounceInDown {
|
||||
-webkit-animation-name: bounceInDown;
|
||||
-moz-animation-name: bounceInDown;
|
||||
-o-animation-name: bounceInDown;
|
||||
animation-name: bounceInDown;
|
||||
}
|
||||
|
||||
@-webkit-keyframes drop {
|
||||
0% {
|
||||
-webkit-transform: translateY(-500px);
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
@-moz-keyframes drop {
|
||||
0% {
|
||||
-moz-transform: translateY(-500px);
|
||||
}
|
||||
100% {
|
||||
-moz-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
@-o-keyframes drop {
|
||||
0% {
|
||||
-o-transform: translateY(-500px);
|
||||
}
|
||||
100% {
|
||||
-o-transform: translateY(0);
|
||||
}
|
||||
}
|
||||
@keyframes drop {
|
||||
0% {
|
||||
transform: translateY(-500px);
|
||||
}
|
||||
100% {
|
||||
transform: translateY(0);
|
||||
}
|
||||
}
|
||||
.drop {
|
||||
-webkit-animation-name: drop;
|
||||
-moz-animation-name: drop;
|
||||
-o-animation-name: drop;
|
||||
animation-name: drop;
|
||||
}
|
17
_assets/stylesheets/font-awesome.less
vendored
|
@ -1,17 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome
|
||||
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
|
||||
*/
|
||||
|
||||
@import "variables.less";
|
||||
@import "mixins.less";
|
||||
@import "path.less";
|
||||
@import "core.less";
|
||||
@import "larger.less";
|
||||
@import "fixed-width.less";
|
||||
@import "list.less";
|
||||
@import "bordered-pulled.less";
|
||||
@import "spinning.less";
|
||||
@import "rotated-flipped.less";
|
||||
@import "stacked.less";
|
||||
@import "icons.less";
|
|
@ -1,16 +0,0 @@
|
|||
// Bordered & Pulled
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-border {
|
||||
padding: .2em .25em .15em;
|
||||
border: solid .08em @fa-border-color;
|
||||
border-radius: .1em;
|
||||
}
|
||||
|
||||
.pull-right { float: right; }
|
||||
.pull-left { float: left; }
|
||||
|
||||
.@{fa-css-prefix} {
|
||||
&.pull-left { margin-right: .3em; }
|
||||
&.pull-right { margin-left: .3em; }
|
||||
}
|
12
_assets/stylesheets/font-awesome/core.less
vendored
|
@ -1,12 +0,0 @@
|
|||
// Base Class Definition
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix} {
|
||||
display: inline-block;
|
||||
font-family: FontAwesome;
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
line-height: 1;
|
||||
-webkit-font-smoothing: antialiased;
|
||||
-moz-osx-font-smoothing: grayscale;
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
// Fixed Width Icons
|
||||
// -------------------------
|
||||
.@{fa-css-prefix}-fw {
|
||||
width: (18em / 14);
|
||||
text-align: center;
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
/*!
|
||||
* Font Awesome 4.1.0 by @davegandy - http://fontawesome.io - @fontawesome
|
||||
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
|
||||
*/
|
||||
|
||||
@import "variables.less";
|
||||
@import "mixins.less";
|
||||
@import "path.less";
|
||||
@import "core.less";
|
||||
@import "larger.less";
|
||||
@import "fixed-width.less";
|
||||
@import "list.less";
|
||||
@import "bordered-pulled.less";
|
||||
@import "spinning.less";
|
||||
@import "rotated-flipped.less";
|
||||
@import "stacked.less";
|
||||
@import "icons.less";
|
506
_assets/stylesheets/font-awesome/icons.less
vendored
|
@ -1,506 +0,0 @@
|
|||
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
|
||||
readers do not read off random characters that represent icons */
|
||||
|
||||
.@{fa-css-prefix}-glass:before { content: @fa-var-glass; }
|
||||
.@{fa-css-prefix}-music:before { content: @fa-var-music; }
|
||||
.@{fa-css-prefix}-search:before { content: @fa-var-search; }
|
||||
.@{fa-css-prefix}-envelope-o:before { content: @fa-var-envelope-o; }
|
||||
.@{fa-css-prefix}-heart:before { content: @fa-var-heart; }
|
||||
.@{fa-css-prefix}-star:before { content: @fa-var-star; }
|
||||
.@{fa-css-prefix}-star-o:before { content: @fa-var-star-o; }
|
||||
.@{fa-css-prefix}-user:before { content: @fa-var-user; }
|
||||
.@{fa-css-prefix}-film:before { content: @fa-var-film; }
|
||||
.@{fa-css-prefix}-th-large:before { content: @fa-var-th-large; }
|
||||
.@{fa-css-prefix}-th:before { content: @fa-var-th; }
|
||||
.@{fa-css-prefix}-th-list:before { content: @fa-var-th-list; }
|
||||
.@{fa-css-prefix}-check:before { content: @fa-var-check; }
|
||||
.@{fa-css-prefix}-times:before { content: @fa-var-times; }
|
||||
.@{fa-css-prefix}-search-plus:before { content: @fa-var-search-plus; }
|
||||
.@{fa-css-prefix}-search-minus:before { content: @fa-var-search-minus; }
|
||||
.@{fa-css-prefix}-power-off:before { content: @fa-var-power-off; }
|
||||
.@{fa-css-prefix}-signal:before { content: @fa-var-signal; }
|
||||
.@{fa-css-prefix}-gear:before,
|
||||
.@{fa-css-prefix}-cog:before { content: @fa-var-cog; }
|
||||
.@{fa-css-prefix}-trash-o:before { content: @fa-var-trash-o; }
|
||||
.@{fa-css-prefix}-home:before { content: @fa-var-home; }
|
||||
.@{fa-css-prefix}-file-o:before { content: @fa-var-file-o; }
|
||||
.@{fa-css-prefix}-clock-o:before { content: @fa-var-clock-o; }
|
||||
.@{fa-css-prefix}-road:before { content: @fa-var-road; }
|
||||
.@{fa-css-prefix}-download:before { content: @fa-var-download; }
|
||||
.@{fa-css-prefix}-arrow-circle-o-down:before { content: @fa-var-arrow-circle-o-down; }
|
||||
.@{fa-css-prefix}-arrow-circle-o-up:before { content: @fa-var-arrow-circle-o-up; }
|
||||
.@{fa-css-prefix}-inbox:before { content: @fa-var-inbox; }
|
||||
.@{fa-css-prefix}-play-circle-o:before { content: @fa-var-play-circle-o; }
|
||||
.@{fa-css-prefix}-rotate-right:before,
|
||||
.@{fa-css-prefix}-repeat:before { content: @fa-var-repeat; }
|
||||
.@{fa-css-prefix}-refresh:before { content: @fa-var-refresh; }
|
||||
.@{fa-css-prefix}-list-alt:before { content: @fa-var-list-alt; }
|
||||
.@{fa-css-prefix}-lock:before { content: @fa-var-lock; }
|
||||
.@{fa-css-prefix}-flag:before { content: @fa-var-flag; }
|
||||
.@{fa-css-prefix}-headphones:before { content: @fa-var-headphones; }
|
||||
.@{fa-css-prefix}-volume-off:before { content: @fa-var-volume-off; }
|
||||
.@{fa-css-prefix}-volume-down:before { content: @fa-var-volume-down; }
|
||||
.@{fa-css-prefix}-volume-up:before { content: @fa-var-volume-up; }
|
||||
.@{fa-css-prefix}-qrcode:before { content: @fa-var-qrcode; }
|
||||
.@{fa-css-prefix}-barcode:before { content: @fa-var-barcode; }
|
||||
.@{fa-css-prefix}-tag:before { content: @fa-var-tag; }
|
||||
.@{fa-css-prefix}-tags:before { content: @fa-var-tags; }
|
||||
.@{fa-css-prefix}-book:before { content: @fa-var-book; }
|
||||
.@{fa-css-prefix}-bookmark:before { content: @fa-var-bookmark; }
|
||||
.@{fa-css-prefix}-print:before { content: @fa-var-print; }
|
||||
.@{fa-css-prefix}-camera:before { content: @fa-var-camera; }
|
||||
.@{fa-css-prefix}-font:before { content: @fa-var-font; }
|
||||
.@{fa-css-prefix}-bold:before { content: @fa-var-bold; }
|
||||
.@{fa-css-prefix}-italic:before { content: @fa-var-italic; }
|
||||
.@{fa-css-prefix}-text-height:before { content: @fa-var-text-height; }
|
||||
.@{fa-css-prefix}-text-width:before { content: @fa-var-text-width; }
|
||||
.@{fa-css-prefix}-align-left:before { content: @fa-var-align-left; }
|
||||
.@{fa-css-prefix}-align-center:before { content: @fa-var-align-center; }
|
||||
.@{fa-css-prefix}-align-right:before { content: @fa-var-align-right; }
|
||||
.@{fa-css-prefix}-align-justify:before { content: @fa-var-align-justify; }
|
||||
.@{fa-css-prefix}-list:before { content: @fa-var-list; }
|
||||
.@{fa-css-prefix}-dedent:before,
|
||||
.@{fa-css-prefix}-outdent:before { content: @fa-var-outdent; }
|
||||
.@{fa-css-prefix}-indent:before { content: @fa-var-indent; }
|
||||
.@{fa-css-prefix}-video-camera:before { content: @fa-var-video-camera; }
|
||||
.@{fa-css-prefix}-photo:before,
|
||||
.@{fa-css-prefix}-image:before,
|
||||
.@{fa-css-prefix}-picture-o:before { content: @fa-var-picture-o; }
|
||||
.@{fa-css-prefix}-pencil:before { content: @fa-var-pencil; }
|
||||
.@{fa-css-prefix}-map-marker:before { content: @fa-var-map-marker; }
|
||||
.@{fa-css-prefix}-adjust:before { content: @fa-var-adjust; }
|
||||
.@{fa-css-prefix}-tint:before { content: @fa-var-tint; }
|
||||
.@{fa-css-prefix}-edit:before,
|
||||
.@{fa-css-prefix}-pencil-square-o:before { content: @fa-var-pencil-square-o; }
|
||||
.@{fa-css-prefix}-share-square-o:before { content: @fa-var-share-square-o; }
|
||||
.@{fa-css-prefix}-check-square-o:before { content: @fa-var-check-square-o; }
|
||||
.@{fa-css-prefix}-arrows:before { content: @fa-var-arrows; }
|
||||
.@{fa-css-prefix}-step-backward:before { content: @fa-var-step-backward; }
|
||||
.@{fa-css-prefix}-fast-backward:before { content: @fa-var-fast-backward; }
|
||||
.@{fa-css-prefix}-backward:before { content: @fa-var-backward; }
|
||||
.@{fa-css-prefix}-play:before { content: @fa-var-play; }
|
||||
.@{fa-css-prefix}-pause:before { content: @fa-var-pause; }
|
||||
.@{fa-css-prefix}-stop:before { content: @fa-var-stop; }
|
||||
.@{fa-css-prefix}-forward:before { content: @fa-var-forward; }
|
||||
.@{fa-css-prefix}-fast-forward:before { content: @fa-var-fast-forward; }
|
||||
.@{fa-css-prefix}-step-forward:before { content: @fa-var-step-forward; }
|
||||
.@{fa-css-prefix}-eject:before { content: @fa-var-eject; }
|
||||
.@{fa-css-prefix}-chevron-left:before { content: @fa-var-chevron-left; }
|
||||
.@{fa-css-prefix}-chevron-right:before { content: @fa-var-chevron-right; }
|
||||
.@{fa-css-prefix}-plus-circle:before { content: @fa-var-plus-circle; }
|
||||
.@{fa-css-prefix}-minus-circle:before { content: @fa-var-minus-circle; }
|
||||
.@{fa-css-prefix}-times-circle:before { content: @fa-var-times-circle; }
|
||||
.@{fa-css-prefix}-check-circle:before { content: @fa-var-check-circle; }
|
||||
.@{fa-css-prefix}-question-circle:before { content: @fa-var-question-circle; }
|
||||
.@{fa-css-prefix}-info-circle:before { content: @fa-var-info-circle; }
|
||||
.@{fa-css-prefix}-crosshairs:before { content: @fa-var-crosshairs; }
|
||||
.@{fa-css-prefix}-times-circle-o:before { content: @fa-var-times-circle-o; }
|
||||
.@{fa-css-prefix}-check-circle-o:before { content: @fa-var-check-circle-o; }
|
||||
.@{fa-css-prefix}-ban:before { content: @fa-var-ban; }
|
||||
.@{fa-css-prefix}-arrow-left:before { content: @fa-var-arrow-left; }
|
||||
.@{fa-css-prefix}-arrow-right:before { content: @fa-var-arrow-right; }
|
||||
.@{fa-css-prefix}-arrow-up:before { content: @fa-var-arrow-up; }
|
||||
.@{fa-css-prefix}-arrow-down:before { content: @fa-var-arrow-down; }
|
||||
.@{fa-css-prefix}-mail-forward:before,
|
||||
.@{fa-css-prefix}-share:before { content: @fa-var-share; }
|
||||
.@{fa-css-prefix}-expand:before { content: @fa-var-expand; }
|
||||
.@{fa-css-prefix}-compress:before { content: @fa-var-compress; }
|
||||
.@{fa-css-prefix}-plus:before { content: @fa-var-plus; }
|
||||
.@{fa-css-prefix}-minus:before { content: @fa-var-minus; }
|
||||
.@{fa-css-prefix}-asterisk:before { content: @fa-var-asterisk; }
|
||||
.@{fa-css-prefix}-exclamation-circle:before { content: @fa-var-exclamation-circle; }
|
||||
.@{fa-css-prefix}-gift:before { content: @fa-var-gift; }
|
||||
.@{fa-css-prefix}-leaf:before { content: @fa-var-leaf; }
|
||||
.@{fa-css-prefix}-fire:before { content: @fa-var-fire; }
|
||||
.@{fa-css-prefix}-eye:before { content: @fa-var-eye; }
|
||||
.@{fa-css-prefix}-eye-slash:before { content: @fa-var-eye-slash; }
|
||||
.@{fa-css-prefix}-warning:before,
|
||||
.@{fa-css-prefix}-exclamation-triangle:before { content: @fa-var-exclamation-triangle; }
|
||||
.@{fa-css-prefix}-plane:before { content: @fa-var-plane; }
|
||||
.@{fa-css-prefix}-calendar:before { content: @fa-var-calendar; }
|
||||
.@{fa-css-prefix}-random:before { content: @fa-var-random; }
|
||||
.@{fa-css-prefix}-comment:before { content: @fa-var-comment; }
|
||||
.@{fa-css-prefix}-magnet:before { content: @fa-var-magnet; }
|
||||
.@{fa-css-prefix}-chevron-up:before { content: @fa-var-chevron-up; }
|
||||
.@{fa-css-prefix}-chevron-down:before { content: @fa-var-chevron-down; }
|
||||
.@{fa-css-prefix}-retweet:before { content: @fa-var-retweet; }
|
||||
.@{fa-css-prefix}-shopping-cart:before { content: @fa-var-shopping-cart; }
|
||||
.@{fa-css-prefix}-folder:before { content: @fa-var-folder; }
|
||||
.@{fa-css-prefix}-folder-open:before { content: @fa-var-folder-open; }
|
||||
.@{fa-css-prefix}-arrows-v:before { content: @fa-var-arrows-v; }
|
||||
.@{fa-css-prefix}-arrows-h:before { content: @fa-var-arrows-h; }
|
||||
.@{fa-css-prefix}-bar-chart-o:before { content: @fa-var-bar-chart-o; }
|
||||
.@{fa-css-prefix}-twitter-square:before { content: @fa-var-twitter-square; }
|
||||
.@{fa-css-prefix}-facebook-square:before { content: @fa-var-facebook-square; }
|
||||
.@{fa-css-prefix}-camera-retro:before { content: @fa-var-camera-retro; }
|
||||
.@{fa-css-prefix}-key:before { content: @fa-var-key; }
|
||||
.@{fa-css-prefix}-gears:before,
|
||||
.@{fa-css-prefix}-cogs:before { content: @fa-var-cogs; }
|
||||
.@{fa-css-prefix}-comments:before { content: @fa-var-comments; }
|
||||
.@{fa-css-prefix}-thumbs-o-up:before { content: @fa-var-thumbs-o-up; }
|
||||
.@{fa-css-prefix}-thumbs-o-down:before { content: @fa-var-thumbs-o-down; }
|
||||
.@{fa-css-prefix}-star-half:before { content: @fa-var-star-half; }
|
||||
.@{fa-css-prefix}-heart-o:before { content: @fa-var-heart-o; }
|
||||
.@{fa-css-prefix}-sign-out:before { content: @fa-var-sign-out; }
|
||||
.@{fa-css-prefix}-linkedin-square:before { content: @fa-var-linkedin-square; }
|
||||
.@{fa-css-prefix}-thumb-tack:before { content: @fa-var-thumb-tack; }
|
||||
.@{fa-css-prefix}-external-link:before { content: @fa-var-external-link; }
|
||||
.@{fa-css-prefix}-sign-in:before { content: @fa-var-sign-in; }
|
||||
.@{fa-css-prefix}-trophy:before { content: @fa-var-trophy; }
|
||||
.@{fa-css-prefix}-github-square:before { content: @fa-var-github-square; }
|
||||
.@{fa-css-prefix}-upload:before { content: @fa-var-upload; }
|
||||
.@{fa-css-prefix}-lemon-o:before { content: @fa-var-lemon-o; }
|
||||
.@{fa-css-prefix}-phone:before { content: @fa-var-phone; }
|
||||
.@{fa-css-prefix}-square-o:before { content: @fa-var-square-o; }
|
||||
.@{fa-css-prefix}-bookmark-o:before { content: @fa-var-bookmark-o; }
|
||||
.@{fa-css-prefix}-phone-square:before { content: @fa-var-phone-square; }
|
||||
.@{fa-css-prefix}-twitter:before { content: @fa-var-twitter; }
|
||||
.@{fa-css-prefix}-facebook:before { content: @fa-var-facebook; }
|
||||
.@{fa-css-prefix}-github:before { content: @fa-var-github; }
|
||||
.@{fa-css-prefix}-unlock:before { content: @fa-var-unlock; }
|
||||
.@{fa-css-prefix}-credit-card:before { content: @fa-var-credit-card; }
|
||||
.@{fa-css-prefix}-rss:before { content: @fa-var-rss; }
|
||||
.@{fa-css-prefix}-hdd-o:before { content: @fa-var-hdd-o; }
|
||||
.@{fa-css-prefix}-bullhorn:before { content: @fa-var-bullhorn; }
|
||||
.@{fa-css-prefix}-bell:before { content: @fa-var-bell; }
|
||||
.@{fa-css-prefix}-certificate:before { content: @fa-var-certificate; }
|
||||
.@{fa-css-prefix}-hand-o-right:before { content: @fa-var-hand-o-right; }
|
||||
.@{fa-css-prefix}-hand-o-left:before { content: @fa-var-hand-o-left; }
|
||||
.@{fa-css-prefix}-hand-o-up:before { content: @fa-var-hand-o-up; }
|
||||
.@{fa-css-prefix}-hand-o-down:before { content: @fa-var-hand-o-down; }
|
||||
.@{fa-css-prefix}-arrow-circle-left:before { content: @fa-var-arrow-circle-left; }
|
||||
.@{fa-css-prefix}-arrow-circle-right:before { content: @fa-var-arrow-circle-right; }
|
||||
.@{fa-css-prefix}-arrow-circle-up:before { content: @fa-var-arrow-circle-up; }
|
||||
.@{fa-css-prefix}-arrow-circle-down:before { content: @fa-var-arrow-circle-down; }
|
||||
.@{fa-css-prefix}-globe:before { content: @fa-var-globe; }
|
||||
.@{fa-css-prefix}-wrench:before { content: @fa-var-wrench; }
|
||||
.@{fa-css-prefix}-tasks:before { content: @fa-var-tasks; }
|
||||
.@{fa-css-prefix}-filter:before { content: @fa-var-filter; }
|
||||
.@{fa-css-prefix}-briefcase:before { content: @fa-var-briefcase; }
|
||||
.@{fa-css-prefix}-arrows-alt:before { content: @fa-var-arrows-alt; }
|
||||
.@{fa-css-prefix}-group:before,
|
||||
.@{fa-css-prefix}-users:before { content: @fa-var-users; }
|
||||
.@{fa-css-prefix}-chain:before,
|
||||
.@{fa-css-prefix}-link:before { content: @fa-var-link; }
|
||||
.@{fa-css-prefix}-cloud:before { content: @fa-var-cloud; }
|
||||
.@{fa-css-prefix}-flask:before { content: @fa-var-flask; }
|
||||
.@{fa-css-prefix}-cut:before,
|
||||
.@{fa-css-prefix}-scissors:before { content: @fa-var-scissors; }
|
||||
.@{fa-css-prefix}-copy:before,
|
||||
.@{fa-css-prefix}-files-o:before { content: @fa-var-files-o; }
|
||||
.@{fa-css-prefix}-paperclip:before { content: @fa-var-paperclip; }
|
||||
.@{fa-css-prefix}-save:before,
|
||||
.@{fa-css-prefix}-floppy-o:before { content: @fa-var-floppy-o; }
|
||||
.@{fa-css-prefix}-square:before { content: @fa-var-square; }
|
||||
.@{fa-css-prefix}-navicon:before,
|
||||
.@{fa-css-prefix}-reorder:before,
|
||||
.@{fa-css-prefix}-bars:before { content: @fa-var-bars; }
|
||||
.@{fa-css-prefix}-list-ul:before { content: @fa-var-list-ul; }
|
||||
.@{fa-css-prefix}-list-ol:before { content: @fa-var-list-ol; }
|
||||
.@{fa-css-prefix}-strikethrough:before { content: @fa-var-strikethrough; }
|
||||
.@{fa-css-prefix}-underline:before { content: @fa-var-underline; }
|
||||
.@{fa-css-prefix}-table:before { content: @fa-var-table; }
|
||||
.@{fa-css-prefix}-magic:before { content: @fa-var-magic; }
|
||||
.@{fa-css-prefix}-truck:before { content: @fa-var-truck; }
|
||||
.@{fa-css-prefix}-pinterest:before { content: @fa-var-pinterest; }
|
||||
.@{fa-css-prefix}-pinterest-square:before { content: @fa-var-pinterest-square; }
|
||||
.@{fa-css-prefix}-google-plus-square:before { content: @fa-var-google-plus-square; }
|
||||
.@{fa-css-prefix}-google-plus:before { content: @fa-var-google-plus; }
|
||||
.@{fa-css-prefix}-money:before { content: @fa-var-money; }
|
||||
.@{fa-css-prefix}-caret-down:before { content: @fa-var-caret-down; }
|
||||
.@{fa-css-prefix}-caret-up:before { content: @fa-var-caret-up; }
|
||||
.@{fa-css-prefix}-caret-left:before { content: @fa-var-caret-left; }
|
||||
.@{fa-css-prefix}-caret-right:before { content: @fa-var-caret-right; }
|
||||
.@{fa-css-prefix}-columns:before { content: @fa-var-columns; }
|
||||
.@{fa-css-prefix}-unsorted:before,
|
||||
.@{fa-css-prefix}-sort:before { content: @fa-var-sort; }
|
||||
.@{fa-css-prefix}-sort-down:before,
|
||||
.@{fa-css-prefix}-sort-desc:before { content: @fa-var-sort-desc; }
|
||||
.@{fa-css-prefix}-sort-up:before,
|
||||
.@{fa-css-prefix}-sort-asc:before { content: @fa-var-sort-asc; }
|
||||
.@{fa-css-prefix}-envelope:before { content: @fa-var-envelope; }
|
||||
.@{fa-css-prefix}-linkedin:before { content: @fa-var-linkedin; }
|
||||
.@{fa-css-prefix}-rotate-left:before,
|
||||
.@{fa-css-prefix}-undo:before { content: @fa-var-undo; }
|
||||
.@{fa-css-prefix}-legal:before,
|
||||
.@{fa-css-prefix}-gavel:before { content: @fa-var-gavel; }
|
||||
.@{fa-css-prefix}-dashboard:before,
|
||||
.@{fa-css-prefix}-tachometer:before { content: @fa-var-tachometer; }
|
||||
.@{fa-css-prefix}-comment-o:before { content: @fa-var-comment-o; }
|
||||
.@{fa-css-prefix}-comments-o:before { content: @fa-var-comments-o; }
|
||||
.@{fa-css-prefix}-flash:before,
|
||||
.@{fa-css-prefix}-bolt:before { content: @fa-var-bolt; }
|
||||
.@{fa-css-prefix}-sitemap:before { content: @fa-var-sitemap; }
|
||||
.@{fa-css-prefix}-umbrella:before { content: @fa-var-umbrella; }
|
||||
.@{fa-css-prefix}-paste:before,
|
||||
.@{fa-css-prefix}-clipboard:before { content: @fa-var-clipboard; }
|
||||
.@{fa-css-prefix}-lightbulb-o:before { content: @fa-var-lightbulb-o; }
|
||||
.@{fa-css-prefix}-exchange:before { content: @fa-var-exchange; }
|
||||
.@{fa-css-prefix}-cloud-download:before { content: @fa-var-cloud-download; }
|
||||
.@{fa-css-prefix}-cloud-upload:before { content: @fa-var-cloud-upload; }
|
||||
.@{fa-css-prefix}-user-md:before { content: @fa-var-user-md; }
|
||||
.@{fa-css-prefix}-stethoscope:before { content: @fa-var-stethoscope; }
|
||||
.@{fa-css-prefix}-suitcase:before { content: @fa-var-suitcase; }
|
||||
.@{fa-css-prefix}-bell-o:before { content: @fa-var-bell-o; }
|
||||
.@{fa-css-prefix}-coffee:before { content: @fa-var-coffee; }
|
||||
.@{fa-css-prefix}-cutlery:before { content: @fa-var-cutlery; }
|
||||
.@{fa-css-prefix}-file-text-o:before { content: @fa-var-file-text-o; }
|
||||
.@{fa-css-prefix}-building-o:before { content: @fa-var-building-o; }
|
||||
.@{fa-css-prefix}-hospital-o:before { content: @fa-var-hospital-o; }
|
||||
.@{fa-css-prefix}-ambulance:before { content: @fa-var-ambulance; }
|
||||
.@{fa-css-prefix}-medkit:before { content: @fa-var-medkit; }
|
||||
.@{fa-css-prefix}-fighter-jet:before { content: @fa-var-fighter-jet; }
|
||||
.@{fa-css-prefix}-beer:before { content: @fa-var-beer; }
|
||||
.@{fa-css-prefix}-h-square:before { content: @fa-var-h-square; }
|
||||
.@{fa-css-prefix}-plus-square:before { content: @fa-var-plus-square; }
|
||||
.@{fa-css-prefix}-angle-double-left:before { content: @fa-var-angle-double-left; }
|
||||
.@{fa-css-prefix}-angle-double-right:before { content: @fa-var-angle-double-right; }
|
||||
.@{fa-css-prefix}-angle-double-up:before { content: @fa-var-angle-double-up; }
|
||||
.@{fa-css-prefix}-angle-double-down:before { content: @fa-var-angle-double-down; }
|
||||
.@{fa-css-prefix}-angle-left:before { content: @fa-var-angle-left; }
|
||||
.@{fa-css-prefix}-angle-right:before { content: @fa-var-angle-right; }
|
||||
.@{fa-css-prefix}-angle-up:before { content: @fa-var-angle-up; }
|
||||
.@{fa-css-prefix}-angle-down:before { content: @fa-var-angle-down; }
|
||||
.@{fa-css-prefix}-desktop:before { content: @fa-var-desktop; }
|
||||
.@{fa-css-prefix}-laptop:before { content: @fa-var-laptop; }
|
||||
.@{fa-css-prefix}-tablet:before { content: @fa-var-tablet; }
|
||||
.@{fa-css-prefix}-mobile-phone:before,
|
||||
.@{fa-css-prefix}-mobile:before { content: @fa-var-mobile; }
|
||||
.@{fa-css-prefix}-circle-o:before { content: @fa-var-circle-o; }
|
||||
.@{fa-css-prefix}-quote-left:before { content: @fa-var-quote-left; }
|
||||
.@{fa-css-prefix}-quote-right:before { content: @fa-var-quote-right; }
|
||||
.@{fa-css-prefix}-spinner:before { content: @fa-var-spinner; }
|
||||
.@{fa-css-prefix}-circle:before { content: @fa-var-circle; }
|
||||
.@{fa-css-prefix}-mail-reply:before,
|
||||
.@{fa-css-prefix}-reply:before { content: @fa-var-reply; }
|
||||
.@{fa-css-prefix}-github-alt:before { content: @fa-var-github-alt; }
|
||||
.@{fa-css-prefix}-folder-o:before { content: @fa-var-folder-o; }
|
||||
.@{fa-css-prefix}-folder-open-o:before { content: @fa-var-folder-open-o; }
|
||||
.@{fa-css-prefix}-smile-o:before { content: @fa-var-smile-o; }
|
||||
.@{fa-css-prefix}-frown-o:before { content: @fa-var-frown-o; }
|
||||
.@{fa-css-prefix}-meh-o:before { content: @fa-var-meh-o; }
|
||||
.@{fa-css-prefix}-gamepad:before { content: @fa-var-gamepad; }
|
||||
.@{fa-css-prefix}-keyboard-o:before { content: @fa-var-keyboard-o; }
|
||||
.@{fa-css-prefix}-flag-o:before { content: @fa-var-flag-o; }
|
||||
.@{fa-css-prefix}-flag-checkered:before { content: @fa-var-flag-checkered; }
|
||||
.@{fa-css-prefix}-terminal:before { content: @fa-var-terminal; }
|
||||
.@{fa-css-prefix}-code:before { content: @fa-var-code; }
|
||||
.@{fa-css-prefix}-mail-reply-all:before,
|
||||
.@{fa-css-prefix}-reply-all:before { content: @fa-var-reply-all; }
|
||||
.@{fa-css-prefix}-star-half-empty:before,
|
||||
.@{fa-css-prefix}-star-half-full:before,
|
||||
.@{fa-css-prefix}-star-half-o:before { content: @fa-var-star-half-o; }
|
||||
.@{fa-css-prefix}-location-arrow:before { content: @fa-var-location-arrow; }
|
||||
.@{fa-css-prefix}-crop:before { content: @fa-var-crop; }
|
||||
.@{fa-css-prefix}-code-fork:before { content: @fa-var-code-fork; }
|
||||
.@{fa-css-prefix}-unlink:before,
|
||||
.@{fa-css-prefix}-chain-broken:before { content: @fa-var-chain-broken; }
|
||||
.@{fa-css-prefix}-question:before { content: @fa-var-question; }
|
||||
.@{fa-css-prefix}-info:before { content: @fa-var-info; }
|
||||
.@{fa-css-prefix}-exclamation:before { content: @fa-var-exclamation; }
|
||||
.@{fa-css-prefix}-superscript:before { content: @fa-var-superscript; }
|
||||
.@{fa-css-prefix}-subscript:before { content: @fa-var-subscript; }
|
||||
.@{fa-css-prefix}-eraser:before { content: @fa-var-eraser; }
|
||||
.@{fa-css-prefix}-puzzle-piece:before { content: @fa-var-puzzle-piece; }
|
||||
.@{fa-css-prefix}-microphone:before { content: @fa-var-microphone; }
|
||||
.@{fa-css-prefix}-microphone-slash:before { content: @fa-var-microphone-slash; }
|
||||
.@{fa-css-prefix}-shield:before { content: @fa-var-shield; }
|
||||
.@{fa-css-prefix}-calendar-o:before { content: @fa-var-calendar-o; }
|
||||
.@{fa-css-prefix}-fire-extinguisher:before { content: @fa-var-fire-extinguisher; }
|
||||
.@{fa-css-prefix}-rocket:before { content: @fa-var-rocket; }
|
||||
.@{fa-css-prefix}-maxcdn:before { content: @fa-var-maxcdn; }
|
||||
.@{fa-css-prefix}-chevron-circle-left:before { content: @fa-var-chevron-circle-left; }
|
||||
.@{fa-css-prefix}-chevron-circle-right:before { content: @fa-var-chevron-circle-right; }
|
||||
.@{fa-css-prefix}-chevron-circle-up:before { content: @fa-var-chevron-circle-up; }
|
||||
.@{fa-css-prefix}-chevron-circle-down:before { content: @fa-var-chevron-circle-down; }
|
||||
.@{fa-css-prefix}-html5:before { content: @fa-var-html5; }
|
||||
.@{fa-css-prefix}-css3:before { content: @fa-var-css3; }
|
||||
.@{fa-css-prefix}-anchor:before { content: @fa-var-anchor; }
|
||||
.@{fa-css-prefix}-unlock-alt:before { content: @fa-var-unlock-alt; }
|
||||
.@{fa-css-prefix}-bullseye:before { content: @fa-var-bullseye; }
|
||||
.@{fa-css-prefix}-ellipsis-h:before { content: @fa-var-ellipsis-h; }
|
||||
.@{fa-css-prefix}-ellipsis-v:before { content: @fa-var-ellipsis-v; }
|
||||
.@{fa-css-prefix}-rss-square:before { content: @fa-var-rss-square; }
|
||||
.@{fa-css-prefix}-play-circle:before { content: @fa-var-play-circle; }
|
||||
.@{fa-css-prefix}-ticket:before { content: @fa-var-ticket; }
|
||||
.@{fa-css-prefix}-minus-square:before { content: @fa-var-minus-square; }
|
||||
.@{fa-css-prefix}-minus-square-o:before { content: @fa-var-minus-square-o; }
|
||||
.@{fa-css-prefix}-level-up:before { content: @fa-var-level-up; }
|
||||
.@{fa-css-prefix}-level-down:before { content: @fa-var-level-down; }
|
||||
.@{fa-css-prefix}-check-square:before { content: @fa-var-check-square; }
|
||||
.@{fa-css-prefix}-pencil-square:before { content: @fa-var-pencil-square; }
|
||||
.@{fa-css-prefix}-external-link-square:before { content: @fa-var-external-link-square; }
|
||||
.@{fa-css-prefix}-share-square:before { content: @fa-var-share-square; }
|
||||
.@{fa-css-prefix}-compass:before { content: @fa-var-compass; }
|
||||
.@{fa-css-prefix}-toggle-down:before,
|
||||
.@{fa-css-prefix}-caret-square-o-down:before { content: @fa-var-caret-square-o-down; }
|
||||
.@{fa-css-prefix}-toggle-up:before,
|
||||
.@{fa-css-prefix}-caret-square-o-up:before { content: @fa-var-caret-square-o-up; }
|
||||
.@{fa-css-prefix}-toggle-right:before,
|
||||
.@{fa-css-prefix}-caret-square-o-right:before { content: @fa-var-caret-square-o-right; }
|
||||
.@{fa-css-prefix}-euro:before,
|
||||
.@{fa-css-prefix}-eur:before { content: @fa-var-eur; }
|
||||
.@{fa-css-prefix}-gbp:before { content: @fa-var-gbp; }
|
||||
.@{fa-css-prefix}-dollar:before,
|
||||
.@{fa-css-prefix}-usd:before { content: @fa-var-usd; }
|
||||
.@{fa-css-prefix}-rupee:before,
|
||||
.@{fa-css-prefix}-inr:before { content: @fa-var-inr; }
|
||||
.@{fa-css-prefix}-cny:before,
|
||||
.@{fa-css-prefix}-rmb:before,
|
||||
.@{fa-css-prefix}-yen:before,
|
||||
.@{fa-css-prefix}-jpy:before { content: @fa-var-jpy; }
|
||||
.@{fa-css-prefix}-ruble:before,
|
||||
.@{fa-css-prefix}-rouble:before,
|
||||
.@{fa-css-prefix}-rub:before { content: @fa-var-rub; }
|
||||
.@{fa-css-prefix}-won:before,
|
||||
.@{fa-css-prefix}-krw:before { content: @fa-var-krw; }
|
||||
.@{fa-css-prefix}-bitcoin:before,
|
||||
.@{fa-css-prefix}-btc:before { content: @fa-var-btc; }
|
||||
.@{fa-css-prefix}-file:before { content: @fa-var-file; }
|
||||
.@{fa-css-prefix}-file-text:before { content: @fa-var-file-text; }
|
||||
.@{fa-css-prefix}-sort-alpha-asc:before { content: @fa-var-sort-alpha-asc; }
|
||||
.@{fa-css-prefix}-sort-alpha-desc:before { content: @fa-var-sort-alpha-desc; }
|
||||
.@{fa-css-prefix}-sort-amount-asc:before { content: @fa-var-sort-amount-asc; }
|
||||
.@{fa-css-prefix}-sort-amount-desc:before { content: @fa-var-sort-amount-desc; }
|
||||
.@{fa-css-prefix}-sort-numeric-asc:before { content: @fa-var-sort-numeric-asc; }
|
||||
.@{fa-css-prefix}-sort-numeric-desc:before { content: @fa-var-sort-numeric-desc; }
|
||||
.@{fa-css-prefix}-thumbs-up:before { content: @fa-var-thumbs-up; }
|
||||
.@{fa-css-prefix}-thumbs-down:before { content: @fa-var-thumbs-down; }
|
||||
.@{fa-css-prefix}-youtube-square:before { content: @fa-var-youtube-square; }
|
||||
.@{fa-css-prefix}-youtube:before { content: @fa-var-youtube; }
|
||||
.@{fa-css-prefix}-xing:before { content: @fa-var-xing; }
|
||||
.@{fa-css-prefix}-xing-square:before { content: @fa-var-xing-square; }
|
||||
.@{fa-css-prefix}-youtube-play:before { content: @fa-var-youtube-play; }
|
||||
.@{fa-css-prefix}-dropbox:before { content: @fa-var-dropbox; }
|
||||
.@{fa-css-prefix}-stack-overflow:before { content: @fa-var-stack-overflow; }
|
||||
.@{fa-css-prefix}-instagram:before { content: @fa-var-instagram; }
|
||||
.@{fa-css-prefix}-flickr:before { content: @fa-var-flickr; }
|
||||
.@{fa-css-prefix}-adn:before { content: @fa-var-adn; }
|
||||
.@{fa-css-prefix}-bitbucket:before { content: @fa-var-bitbucket; }
|
||||
.@{fa-css-prefix}-bitbucket-square:before { content: @fa-var-bitbucket-square; }
|
||||
.@{fa-css-prefix}-tumblr:before { content: @fa-var-tumblr; }
|
||||
.@{fa-css-prefix}-tumblr-square:before { content: @fa-var-tumblr-square; }
|
||||
.@{fa-css-prefix}-long-arrow-down:before { content: @fa-var-long-arrow-down; }
|
||||
.@{fa-css-prefix}-long-arrow-up:before { content: @fa-var-long-arrow-up; }
|
||||
.@{fa-css-prefix}-long-arrow-left:before { content: @fa-var-long-arrow-left; }
|
||||
.@{fa-css-prefix}-long-arrow-right:before { content: @fa-var-long-arrow-right; }
|
||||
.@{fa-css-prefix}-apple:before { content: @fa-var-apple; }
|
||||
.@{fa-css-prefix}-windows:before { content: @fa-var-windows; }
|
||||
.@{fa-css-prefix}-android:before { content: @fa-var-android; }
|
||||
.@{fa-css-prefix}-linux:before { content: @fa-var-linux; }
|
||||
.@{fa-css-prefix}-dribbble:before { content: @fa-var-dribbble; }
|
||||
.@{fa-css-prefix}-skype:before { content: @fa-var-skype; }
|
||||
.@{fa-css-prefix}-foursquare:before { content: @fa-var-foursquare; }
|
||||
.@{fa-css-prefix}-trello:before { content: @fa-var-trello; }
|
||||
.@{fa-css-prefix}-female:before { content: @fa-var-female; }
|
||||
.@{fa-css-prefix}-male:before { content: @fa-var-male; }
|
||||
.@{fa-css-prefix}-gittip:before { content: @fa-var-gittip; }
|
||||
.@{fa-css-prefix}-sun-o:before { content: @fa-var-sun-o; }
|
||||
.@{fa-css-prefix}-moon-o:before { content: @fa-var-moon-o; }
|
||||
.@{fa-css-prefix}-archive:before { content: @fa-var-archive; }
|
||||
.@{fa-css-prefix}-bug:before { content: @fa-var-bug; }
|
||||
.@{fa-css-prefix}-vk:before { content: @fa-var-vk; }
|
||||
.@{fa-css-prefix}-weibo:before { content: @fa-var-weibo; }
|
||||
.@{fa-css-prefix}-renren:before { content: @fa-var-renren; }
|
||||
.@{fa-css-prefix}-pagelines:before { content: @fa-var-pagelines; }
|
||||
.@{fa-css-prefix}-stack-exchange:before { content: @fa-var-stack-exchange; }
|
||||
.@{fa-css-prefix}-arrow-circle-o-right:before { content: @fa-var-arrow-circle-o-right; }
|
||||
.@{fa-css-prefix}-arrow-circle-o-left:before { content: @fa-var-arrow-circle-o-left; }
|
||||
.@{fa-css-prefix}-toggle-left:before,
|
||||
.@{fa-css-prefix}-caret-square-o-left:before { content: @fa-var-caret-square-o-left; }
|
||||
.@{fa-css-prefix}-dot-circle-o:before { content: @fa-var-dot-circle-o; }
|
||||
.@{fa-css-prefix}-wheelchair:before { content: @fa-var-wheelchair; }
|
||||
.@{fa-css-prefix}-vimeo-square:before { content: @fa-var-vimeo-square; }
|
||||
.@{fa-css-prefix}-turkish-lira:before,
|
||||
.@{fa-css-prefix}-try:before { content: @fa-var-try; }
|
||||
.@{fa-css-prefix}-plus-square-o:before { content: @fa-var-plus-square-o; }
|
||||
.@{fa-css-prefix}-space-shuttle:before { content: @fa-var-space-shuttle; }
|
||||
.@{fa-css-prefix}-slack:before { content: @fa-var-slack; }
|
||||
.@{fa-css-prefix}-envelope-square:before { content: @fa-var-envelope-square; }
|
||||
.@{fa-css-prefix}-wordpress:before { content: @fa-var-wordpress; }
|
||||
.@{fa-css-prefix}-openid:before { content: @fa-var-openid; }
|
||||
.@{fa-css-prefix}-institution:before,
|
||||
.@{fa-css-prefix}-bank:before,
|
||||
.@{fa-css-prefix}-university:before { content: @fa-var-university; }
|
||||
.@{fa-css-prefix}-mortar-board:before,
|
||||
.@{fa-css-prefix}-graduation-cap:before { content: @fa-var-graduation-cap; }
|
||||
.@{fa-css-prefix}-yahoo:before { content: @fa-var-yahoo; }
|
||||
.@{fa-css-prefix}-google:before { content: @fa-var-google; }
|
||||
.@{fa-css-prefix}-reddit:before { content: @fa-var-reddit; }
|
||||
.@{fa-css-prefix}-reddit-square:before { content: @fa-var-reddit-square; }
|
||||
.@{fa-css-prefix}-stumbleupon-circle:before { content: @fa-var-stumbleupon-circle; }
|
||||
.@{fa-css-prefix}-stumbleupon:before { content: @fa-var-stumbleupon; }
|
||||
.@{fa-css-prefix}-delicious:before { content: @fa-var-delicious; }
|
||||
.@{fa-css-prefix}-digg:before { content: @fa-var-digg; }
|
||||
.@{fa-css-prefix}-pied-piper-square:before,
|
||||
.@{fa-css-prefix}-pied-piper:before { content: @fa-var-pied-piper; }
|
||||
.@{fa-css-prefix}-pied-piper-alt:before { content: @fa-var-pied-piper-alt; }
|
||||
.@{fa-css-prefix}-drupal:before { content: @fa-var-drupal; }
|
||||
.@{fa-css-prefix}-joomla:before { content: @fa-var-joomla; }
|
||||
.@{fa-css-prefix}-language:before { content: @fa-var-language; }
|
||||
.@{fa-css-prefix}-fax:before { content: @fa-var-fax; }
|
||||
.@{fa-css-prefix}-building:before { content: @fa-var-building; }
|
||||
.@{fa-css-prefix}-child:before { content: @fa-var-child; }
|
||||
.@{fa-css-prefix}-paw:before { content: @fa-var-paw; }
|
||||
.@{fa-css-prefix}-spoon:before { content: @fa-var-spoon; }
|
||||
.@{fa-css-prefix}-cube:before { content: @fa-var-cube; }
|
||||
.@{fa-css-prefix}-cubes:before { content: @fa-var-cubes; }
|
||||
.@{fa-css-prefix}-behance:before { content: @fa-var-behance; }
|
||||
.@{fa-css-prefix}-behance-square:before { content: @fa-var-behance-square; }
|
||||
.@{fa-css-prefix}-steam:before { content: @fa-var-steam; }
|
||||
.@{fa-css-prefix}-steam-square:before { content: @fa-var-steam-square; }
|
||||
.@{fa-css-prefix}-recycle:before { content: @fa-var-recycle; }
|
||||
.@{fa-css-prefix}-automobile:before,
|
||||
.@{fa-css-prefix}-car:before { content: @fa-var-car; }
|
||||
.@{fa-css-prefix}-cab:before,
|
||||
.@{fa-css-prefix}-taxi:before { content: @fa-var-taxi; }
|
||||
.@{fa-css-prefix}-tree:before { content: @fa-var-tree; }
|
||||
.@{fa-css-prefix}-spotify:before { content: @fa-var-spotify; }
|
||||
.@{fa-css-prefix}-deviantart:before { content: @fa-var-deviantart; }
|
||||
.@{fa-css-prefix}-soundcloud:before { content: @fa-var-soundcloud; }
|
||||
.@{fa-css-prefix}-database:before { content: @fa-var-database; }
|
||||
.@{fa-css-prefix}-file-pdf-o:before { content: @fa-var-file-pdf-o; }
|
||||
.@{fa-css-prefix}-file-word-o:before { content: @fa-var-file-word-o; }
|
||||
.@{fa-css-prefix}-file-excel-o:before { content: @fa-var-file-excel-o; }
|
||||
.@{fa-css-prefix}-file-powerpoint-o:before { content: @fa-var-file-powerpoint-o; }
|
||||
.@{fa-css-prefix}-file-photo-o:before,
|
||||
.@{fa-css-prefix}-file-picture-o:before,
|
||||
.@{fa-css-prefix}-file-image-o:before { content: @fa-var-file-image-o; }
|
||||
.@{fa-css-prefix}-file-zip-o:before,
|
||||
.@{fa-css-prefix}-file-archive-o:before { content: @fa-var-file-archive-o; }
|
||||
.@{fa-css-prefix}-file-sound-o:before,
|
||||
.@{fa-css-prefix}-file-audio-o:before { content: @fa-var-file-audio-o; }
|
||||
.@{fa-css-prefix}-file-movie-o:before,
|
||||
.@{fa-css-prefix}-file-video-o:before { content: @fa-var-file-video-o; }
|
||||
.@{fa-css-prefix}-file-code-o:before { content: @fa-var-file-code-o; }
|
||||
.@{fa-css-prefix}-vine:before { content: @fa-var-vine; }
|
||||
.@{fa-css-prefix}-codepen:before { content: @fa-var-codepen; }
|
||||
.@{fa-css-prefix}-jsfiddle:before { content: @fa-var-jsfiddle; }
|
||||
.@{fa-css-prefix}-life-bouy:before,
|
||||
.@{fa-css-prefix}-life-saver:before,
|
||||
.@{fa-css-prefix}-support:before,
|
||||
.@{fa-css-prefix}-life-ring:before { content: @fa-var-life-ring; }
|
||||
.@{fa-css-prefix}-circle-o-notch:before { content: @fa-var-circle-o-notch; }
|
||||
.@{fa-css-prefix}-ra:before,
|
||||
.@{fa-css-prefix}-rebel:before { content: @fa-var-rebel; }
|
||||
.@{fa-css-prefix}-ge:before,
|
||||
.@{fa-css-prefix}-empire:before { content: @fa-var-empire; }
|
||||
.@{fa-css-prefix}-git-square:before { content: @fa-var-git-square; }
|
||||
.@{fa-css-prefix}-git:before { content: @fa-var-git; }
|
||||
.@{fa-css-prefix}-hacker-news:before { content: @fa-var-hacker-news; }
|
||||
.@{fa-css-prefix}-tencent-weibo:before { content: @fa-var-tencent-weibo; }
|
||||
.@{fa-css-prefix}-qq:before { content: @fa-var-qq; }
|
||||
.@{fa-css-prefix}-wechat:before,
|
||||
.@{fa-css-prefix}-weixin:before { content: @fa-var-weixin; }
|
||||
.@{fa-css-prefix}-send:before,
|
||||
.@{fa-css-prefix}-paper-plane:before { content: @fa-var-paper-plane; }
|
||||
.@{fa-css-prefix}-send-o:before,
|
||||
.@{fa-css-prefix}-paper-plane-o:before { content: @fa-var-paper-plane-o; }
|
||||
.@{fa-css-prefix}-history:before { content: @fa-var-history; }
|
||||
.@{fa-css-prefix}-circle-thin:before { content: @fa-var-circle-thin; }
|
||||
.@{fa-css-prefix}-header:before { content: @fa-var-header; }
|
||||
.@{fa-css-prefix}-paragraph:before { content: @fa-var-paragraph; }
|
||||
.@{fa-css-prefix}-sliders:before { content: @fa-var-sliders; }
|
||||
.@{fa-css-prefix}-share-alt:before { content: @fa-var-share-alt; }
|
||||
.@{fa-css-prefix}-share-alt-square:before { content: @fa-var-share-alt-square; }
|
||||
.@{fa-css-prefix}-bomb:before { content: @fa-var-bomb; }
|
13
_assets/stylesheets/font-awesome/larger.less
vendored
|
@ -1,13 +0,0 @@
|
|||
// Icon Sizes
|
||||
// -------------------------
|
||||
|
||||
/* makes the font 33% larger relative to the icon container */
|
||||
.@{fa-css-prefix}-lg {
|
||||
font-size: (4em / 3);
|
||||
line-height: (3em / 4);
|
||||
vertical-align: -15%;
|
||||
}
|
||||
.@{fa-css-prefix}-2x { font-size: 2em; }
|
||||
.@{fa-css-prefix}-3x { font-size: 3em; }
|
||||
.@{fa-css-prefix}-4x { font-size: 4em; }
|
||||
.@{fa-css-prefix}-5x { font-size: 5em; }
|
19
_assets/stylesheets/font-awesome/list.less
vendored
|
@ -1,19 +0,0 @@
|
|||
// List Icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-ul {
|
||||
padding-left: 0;
|
||||
margin-left: @fa-li-width;
|
||||
list-style-type: none;
|
||||
> li { position: relative; }
|
||||
}
|
||||
.@{fa-css-prefix}-li {
|
||||
position: absolute;
|
||||
left: -@fa-li-width;
|
||||
width: @fa-li-width;
|
||||
top: (2em / 14);
|
||||
text-align: center;
|
||||
&.@{fa-css-prefix}-lg {
|
||||
left: -@fa-li-width + (4em / 14);
|
||||
}
|
||||
}
|
20
_assets/stylesheets/font-awesome/mixins.less
vendored
|
@ -1,20 +0,0 @@
|
|||
// Mixins
|
||||
// --------------------------
|
||||
|
||||
.fa-icon-rotate(@degrees, @rotation) {
|
||||
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation);
|
||||
-webkit-transform: rotate(@degrees);
|
||||
-moz-transform: rotate(@degrees);
|
||||
-ms-transform: rotate(@degrees);
|
||||
-o-transform: rotate(@degrees);
|
||||
transform: rotate(@degrees);
|
||||
}
|
||||
|
||||
.fa-icon-flip(@horiz, @vert, @rotation) {
|
||||
filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=@rotation, mirror=1);
|
||||
-webkit-transform: scale(@horiz, @vert);
|
||||
-moz-transform: scale(@horiz, @vert);
|
||||
-ms-transform: scale(@horiz, @vert);
|
||||
-o-transform: scale(@horiz, @vert);
|
||||
transform: scale(@horiz, @vert);
|
||||
}
|
14
_assets/stylesheets/font-awesome/path.less
vendored
|
@ -1,14 +0,0 @@
|
|||
/* FONT PATH
|
||||
* -------------------------- */
|
||||
|
||||
@font-face {
|
||||
font-family: 'FontAwesome';
|
||||
src: ~"url('@{fa-font-path}/fontawesome-webfont.eot?v=@{fa-version}')";
|
||||
src: ~"url('@{fa-font-path}/fontawesome-webfont.eot?#iefix&v=@{fa-version}') format('embedded-opentype')",
|
||||
~"url('@{fa-font-path}/fontawesome-webfont.woff?v=@{fa-version}') format('woff')",
|
||||
~"url('@{fa-font-path}/fontawesome-webfont.ttf?v=@{fa-version}') format('truetype')",
|
||||
~"url('@{fa-font-path}/fontawesome-webfont.svg?v=@{fa-version}#fontawesomeregular') format('svg')";
|
||||
// src: url('@{fa-font-path}/FontAwesome.otf') format('opentype'); // used when developing fonts
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
// Rotated & Flipped Icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-rotate-90 { .fa-icon-rotate(90deg, 1); }
|
||||
.@{fa-css-prefix}-rotate-180 { .fa-icon-rotate(180deg, 2); }
|
||||
.@{fa-css-prefix}-rotate-270 { .fa-icon-rotate(270deg, 3); }
|
||||
|
||||
.@{fa-css-prefix}-flip-horizontal { .fa-icon-flip(-1, 1, 0); }
|
||||
.@{fa-css-prefix}-flip-vertical { .fa-icon-flip(1, -1, 2); }
|
32
_assets/stylesheets/font-awesome/spinning.less
vendored
|
@ -1,32 +0,0 @@
|
|||
// Spinning Icons
|
||||
// --------------------------
|
||||
|
||||
.@{fa-css-prefix}-spin {
|
||||
-webkit-animation: spin 2s infinite linear;
|
||||
-moz-animation: spin 2s infinite linear;
|
||||
-o-animation: spin 2s infinite linear;
|
||||
animation: spin 2s infinite linear;
|
||||
}
|
||||
|
||||
@-moz-keyframes spin {
|
||||
0% { -moz-transform: rotate(0deg); }
|
||||
100% { -moz-transform: rotate(359deg); }
|
||||
}
|
||||
@-webkit-keyframes spin {
|
||||
0% { -webkit-transform: rotate(0deg); }
|
||||
100% { -webkit-transform: rotate(359deg); }
|
||||
}
|
||||
@-o-keyframes spin {
|
||||
0% { -o-transform: rotate(0deg); }
|
||||
100% { -o-transform: rotate(359deg); }
|
||||
}
|
||||
@keyframes spin {
|
||||
0% {
|
||||
-webkit-transform: rotate(0deg);
|
||||
transform: rotate(0deg);
|
||||
}
|
||||
100% {
|
||||
-webkit-transform: rotate(359deg);
|
||||
transform: rotate(359deg);
|
||||
}
|
||||
}
|
20
_assets/stylesheets/font-awesome/stacked.less
vendored
|
@ -1,20 +0,0 @@
|
|||
// Stacked Icons
|
||||
// -------------------------
|
||||
|
||||
.@{fa-css-prefix}-stack {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 2em;
|
||||
height: 2em;
|
||||
line-height: 2em;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.@{fa-css-prefix}-stack-1x, .@{fa-css-prefix}-stack-2x {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
}
|
||||
.@{fa-css-prefix}-stack-1x { line-height: inherit; }
|
||||
.@{fa-css-prefix}-stack-2x { font-size: 2em; }
|
||||
.@{fa-css-prefix}-inverse { color: @fa-inverse; }
|
513
_assets/stylesheets/font-awesome/variables.less
vendored
|
@ -1,513 +0,0 @@
|
|||
// Variables
|
||||
// --------------------------
|
||||
|
||||
@fa-font-path: "//netdna.bootstrapcdn.com/font-awesome/4.1.0/fonts"; // for referencing Bootstrap CDN font files directly
|
||||
@fa-css-prefix: fa;
|
||||
@fa-version: "4.1.0";
|
||||
@fa-border-color: #eee;
|
||||
@fa-inverse: #fff;
|
||||
@fa-li-width: (30em / 14);
|
||||
|
||||
@fa-var-adjust: "\f042";
|
||||
@fa-var-adn: "\f170";
|
||||
@fa-var-align-center: "\f037";
|
||||
@fa-var-align-justify: "\f039";
|
||||
@fa-var-align-left: "\f036";
|
||||
@fa-var-align-right: "\f038";
|
||||
@fa-var-ambulance: "\f0f9";
|
||||
@fa-var-anchor: "\f13d";
|
||||
@fa-var-android: "\f17b";
|
||||
@fa-var-angle-double-down: "\f103";
|
||||
@fa-var-angle-double-left: "\f100";
|
||||
@fa-var-angle-double-right: "\f101";
|
||||
@fa-var-angle-double-up: "\f102";
|
||||
@fa-var-angle-down: "\f107";
|
||||
@fa-var-angle-left: "\f104";
|
||||
@fa-var-angle-right: "\f105";
|
||||
@fa-var-angle-up: "\f106";
|
||||
@fa-var-apple: "\f179";
|
||||
@fa-var-archive: "\f187";
|
||||
@fa-var-arrow-circle-down: "\f0ab";
|
||||
@fa-var-arrow-circle-left: "\f0a8";
|
||||
@fa-var-arrow-circle-o-down: "\f01a";
|
||||
@fa-var-arrow-circle-o-left: "\f190";
|
||||
@fa-var-arrow-circle-o-right: "\f18e";
|
||||
@fa-var-arrow-circle-o-up: "\f01b";
|
||||
@fa-var-arrow-circle-right: "\f0a9";
|
||||
@fa-var-arrow-circle-up: "\f0aa";
|
||||
@fa-var-arrow-down: "\f063";
|
||||
@fa-var-arrow-left: "\f060";
|
||||
@fa-var-arrow-right: "\f061";
|
||||
@fa-var-arrow-up: "\f062";
|
||||
@fa-var-arrows: "\f047";
|
||||
@fa-var-arrows-alt: "\f0b2";
|
||||
@fa-var-arrows-h: "\f07e";
|
||||
@fa-var-arrows-v: "\f07d";
|
||||
@fa-var-asterisk: "\f069";
|
||||
@fa-var-automobile: "\f1b9";
|
||||
@fa-var-backward: "\f04a";
|
||||
@fa-var-ban: "\f05e";
|
||||
@fa-var-bank: "\f19c";
|
||||
@fa-var-bar-chart-o: "\f080";
|
||||
@fa-var-barcode: "\f02a";
|
||||
@fa-var-bars: "\f0c9";
|
||||
@fa-var-beer: "\f0fc";
|
||||
@fa-var-behance: "\f1b4";
|
||||
@fa-var-behance-square: "\f1b5";
|
||||
@fa-var-bell: "\f0f3";
|
||||
@fa-var-bell-o: "\f0a2";
|
||||
@fa-var-bitbucket: "\f171";
|
||||
@fa-var-bitbucket-square: "\f172";
|
||||
@fa-var-bitcoin: "\f15a";
|
||||
@fa-var-bold: "\f032";
|
||||
@fa-var-bolt: "\f0e7";
|
||||
@fa-var-bomb: "\f1e2";
|
||||
@fa-var-book: "\f02d";
|
||||
@fa-var-bookmark: "\f02e";
|
||||
@fa-var-bookmark-o: "\f097";
|
||||
@fa-var-briefcase: "\f0b1";
|
||||
@fa-var-btc: "\f15a";
|
||||
@fa-var-bug: "\f188";
|
||||
@fa-var-building: "\f1ad";
|
||||
@fa-var-building-o: "\f0f7";
|
||||
@fa-var-bullhorn: "\f0a1";
|
||||
@fa-var-bullseye: "\f140";
|
||||
@fa-var-cab: "\f1ba";
|
||||
@fa-var-calendar: "\f073";
|
||||
@fa-var-calendar-o: "\f133";
|
||||
@fa-var-camera: "\f030";
|
||||
@fa-var-camera-retro: "\f083";
|
||||
@fa-var-car: "\f1b9";
|
||||
@fa-var-caret-down: "\f0d7";
|
||||
@fa-var-caret-left: "\f0d9";
|
||||
@fa-var-caret-right: "\f0da";
|
||||
@fa-var-caret-square-o-down: "\f150";
|
||||
@fa-var-caret-square-o-left: "\f191";
|
||||
@fa-var-caret-square-o-right: "\f152";
|
||||
@fa-var-caret-square-o-up: "\f151";
|
||||
@fa-var-caret-up: "\f0d8";
|
||||
@fa-var-certificate: "\f0a3";
|
||||
@fa-var-chain: "\f0c1";
|
||||
@fa-var-chain-broken: "\f127";
|
||||
@fa-var-check: "\f00c";
|
||||
@fa-var-check-circle: "\f058";
|
||||
@fa-var-check-circle-o: "\f05d";
|
||||
@fa-var-check-square: "\f14a";
|
||||
@fa-var-check-square-o: "\f046";
|
||||
@fa-var-chevron-circle-down: "\f13a";
|
||||
@fa-var-chevron-circle-left: "\f137";
|
||||
@fa-var-chevron-circle-right: "\f138";
|
||||
@fa-var-chevron-circle-up: "\f139";
|
||||
@fa-var-chevron-down: "\f078";
|
||||
@fa-var-chevron-left: "\f053";
|
||||
@fa-var-chevron-right: "\f054";
|
||||
@fa-var-chevron-up: "\f077";
|
||||
@fa-var-child: "\f1ae";
|
||||
@fa-var-circle: "\f111";
|
||||
@fa-var-circle-o: "\f10c";
|
||||
@fa-var-circle-o-notch: "\f1ce";
|
||||
@fa-var-circle-thin: "\f1db";
|
||||
@fa-var-clipboard: "\f0ea";
|
||||
@fa-var-clock-o: "\f017";
|
||||
@fa-var-cloud: "\f0c2";
|
||||
@fa-var-cloud-download: "\f0ed";
|
||||
@fa-var-cloud-upload: "\f0ee";
|
||||
@fa-var-cny: "\f157";
|
||||
@fa-var-code: "\f121";
|
||||
@fa-var-code-fork: "\f126";
|
||||
@fa-var-codepen: "\f1cb";
|
||||
@fa-var-coffee: "\f0f4";
|
||||
@fa-var-cog: "\f013";
|
||||
@fa-var-cogs: "\f085";
|
||||
@fa-var-columns: "\f0db";
|
||||
@fa-var-comment: "\f075";
|
||||
@fa-var-comment-o: "\f0e5";
|
||||
@fa-var-comments: "\f086";
|
||||
@fa-var-comments-o: "\f0e6";
|
||||
@fa-var-compass: "\f14e";
|
||||
@fa-var-compress: "\f066";
|
||||
@fa-var-copy: "\f0c5";
|
||||
@fa-var-credit-card: "\f09d";
|
||||
@fa-var-crop: "\f125";
|
||||
@fa-var-crosshairs: "\f05b";
|
||||
@fa-var-css3: "\f13c";
|
||||
@fa-var-cube: "\f1b2";
|
||||
@fa-var-cubes: "\f1b3";
|
||||
@fa-var-cut: "\f0c4";
|
||||
@fa-var-cutlery: "\f0f5";
|
||||
@fa-var-dashboard: "\f0e4";
|
||||
@fa-var-database: "\f1c0";
|
||||
@fa-var-dedent: "\f03b";
|
||||
@fa-var-delicious: "\f1a5";
|
||||
@fa-var-desktop: "\f108";
|
||||
@fa-var-deviantart: "\f1bd";
|
||||
@fa-var-digg: "\f1a6";
|
||||
@fa-var-dollar: "\f155";
|
||||
@fa-var-dot-circle-o: "\f192";
|
||||
@fa-var-download: "\f019";
|
||||
@fa-var-dribbble: "\f17d";
|
||||
@fa-var-dropbox: "\f16b";
|
||||
@fa-var-drupal: "\f1a9";
|
||||
@fa-var-edit: "\f044";
|
||||
@fa-var-eject: "\f052";
|
||||
@fa-var-ellipsis-h: "\f141";
|
||||
@fa-var-ellipsis-v: "\f142";
|
||||
@fa-var-empire: "\f1d1";
|
||||
@fa-var-envelope: "\f0e0";
|
||||
@fa-var-envelope-o: "\f003";
|
||||
@fa-var-envelope-square: "\f199";
|
||||
@fa-var-eraser: "\f12d";
|
||||
@fa-var-eur: "\f153";
|
||||
@fa-var-euro: "\f153";
|
||||
@fa-var-exchange: "\f0ec";
|
||||
@fa-var-exclamation: "\f12a";
|
||||
@fa-var-exclamation-circle: "\f06a";
|
||||
@fa-var-exclamation-triangle: "\f071";
|
||||
@fa-var-expand: "\f065";
|
||||
@fa-var-external-link: "\f08e";
|
||||
@fa-var-external-link-square: "\f14c";
|
||||
@fa-var-eye: "\f06e";
|
||||
@fa-var-eye-slash: "\f070";
|
||||
@fa-var-facebook: "\f09a";
|
||||
@fa-var-facebook-square: "\f082";
|
||||
@fa-var-fast-backward: "\f049";
|
||||
@fa-var-fast-forward: "\f050";
|
||||
@fa-var-fax: "\f1ac";
|
||||
@fa-var-female: "\f182";
|
||||
@fa-var-fighter-jet: "\f0fb";
|
||||
@fa-var-file: "\f15b";
|
||||
@fa-var-file-archive-o: "\f1c6";
|
||||
@fa-var-file-audio-o: "\f1c7";
|
||||
@fa-var-file-code-o: "\f1c9";
|
||||
@fa-var-file-excel-o: "\f1c3";
|
||||
@fa-var-file-image-o: "\f1c5";
|
||||
@fa-var-file-movie-o: "\f1c8";
|
||||
@fa-var-file-o: "\f016";
|
||||
@fa-var-file-pdf-o: "\f1c1";
|
||||
@fa-var-file-photo-o: "\f1c5";
|
||||
@fa-var-file-picture-o: "\f1c5";
|
||||
@fa-var-file-powerpoint-o: "\f1c4";
|
||||
@fa-var-file-sound-o: "\f1c7";
|
||||
@fa-var-file-text: "\f15c";
|
||||
@fa-var-file-text-o: "\f0f6";
|
||||
@fa-var-file-video-o: "\f1c8";
|
||||
@fa-var-file-word-o: "\f1c2";
|
||||
@fa-var-file-zip-o: "\f1c6";
|
||||
@fa-var-files-o: "\f0c5";
|
||||
@fa-var-film: "\f008";
|
||||
@fa-var-filter: "\f0b0";
|
||||
@fa-var-fire: "\f06d";
|
||||
@fa-var-fire-extinguisher: "\f134";
|
||||
@fa-var-flag: "\f024";
|
||||
@fa-var-flag-checkered: "\f11e";
|
||||
@fa-var-flag-o: "\f11d";
|
||||
@fa-var-flash: "\f0e7";
|
||||
@fa-var-flask: "\f0c3";
|
||||
@fa-var-flickr: "\f16e";
|
||||
@fa-var-floppy-o: "\f0c7";
|
||||
@fa-var-folder: "\f07b";
|
||||
@fa-var-folder-o: "\f114";
|
||||
@fa-var-folder-open: "\f07c";
|
||||
@fa-var-folder-open-o: "\f115";
|
||||
@fa-var-font: "\f031";
|
||||
@fa-var-forward: "\f04e";
|
||||
@fa-var-foursquare: "\f180";
|
||||
@fa-var-frown-o: "\f119";
|
||||
@fa-var-gamepad: "\f11b";
|
||||
@fa-var-gavel: "\f0e3";
|
||||
@fa-var-gbp: "\f154";
|
||||
@fa-var-ge: "\f1d1";
|
||||
@fa-var-gear: "\f013";
|
||||
@fa-var-gears: "\f085";
|
||||
@fa-var-gift: "\f06b";
|
||||
@fa-var-git: "\f1d3";
|
||||
@fa-var-git-square: "\f1d2";
|
||||
@fa-var-github: "\f09b";
|
||||
@fa-var-github-alt: "\f113";
|
||||
@fa-var-github-square: "\f092";
|
||||
@fa-var-gittip: "\f184";
|
||||
@fa-var-glass: "\f000";
|
||||
@fa-var-globe: "\f0ac";
|
||||
@fa-var-google: "\f1a0";
|
||||
@fa-var-google-plus: "\f0d5";
|
||||
@fa-var-google-plus-square: "\f0d4";
|
||||
@fa-var-graduation-cap: "\f19d";
|
||||
@fa-var-group: "\f0c0";
|
||||
@fa-var-h-square: "\f0fd";
|
||||
@fa-var-hacker-news: "\f1d4";
|
||||
@fa-var-hand-o-down: "\f0a7";
|
||||
@fa-var-hand-o-left: "\f0a5";
|
||||
@fa-var-hand-o-right: "\f0a4";
|
||||
@fa-var-hand-o-up: "\f0a6";
|
||||
@fa-var-hdd-o: "\f0a0";
|
||||
@fa-var-header: "\f1dc";
|
||||
@fa-var-headphones: "\f025";
|
||||
@fa-var-heart: "\f004";
|
||||
@fa-var-heart-o: "\f08a";
|
||||
@fa-var-history: "\f1da";
|
||||
@fa-var-home: "\f015";
|
||||
@fa-var-hospital-o: "\f0f8";
|
||||
@fa-var-html5: "\f13b";
|
||||
@fa-var-image: "\f03e";
|
||||
@fa-var-inbox: "\f01c";
|
||||
@fa-var-indent: "\f03c";
|
||||
@fa-var-info: "\f129";
|
||||
@fa-var-info-circle: "\f05a";
|
||||
@fa-var-inr: "\f156";
|
||||
@fa-var-instagram: "\f16d";
|
||||
@fa-var-institution: "\f19c";
|
||||
@fa-var-italic: "\f033";
|
||||
@fa-var-joomla: "\f1aa";
|
||||
@fa-var-jpy: "\f157";
|
||||
@fa-var-jsfiddle: "\f1cc";
|
||||
@fa-var-key: "\f084";
|
||||
@fa-var-keyboard-o: "\f11c";
|
||||
@fa-var-krw: "\f159";
|
||||
@fa-var-language: "\f1ab";
|
||||
@fa-var-laptop: "\f109";
|
||||
@fa-var-leaf: "\f06c";
|
||||
@fa-var-legal: "\f0e3";
|
||||
@fa-var-lemon-o: "\f094";
|
||||
@fa-var-level-down: "\f149";
|
||||
@fa-var-level-up: "\f148";
|
||||
@fa-var-life-bouy: "\f1cd";
|
||||
@fa-var-life-ring: "\f1cd";
|
||||
@fa-var-life-saver: "\f1cd";
|
||||
@fa-var-lightbulb-o: "\f0eb";
|
||||
@fa-var-link: "\f0c1";
|
||||
@fa-var-linkedin: "\f0e1";
|
||||
@fa-var-linkedin-square: "\f08c";
|
||||
@fa-var-linux: "\f17c";
|
||||
@fa-var-list: "\f03a";
|
||||
@fa-var-list-alt: "\f022";
|
||||
@fa-var-list-ol: "\f0cb";
|
||||
@fa-var-list-ul: "\f0ca";
|
||||
@fa-var-location-arrow: "\f124";
|
||||
@fa-var-lock: "\f023";
|
||||
@fa-var-long-arrow-down: "\f175";
|
||||
@fa-var-long-arrow-left: "\f177";
|
||||
@fa-var-long-arrow-right: "\f178";
|
||||
@fa-var-long-arrow-up: "\f176";
|
||||
@fa-var-magic: "\f0d0";
|
||||
@fa-var-magnet: "\f076";
|
||||
@fa-var-mail-forward: "\f064";
|
||||
@fa-var-mail-reply: "\f112";
|
||||
@fa-var-mail-reply-all: "\f122";
|
||||
@fa-var-male: "\f183";
|
||||
@fa-var-map-marker: "\f041";
|
||||
@fa-var-maxcdn: "\f136";
|
||||
@fa-var-medkit: "\f0fa";
|
||||
@fa-var-meh-o: "\f11a";
|
||||
@fa-var-microphone: "\f130";
|
||||
@fa-var-microphone-slash: "\f131";
|
||||
@fa-var-minus: "\f068";
|
||||
@fa-var-minus-circle: "\f056";
|
||||
@fa-var-minus-square: "\f146";
|
||||
@fa-var-minus-square-o: "\f147";
|
||||
@fa-var-mobile: "\f10b";
|
||||
@fa-var-mobile-phone: "\f10b";
|
||||
@fa-var-money: "\f0d6";
|
||||
@fa-var-moon-o: "\f186";
|
||||
@fa-var-mortar-board: "\f19d";
|
||||
@fa-var-music: "\f001";
|
||||
@fa-var-navicon: "\f0c9";
|
||||
@fa-var-openid: "\f19b";
|
||||
@fa-var-outdent: "\f03b";
|
||||
@fa-var-pagelines: "\f18c";
|
||||
@fa-var-paper-plane: "\f1d8";
|
||||
@fa-var-paper-plane-o: "\f1d9";
|
||||
@fa-var-paperclip: "\f0c6";
|
||||
@fa-var-paragraph: "\f1dd";
|
||||
@fa-var-paste: "\f0ea";
|
||||
@fa-var-pause: "\f04c";
|
||||
@fa-var-paw: "\f1b0";
|
||||
@fa-var-pencil: "\f040";
|
||||
@fa-var-pencil-square: "\f14b";
|
||||
@fa-var-pencil-square-o: "\f044";
|
||||
@fa-var-phone: "\f095";
|
||||
@fa-var-phone-square: "\f098";
|
||||
@fa-var-photo: "\f03e";
|
||||
@fa-var-picture-o: "\f03e";
|
||||
@fa-var-pied-piper: "\f1a7";
|
||||
@fa-var-pied-piper-alt: "\f1a8";
|
||||
@fa-var-pied-piper-square: "\f1a7";
|
||||
@fa-var-pinterest: "\f0d2";
|
||||
@fa-var-pinterest-square: "\f0d3";
|
||||
@fa-var-plane: "\f072";
|
||||
@fa-var-play: "\f04b";
|
||||
@fa-var-play-circle: "\f144";
|
||||
@fa-var-play-circle-o: "\f01d";
|
||||
@fa-var-plus: "\f067";
|
||||
@fa-var-plus-circle: "\f055";
|
||||
@fa-var-plus-square: "\f0fe";
|
||||
@fa-var-plus-square-o: "\f196";
|
||||
@fa-var-power-off: "\f011";
|
||||
@fa-var-print: "\f02f";
|
||||
@fa-var-puzzle-piece: "\f12e";
|
||||
@fa-var-qq: "\f1d6";
|
||||
@fa-var-qrcode: "\f029";
|
||||
@fa-var-question: "\f128";
|
||||
@fa-var-question-circle: "\f059";
|
||||
@fa-var-quote-left: "\f10d";
|
||||
@fa-var-quote-right: "\f10e";
|
||||
@fa-var-ra: "\f1d0";
|
||||
@fa-var-random: "\f074";
|
||||
@fa-var-rebel: "\f1d0";
|
||||
@fa-var-recycle: "\f1b8";
|
||||
@fa-var-reddit: "\f1a1";
|
||||
@fa-var-reddit-square: "\f1a2";
|
||||
@fa-var-refresh: "\f021";
|
||||
@fa-var-renren: "\f18b";
|
||||
@fa-var-reorder: "\f0c9";
|
||||
@fa-var-repeat: "\f01e";
|
||||
@fa-var-reply: "\f112";
|
||||
@fa-var-reply-all: "\f122";
|
||||
@fa-var-retweet: "\f079";
|
||||
@fa-var-rmb: "\f157";
|
||||
@fa-var-road: "\f018";
|
||||
@fa-var-rocket: "\f135";
|
||||
@fa-var-rotate-left: "\f0e2";
|
||||
@fa-var-rotate-right: "\f01e";
|
||||
@fa-var-rouble: "\f158";
|
||||
@fa-var-rss: "\f09e";
|
||||
@fa-var-rss-square: "\f143";
|
||||
@fa-var-rub: "\f158";
|
||||
@fa-var-ruble: "\f158";
|
||||
@fa-var-rupee: "\f156";
|
||||
@fa-var-save: "\f0c7";
|
||||
@fa-var-scissors: "\f0c4";
|
||||
@fa-var-search: "\f002";
|
||||
@fa-var-search-minus: "\f010";
|
||||
@fa-var-search-plus: "\f00e";
|
||||
@fa-var-send: "\f1d8";
|
||||
@fa-var-send-o: "\f1d9";
|
||||
@fa-var-share: "\f064";
|
||||
@fa-var-share-alt: "\f1e0";
|
||||
@fa-var-share-alt-square: "\f1e1";
|
||||
@fa-var-share-square: "\f14d";
|
||||
@fa-var-share-square-o: "\f045";
|
||||
@fa-var-shield: "\f132";
|
||||
@fa-var-shopping-cart: "\f07a";
|
||||
@fa-var-sign-in: "\f090";
|
||||
@fa-var-sign-out: "\f08b";
|
||||
@fa-var-signal: "\f012";
|
||||
@fa-var-sitemap: "\f0e8";
|
||||
@fa-var-skype: "\f17e";
|
||||
@fa-var-slack: "\f198";
|
||||
@fa-var-sliders: "\f1de";
|
||||
@fa-var-smile-o: "\f118";
|
||||
@fa-var-sort: "\f0dc";
|
||||
@fa-var-sort-alpha-asc: "\f15d";
|
||||
@fa-var-sort-alpha-desc: "\f15e";
|
||||
@fa-var-sort-amount-asc: "\f160";
|
||||
@fa-var-sort-amount-desc: "\f161";
|
||||
@fa-var-sort-asc: "\f0de";
|
||||
@fa-var-sort-desc: "\f0dd";
|
||||
@fa-var-sort-down: "\f0dd";
|
||||
@fa-var-sort-numeric-asc: "\f162";
|
||||
@fa-var-sort-numeric-desc: "\f163";
|
||||
@fa-var-sort-up: "\f0de";
|
||||
@fa-var-soundcloud: "\f1be";
|
||||
@fa-var-space-shuttle: "\f197";
|
||||
@fa-var-spinner: "\f110";
|
||||
@fa-var-spoon: "\f1b1";
|
||||
@fa-var-spotify: "\f1bc";
|
||||
@fa-var-square: "\f0c8";
|
||||
@fa-var-square-o: "\f096";
|
||||
@fa-var-stack-exchange: "\f18d";
|
||||
@fa-var-stack-overflow: "\f16c";
|
||||
@fa-var-star: "\f005";
|
||||
@fa-var-star-half: "\f089";
|
||||
@fa-var-star-half-empty: "\f123";
|
||||
@fa-var-star-half-full: "\f123";
|
||||
@fa-var-star-half-o: "\f123";
|
||||
@fa-var-star-o: "\f006";
|
||||
@fa-var-steam: "\f1b6";
|
||||
@fa-var-steam-square: "\f1b7";
|
||||
@fa-var-step-backward: "\f048";
|
||||
@fa-var-step-forward: "\f051";
|
||||
@fa-var-stethoscope: "\f0f1";
|
||||
@fa-var-stop: "\f04d";
|
||||
@fa-var-strikethrough: "\f0cc";
|
||||
@fa-var-stumbleupon: "\f1a4";
|
||||
@fa-var-stumbleupon-circle: "\f1a3";
|
||||
@fa-var-subscript: "\f12c";
|
||||
@fa-var-suitcase: "\f0f2";
|
||||
@fa-var-sun-o: "\f185";
|
||||
@fa-var-superscript: "\f12b";
|
||||
@fa-var-support: "\f1cd";
|
||||
@fa-var-table: "\f0ce";
|
||||
@fa-var-tablet: "\f10a";
|
||||
@fa-var-tachometer: "\f0e4";
|
||||
@fa-var-tag: "\f02b";
|
||||
@fa-var-tags: "\f02c";
|
||||
@fa-var-tasks: "\f0ae";
|
||||
@fa-var-taxi: "\f1ba";
|
||||
@fa-var-tencent-weibo: "\f1d5";
|
||||
@fa-var-terminal: "\f120";
|
||||
@fa-var-text-height: "\f034";
|
||||
@fa-var-text-width: "\f035";
|
||||
@fa-var-th: "\f00a";
|
||||
@fa-var-th-large: "\f009";
|
||||
@fa-var-th-list: "\f00b";
|
||||
@fa-var-thumb-tack: "\f08d";
|
||||
@fa-var-thumbs-down: "\f165";
|
||||
@fa-var-thumbs-o-down: "\f088";
|
||||
@fa-var-thumbs-o-up: "\f087";
|
||||
@fa-var-thumbs-up: "\f164";
|
||||
@fa-var-ticket: "\f145";
|
||||
@fa-var-times: "\f00d";
|
||||
@fa-var-times-circle: "\f057";
|
||||
@fa-var-times-circle-o: "\f05c";
|
||||
@fa-var-tint: "\f043";
|
||||
@fa-var-toggle-down: "\f150";
|
||||
@fa-var-toggle-left: "\f191";
|
||||
@fa-var-toggle-right: "\f152";
|
||||
@fa-var-toggle-up: "\f151";
|
||||
@fa-var-trash-o: "\f014";
|
||||
@fa-var-tree: "\f1bb";
|
||||
@fa-var-trello: "\f181";
|
||||
@fa-var-trophy: "\f091";
|
||||
@fa-var-truck: "\f0d1";
|
||||
@fa-var-try: "\f195";
|
||||
@fa-var-tumblr: "\f173";
|
||||
@fa-var-tumblr-square: "\f174";
|
||||
@fa-var-turkish-lira: "\f195";
|
||||
@fa-var-twitter: "\f099";
|
||||
@fa-var-twitter-square: "\f081";
|
||||
@fa-var-umbrella: "\f0e9";
|
||||
@fa-var-underline: "\f0cd";
|
||||
@fa-var-undo: "\f0e2";
|
||||
@fa-var-university: "\f19c";
|
||||
@fa-var-unlink: "\f127";
|
||||
@fa-var-unlock: "\f09c";
|
||||
@fa-var-unlock-alt: "\f13e";
|
||||
@fa-var-unsorted: "\f0dc";
|
||||
@fa-var-upload: "\f093";
|
||||
@fa-var-usd: "\f155";
|
||||
@fa-var-user: "\f007";
|
||||
@fa-var-user-md: "\f0f0";
|
||||
@fa-var-users: "\f0c0";
|
||||
@fa-var-video-camera: "\f03d";
|
||||
@fa-var-vimeo-square: "\f194";
|
||||
@fa-var-vine: "\f1ca";
|
||||
@fa-var-vk: "\f189";
|
||||
@fa-var-volume-down: "\f027";
|
||||
@fa-var-volume-off: "\f026";
|
||||
@fa-var-volume-up: "\f028";
|
||||
@fa-var-warning: "\f071";
|
||||
@fa-var-wechat: "\f1d7";
|
||||
@fa-var-weibo: "\f18a";
|
||||
@fa-var-weixin: "\f1d7";
|
||||
@fa-var-wheelchair: "\f193";
|
||||
@fa-var-windows: "\f17a";
|
||||
@fa-var-won: "\f159";
|
||||
@fa-var-wordpress: "\f19a";
|
||||
@fa-var-wrench: "\f0ad";
|
||||
@fa-var-xing: "\f168";
|
||||
@fa-var-xing-square: "\f169";
|
||||
@fa-var-yahoo: "\f19e";
|
||||
@fa-var-yen: "\f157";
|
||||
@fa-var-youtube: "\f167";
|
||||
@fa-var-youtube-play: "\f16a";
|
||||
@fa-var-youtube-square: "\f166";
|
|
@ -1,186 +0,0 @@
|
|||
.gist {
|
||||
|
||||
.highlight {
|
||||
color:#000;
|
||||
}
|
||||
|
||||
.render-container .render-viewer-error,
|
||||
.render-container .render-viewer-fatal,
|
||||
.render-container .octospinner {
|
||||
display:none;
|
||||
}
|
||||
|
||||
.gist-render iframe {
|
||||
width:100%;
|
||||
}
|
||||
|
||||
.gist-file.gist-render .highlight {
|
||||
border:none;
|
||||
}
|
||||
|
||||
.gist-file .gist-meta .highlight a {
|
||||
font-weight:700;
|
||||
color:#666;
|
||||
text-decoration:none;
|
||||
}
|
||||
|
||||
.highlight {
|
||||
background:#fff;
|
||||
}
|
||||
|
||||
.highlight .err {
|
||||
color:#a61717;
|
||||
background-color:#e3d2d2;
|
||||
}
|
||||
|
||||
.highlight .cp {
|
||||
color:#999;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.highlight .cs {
|
||||
color:#999;
|
||||
font-weight:700;
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
.highlight .gd {
|
||||
color:#000;
|
||||
background-color:#fdd;
|
||||
}
|
||||
|
||||
.highlight .gd .x {
|
||||
color:#000;
|
||||
background-color:#faa;
|
||||
}
|
||||
|
||||
.highlight .ge {
|
||||
color:#000;
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
.highlight .gi {
|
||||
color:#000;
|
||||
background-color:#dfd;
|
||||
}
|
||||
|
||||
.highlight .gi .x {
|
||||
color:#000;
|
||||
background-color:#afa;
|
||||
}
|
||||
|
||||
.highlight .go {
|
||||
color:#888;
|
||||
}
|
||||
|
||||
.highlight .gs {
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.highlight .gu {
|
||||
color:#aaa;
|
||||
}
|
||||
|
||||
.highlight .nb {
|
||||
color:#0086b3;
|
||||
}
|
||||
|
||||
.highlight .ni {
|
||||
color:purple;
|
||||
}
|
||||
|
||||
.highlight .nt {
|
||||
color:navy;
|
||||
}
|
||||
|
||||
.highlight .w {
|
||||
color:#bbb;
|
||||
}
|
||||
|
||||
.highlight .sr {
|
||||
color:#009926;
|
||||
}
|
||||
|
||||
.highlight .ss {
|
||||
color:#990073;
|
||||
}
|
||||
|
||||
.highlight .c,
|
||||
.highlight .cm,
|
||||
.highlight .c1 {
|
||||
color:#998;
|
||||
font-style:italic;
|
||||
}
|
||||
|
||||
.highlight .k,
|
||||
.highlight .o,
|
||||
.highlight .kc,
|
||||
.highlight .kd,
|
||||
.highlight .kp,
|
||||
.highlight .kr,
|
||||
.highlight .ow,
|
||||
.highlight .n,
|
||||
.highlight .p {
|
||||
color:#000;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.highlight .gr,
|
||||
.highlight .gt {
|
||||
color:#a00;
|
||||
}
|
||||
|
||||
.highlight .gh,
|
||||
.highlight .bp {
|
||||
color:#999;
|
||||
}
|
||||
|
||||
.highlight .gp,
|
||||
.highlight .nn {
|
||||
color:#555;
|
||||
}
|
||||
|
||||
.highlight .kt,
|
||||
.highlight .nc {
|
||||
color:#458;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
.highlight .m,
|
||||
.highlight .mf,
|
||||
.highlight .mh,
|
||||
.highlight .mi,
|
||||
.highlight .mo,
|
||||
.highlight .il {
|
||||
color:#099;
|
||||
}
|
||||
|
||||
.highlight .s,
|
||||
.highlight .sb,
|
||||
.highlight .sc,
|
||||
.highlight .sd,
|
||||
.highlight .s2,
|
||||
.highlight .se,
|
||||
.highlight .sh,
|
||||
.highlight .si,
|
||||
.highlight .sx,
|
||||
.highlight .s1 {
|
||||
color:#d14;
|
||||
}
|
||||
|
||||
.highlight .na,
|
||||
.highlight .no,
|
||||
.highlight .nv,
|
||||
.highlight .vc,
|
||||
.highlight .vg,
|
||||
.highlight .vi {
|
||||
color:teal;
|
||||
}
|
||||
|
||||
.highlight .ne,
|
||||
.highlight .nf {
|
||||
color:#900;
|
||||
font-weight:700;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
// Defining number of columns in the grid.
|
||||
// Common Values would be 12, 16 or 24
|
||||
@width: 100%;
|
||||
@def_grid: 12;
|
||||
@margin: 0;
|
||||
|
||||
.container(){
|
||||
margin:0 auto;
|
||||
width:@width;
|
||||
}
|
||||
|
||||
// Works out the width of elements based
|
||||
// on total number of columns and width
|
||||
// number of columns being displayed.
|
||||
// Removes 20px for margins
|
||||
.grid(@grid:@def_grid,@cols:'',@float:left,@display:inline){
|
||||
display:@display;
|
||||
float:@float;
|
||||
width:(100%/@grid * @cols) - (@margin * 2);
|
||||
}
|
||||
|
||||
// Allows for padding before element
|
||||
.prefix(@grid:@def_grid,@cols:''){
|
||||
margin-left:(100%/@grid * @cols);
|
||||
}
|
||||
// Allows for padding after element
|
||||
.suffix(@grid:@def_grid,@cols:''){
|
||||
margin-right:(100%/@grid * @cols);
|
||||
}
|
||||
// Removes left margin
|
||||
.first(){
|
||||
margin-left:0;
|
||||
}
|
||||
// Removes right margin
|
||||
.last(){
|
||||
margin-right:0;
|
||||
}
|
||||
|
||||
.push(@grid:@def_grid,@move:'') {
|
||||
position:relative;
|
||||
left:(100%/@grid * @move);
|
||||
}
|
||||
|
||||
.pull(@grid:@def_grid,@move:''){
|
||||
position:relative;
|
||||
left:(100%/@grid * @move) * -1;
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
/*!
|
||||
// ===========================================================
|
||||
// HPSTR Jekyll Theme
|
||||
// By: Michael Rose
|
||||
// ===========================================================
|
||||
*/
|
||||
|
||||
// ROOT =======================================================
|
||||
// CSS Reset ==================================================
|
||||
@import "reset.less";
|
||||
// Variables and mixins =======================================
|
||||
@import "variables.less";
|
||||
// Site wide styles (html, body, global classes) ==============
|
||||
@import "site.less";
|
||||
// TYPOGRAPHY =================================================
|
||||
@import "typography.less";
|
||||
// Pygments Syntax highlighting ===============================
|
||||
@import "pygments.less";
|
||||
// Coderay Syntax highlighting ===============================
|
||||
@import "coderay.less";
|
||||
// Gist Syntax highlighting ===================================
|
||||
@import "gist.less";
|
||||
// MIXINS =====================================================
|
||||
@import "mixins.less";
|
||||
@import "grid.less";
|
||||
// ELEMENTS ===================================================
|
||||
// Figures, images, social media, other elements ==============
|
||||
@import "elements.less";
|
||||
// Drop down menu
|
||||
@import "dl-menu.less";
|
||||
// Font Awesome webfont icons =================================
|
||||
@import "font-awesome/font-awesome.less";
|
||||
// LAYOUT =====================================================
|
||||
// Page level layout styles ===================================
|
||||
@import "page.less";
|
|
@ -1,305 +0,0 @@
|
|||
// UTILITY MIXINS
|
||||
// --------------------------------------------------
|
||||
|
||||
// Clearfix
|
||||
// --------------------
|
||||
// For clearing floats like a boss h5bp.com/q
|
||||
.clearfix {
|
||||
*zoom: 1;
|
||||
&:before,
|
||||
&:after {
|
||||
display: table;
|
||||
content: "";
|
||||
// Fixes Opera/contenteditable bug:
|
||||
// http://nicolasgallagher.com/micro-clearfix-hack/#comment-36952
|
||||
line-height: 0;
|
||||
}
|
||||
&:after {
|
||||
clear: both;
|
||||
}
|
||||
}
|
||||
|
||||
// Webkit-style focus
|
||||
// --------------------
|
||||
.tab-focus() {
|
||||
// Default
|
||||
outline: thin dotted #333;
|
||||
// Webkit
|
||||
outline: 5px auto -webkit-focus-ring-color;
|
||||
outline-offset: -2px;
|
||||
}
|
||||
|
||||
// Center-align a block level element
|
||||
// ----------------------------------
|
||||
.center-block() {
|
||||
display: block;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
// TYPOGRAPHY
|
||||
// --------------------------------------------------
|
||||
|
||||
// Full-fat vertical rhythm
|
||||
// ------------------------
|
||||
.font-size(@size) {
|
||||
font-size: 0px + @size;
|
||||
font-size: 0rem + @size / @doc-font-size;
|
||||
line-height: 0 + round(@doc-line-height / @size*10000) / 10000;
|
||||
margin-bottom: 0px + @doc-line-height;
|
||||
margin-bottom: 0rem + (@doc-line-height / @doc-font-size);
|
||||
}
|
||||
|
||||
// Just the REMs
|
||||
// -------------
|
||||
.font-rem(@size) {
|
||||
font-size: 0px + @size;
|
||||
font-size: 0rem + @size / @doc-font-size;
|
||||
}
|
||||
|
||||
// Just font-size and line-height
|
||||
// ------------------------------
|
||||
.font(@size) {
|
||||
font-size: 0px + @size;
|
||||
font-size: 0rem + @size / @doc-font-size;
|
||||
line-height: 0 + round(@doc-line-height / @size*10000) / 10000;
|
||||
}
|
||||
|
||||
.text-overflow() {
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap; }
|
||||
|
||||
// GRADIENTS
|
||||
// --------------------------------------------------
|
||||
|
||||
.horizontal(@startColor : @white, @endColor : @lightergrey) {
|
||||
background-color: @endColor;
|
||||
background-image : -webkit-gradient(linear, 0 0, 100% 0, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
||||
background-image : -webkit-linear-gradient(left, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image : -moz-linear-gradient(left, @startColor, @endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(left, @startColor, @endColor); // IE10
|
||||
background-image : -o-linear-gradient(left, @startColor, @endColor); // Opera 11.10
|
||||
background-image : linear-gradient(left, @startColor, @endColor); // W3C
|
||||
background-repeat : repeat-x; }
|
||||
|
||||
.vertical(@startColor : @white, @endColor: @lightergrey) {
|
||||
background-image : -webkit-gradient(linear, 0 0, 0 100%, from(@startColor), to(@endColor)); // Safari 4+, Chrome 2+
|
||||
background-image : -webkit-linear-gradient(top, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
||||
background-color : @endColor;
|
||||
background-image : -moz-linear-gradient(top, @startColor, @endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(top, @startColor, @endColor); // IE10
|
||||
background-image : -o-linear-gradient(top, @startColor, @endColor); // Opera 11.10
|
||||
background-image : linear-gradient(top, @startColor, @endColor); // W3C
|
||||
background-repeat : repeat-x; }
|
||||
|
||||
.directional(@startColor : @white, @endColor : @lightergrey, @deg : 45deg) {
|
||||
background-color : @endColor;
|
||||
background-image : -moz-linear-gradient(@deg, @startColor, @endColor); // FF 3.6+
|
||||
background-image : -ms-linear-gradient(@deg, @startColor, @endColor); // IE10
|
||||
background-image : -webkit-linear-gradient(@deg, @startColor, @endColor); // Safari 5.1+, Chrome 10+
|
||||
background-image : -o-linear-gradient(@deg, @startColor, @endColor); // Opera 11.10
|
||||
background-image : linear-gradient(@deg, @startColor, @endColor); // W3C
|
||||
background-repeat : repeat-x; }
|
||||
|
||||
// .bordered(COLOR, COLOR, COLOR, COLOR);
|
||||
.bordered(@top-color: #eee, @right-color: #eee, @bottom-color: #eee, @left-color: #eee) {
|
||||
border-top : solid 1px @top-color;
|
||||
border-left : solid 1px @left-color;
|
||||
border-right : solid 1px @right-color;
|
||||
border-bottom : solid 1px @bottom-color; }
|
||||
|
||||
// ROUND CORNERS
|
||||
// --------------------------------------------------
|
||||
|
||||
// .rounded(VALUE);
|
||||
.rounded(@radius:4px) {
|
||||
-webkit-border-radius : @radius;
|
||||
-moz-border-radius : @radius;
|
||||
border-radius : @radius; }
|
||||
|
||||
// .border-radius(VALUE,VALUE,VALUE,VALUE);
|
||||
.border-radius(@topright: 0, @bottomright: 0, @bottomleft: 0, @topleft: 0) {
|
||||
-webkit-border-top-right-radius : @topright;
|
||||
-webkit-border-bottom-right-radius : @bottomright;
|
||||
-webkit-border-bottom-left-radius : @bottomleft;
|
||||
-webkit-border-top-left-radius : @topleft;
|
||||
-moz-border-radius-topright : @topright;
|
||||
-moz-border-radius-bottomright : @bottomright;
|
||||
-moz-border-radius-bottomleft : @bottomleft;
|
||||
-moz-border-radius-topleft : @topleft;
|
||||
border-top-right-radius : @topright;
|
||||
border-bottom-right-radius : @bottomright;
|
||||
border-bottom-left-radius : @bottomleft;
|
||||
border-top-left-radius : @topleft;
|
||||
-webkit-background-clip : padding-box;
|
||||
-moz-background-clip : padding;
|
||||
background-clip : padding-box; }
|
||||
|
||||
// .box-shadow(HORIZONTAL VERTICAL BLUR COLOR))
|
||||
.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
|
||||
-webkit-box-shadow : @shadow;
|
||||
-moz-box-shadow : @shadow;
|
||||
box-shadow : @shadow; }
|
||||
|
||||
// .drop-shadow(HORIZONTAL, VERTICAL, BLUR, ALPHA);
|
||||
.drop-shadow(@x-axis: 0, @y-axis: 1px, @blur: 2px, @alpha: 0.1) {
|
||||
-webkit-box-shadow : @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
|
||||
-moz-box-shadow : @x-axis @y-axis @blur rgba(0, 0, 0, @alpha);
|
||||
box-shadow : @x-axis @y-axis @blur rgba(0, 0, 0, @alpha); }
|
||||
|
||||
// .text-shadow();
|
||||
.text-shadow(@shadow: 0 2px 3px rgba(0,0,0,.25)) {
|
||||
text-shadow : @shadow; }
|
||||
|
||||
// .opacity(VALUE);
|
||||
.opacity(@opacity : .5) {
|
||||
-webkit-opacity : @opacity;
|
||||
-moz-opacity : @opacity;
|
||||
opacity : @opacity; }
|
||||
|
||||
// TRANSFORMATIONS
|
||||
// --------------------------------------------------
|
||||
|
||||
// .rotate(VALUEdeg);
|
||||
.rotate(@deg) {
|
||||
-webkit-transform : rotate(@deg);
|
||||
-moz-transform : rotate(@deg);
|
||||
-ms-transform : rotate(@deg);
|
||||
-o-transform : rotate(@deg);
|
||||
transform : rotate(@deg); }
|
||||
|
||||
// .scale(VALUE);
|
||||
.scale(@ratio) {
|
||||
-webkit-transform : scale(@ratio);
|
||||
-moz-transform : scale(@ratio);
|
||||
-ms-transform : scale(@ratio);
|
||||
-o-transform : scale(@ratio);
|
||||
transform : scale(@ratio); }
|
||||
|
||||
// .skew(VALUE, VALUE);
|
||||
.skew(@x: 0, @y: 0) {
|
||||
-webkit-transform : skew(@x, @y);
|
||||
-moz-transform : skew(@x, @y);
|
||||
-ms-transform : skew(@x, @y);
|
||||
-o-transform : skew(@x, @y);
|
||||
transform : skew(@x, @y); }
|
||||
|
||||
// .transition(PROPERTY DURATION DELAY(OPTIONAL) TIMING-FINCTION);
|
||||
.transition(@transition) {
|
||||
-webkit-transition : @transition;
|
||||
-moz-transition : @transition;
|
||||
-ms-transition : @transition;
|
||||
-o-transition : @transition;
|
||||
transition : @transition; }
|
||||
|
||||
// .translate(VALUE, VALUE)
|
||||
.translate(@x: 0, @y: 0) {
|
||||
-webkit-transform : translate(@x, @y);
|
||||
-moz-transform : translate(@x, @y);
|
||||
-ms-transform : translate(@x, @y);
|
||||
-o-transform : translate(@x, @y);
|
||||
transform : translate(@x, @y); }
|
||||
|
||||
.translate3d(@x: 0, @y: 0, @z: 0) {
|
||||
-webkit-transform : translate(@x, @y, @z);
|
||||
-moz-transform : translate(@x, @y, @z);
|
||||
-ms-transform : translate(@x, @y, @z);
|
||||
-o-transform : translate(@x, @y, @z);
|
||||
transform : translate(@x, @y, @z); }
|
||||
|
||||
.animation(@name, @duration: 300ms, @delay: 0, @ease: ease) {
|
||||
-webkit-animation: @name @duration @delay @ease;
|
||||
-moz-animation: @name @duration @delay @ease;
|
||||
-ms-animation: @name @duration @delay @ease;
|
||||
}
|
||||
|
||||
// BACKGROUND
|
||||
// --------------------------------------------------
|
||||
|
||||
// .background-alpha(VALUE VALUE);
|
||||
.background-alpha(@color: @white, @alpha: 1) {
|
||||
background-color : hsla(hue(@color), saturation(@color), lightness(@color), @alpha); }
|
||||
|
||||
// .background-size(VALUE VALUE);
|
||||
.background-size(@size){
|
||||
-webkit-background-size : @size;
|
||||
-moz-background-size : @size;
|
||||
-o-background-size : @size;
|
||||
background-size : @size; }
|
||||
|
||||
// .background-clip(VALUE); (border-box, padding-box, content-box)
|
||||
.background-clip(@clip) {
|
||||
-webkit-background-clip : @clip;
|
||||
-moz-background-clip : @clip;
|
||||
background-clip : @clip; }
|
||||
|
||||
// .box-sizing(VALUE); (border-box, padding-box, content-box)
|
||||
.box-sizing(@boxsize: border-box) {
|
||||
-webkit-box-sizing : @boxsize;
|
||||
-moz-box-sizing : @boxsize;
|
||||
-ms-box-sizing : @boxsize;
|
||||
box-sizing : @boxsize; }
|
||||
|
||||
// For image replacement
|
||||
.hide-text() {
|
||||
text-indent : 100%;
|
||||
white-space : nowrap;
|
||||
overflow : hidden; }
|
||||
|
||||
// Hide from visual and speaking browsers
|
||||
.hidden() {
|
||||
display : none !important;
|
||||
visibility : hidden; }
|
||||
.hidden {
|
||||
display: none;
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
// Hide but maintain layout
|
||||
.invisible() {
|
||||
visibility : hidden; }
|
||||
|
||||
// .resize(VALUE) (none, both, horizontal, vertical, inherit)
|
||||
.resize(@direction: both) {
|
||||
resize : @direction;
|
||||
overflow : auto; }
|
||||
|
||||
// .userselect(VALUE) (all, element, none, text)
|
||||
.user-select(@select) {
|
||||
-webkit-user-select : @select;
|
||||
-moz-user-select : @select;
|
||||
-o-user-select : @select;
|
||||
user-select : @select; }
|
||||
|
||||
// Hidden but available to speaking browsers
|
||||
.visuallyhidden() {
|
||||
overflow : hidden;
|
||||
position : absolute;
|
||||
clip : rect(0 0 0 0);
|
||||
height : 1px;
|
||||
width : 1px;
|
||||
margin : -1px;
|
||||
padding : 0;
|
||||
border : 0; }
|
||||
|
||||
// Make visuallyhidden focusable with a keyboard
|
||||
.visuallyhidden.focusable:active,
|
||||
.visuallyhidden.focusable:focus {
|
||||
position : static;
|
||||
clip : auto;
|
||||
height : auto;
|
||||
width : auto;
|
||||
margin : 0;
|
||||
overflow: visible; }
|
||||
|
||||
// MEDIA QUERIES
|
||||
// --------------------------------------------------
|
||||
|
||||
@small: ~"only screen and (min-width: 30em)";
|
||||
@medium: ~"only screen and (min-width: 48em)";
|
||||
@large: ~"only screen and (min-width: 62.5em)";
|
||||
@highdensity: ~"only screen and (-webkit-min-device-pixel-ratio: 1.5)",
|
||||
~"only screen and (-o-min-device-pixel-ratio: 3/2)",
|
||||
~"only screen and (min-resolution: 144dpi)",
|
||||
~"only screen and (min-resolution: 1.5dppx)";
|
|
@ -1,432 +0,0 @@
|
|||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 100%;
|
||||
background-color: @body-color;
|
||||
}
|
||||
|
||||
// Main
|
||||
// --------------------------------------------------
|
||||
.entry,
|
||||
.hentry {
|
||||
.clearfix();
|
||||
}
|
||||
.entry-content {
|
||||
.font-size(16);
|
||||
// Dotted line underlines for links
|
||||
p > a,
|
||||
li > a {
|
||||
border-bottom: 1px dotted lighten(@link-color, 50);
|
||||
&:hover {
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Entry Header
|
||||
// --------------------------------------------------
|
||||
.entry-header {
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
.header-title {
|
||||
text-align: center;
|
||||
margin: 30px 0 0;
|
||||
h1 {
|
||||
margin: 10px 20px;
|
||||
font-weight: 700;
|
||||
.font-rem(28);
|
||||
color: lighten(@base-color,20);
|
||||
@media @medium {
|
||||
.font-rem(48);
|
||||
}
|
||||
@media @large {
|
||||
.font-rem(60);
|
||||
}
|
||||
}
|
||||
h2 {
|
||||
margin: 0;
|
||||
.font-rem(18);
|
||||
text-transform: uppercase;
|
||||
color: lighten(@base-color,40);
|
||||
@media @medium {
|
||||
.font-rem(30);
|
||||
}
|
||||
}
|
||||
p {
|
||||
color: lighten(@base-color,20);
|
||||
}
|
||||
}
|
||||
.feature .header-title {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
display: table;
|
||||
margin-top: 0;
|
||||
width: 100%;
|
||||
height: 400px;
|
||||
overflow: hidden;
|
||||
.header-title-wrap {
|
||||
display: table-cell;
|
||||
vertical-align: middle;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
}
|
||||
h1 {
|
||||
margin: 10px;
|
||||
font-weight: 700;
|
||||
margin: 10px 60px;
|
||||
color: @white;
|
||||
text-shadow: 1px 1px 4px fade(@base-color,60);
|
||||
a {
|
||||
color: @white;
|
||||
}
|
||||
@media @large {
|
||||
}
|
||||
}
|
||||
h2 {
|
||||
margin: 0;
|
||||
color: @white;
|
||||
text-transform: uppercase;
|
||||
@media @medium {
|
||||
a {
|
||||
color: @white;
|
||||
}
|
||||
}
|
||||
}
|
||||
p {
|
||||
color: @white;
|
||||
}
|
||||
}
|
||||
.entry-image {
|
||||
position: relative;
|
||||
top: -50%;
|
||||
left: -50%;
|
||||
width: 200%;
|
||||
height: 200%;
|
||||
min-height: 400px;
|
||||
overflow: hidden;
|
||||
&:after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-color: fade(@base-color,30);
|
||||
}
|
||||
img {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
margin: auto;
|
||||
min-width: 50%;
|
||||
min-height: 50%;
|
||||
}
|
||||
}
|
||||
// Feature Image Caption
|
||||
.image-credit {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
margin: 0 auto;
|
||||
max-width: 440px;
|
||||
padding: 10px 15px;
|
||||
background-color: fade(@base-color,50);
|
||||
color: @white;
|
||||
.font-rem(12);
|
||||
text-align: right;
|
||||
.border-radius(3px,0,0,3px);
|
||||
z-index: 10;
|
||||
@media @medium {
|
||||
max-width: 760px;
|
||||
}
|
||||
@media @large {
|
||||
max-width: 960px;
|
||||
}
|
||||
a {
|
||||
color: @white;
|
||||
text-decoration: none;
|
||||
}
|
||||
}
|
||||
|
||||
// Single Post and Page
|
||||
// --------------------------------------------------
|
||||
.entry-meta {
|
||||
.font-rem(12);
|
||||
text-transform: uppercase;
|
||||
color: lighten(@base-color,60);
|
||||
a {
|
||||
color: lighten(@base-color,60);
|
||||
}
|
||||
.vcard {
|
||||
&:before {
|
||||
content: " by ";
|
||||
}
|
||||
}
|
||||
.tag {
|
||||
display: inline-block;
|
||||
margin: 4px;
|
||||
padding: 2px 6px;
|
||||
background-color: lighten(@base-color,60);
|
||||
color: @white;
|
||||
.rounded(3px);
|
||||
color: @white;
|
||||
span {
|
||||
vertical-align: super;
|
||||
.font-rem(10);
|
||||
}
|
||||
&:hover {
|
||||
background-color: lighten(@base-color,50);
|
||||
}
|
||||
&:active {
|
||||
.translate(0, 1px);
|
||||
.box-shadow(0 0 1px fade(@base-color, 20));
|
||||
}
|
||||
}
|
||||
}
|
||||
#post,
|
||||
#page {
|
||||
.entry-content {
|
||||
margin: 40px 2px 20px 2px;
|
||||
padding: 10px 15px;
|
||||
background-color: @white;
|
||||
box-shadow: 0 0 0 0, 0 6px 12px fade(@black,10);
|
||||
.rounded(3px);
|
||||
@media @medium {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
padding: 20px 30px;
|
||||
}
|
||||
@media @large {
|
||||
max-width: 800px;
|
||||
margin: 50px auto 30px auto;
|
||||
padding: 50px 80px;
|
||||
> p:first-child {
|
||||
.font-size(20);
|
||||
}
|
||||
}
|
||||
}
|
||||
#disqus_thread {
|
||||
margin: 40px 2px 20px 2px;
|
||||
padding: 10px 15px;
|
||||
background-color: @white;
|
||||
box-shadow: 0 0 0 1px fade(@border-color,10), 0 6px 12px fade(@black,10);
|
||||
.rounded(3px);
|
||||
@media @medium {
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
padding: 20px 30px;
|
||||
}
|
||||
@media @large {
|
||||
max-width: 800px;
|
||||
padding: 50px 80px;
|
||||
margin: 0 auto 30px auto;
|
||||
}
|
||||
}
|
||||
.entry-meta {
|
||||
margin: 50px 30px 30px;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
.entry-tags {
|
||||
display: block;
|
||||
margin-bottom: 6px;
|
||||
}
|
||||
// Post Pagination Module
|
||||
.pagination {
|
||||
margin: 20px 10px;
|
||||
text-align: center;
|
||||
ul {
|
||||
display: inline;
|
||||
margin-left: 10px;
|
||||
margin-right: 10px;
|
||||
}
|
||||
li {
|
||||
padding-left: 4px;
|
||||
padding-right: 4px;
|
||||
}
|
||||
.current-page {
|
||||
font-weight: 700;
|
||||
}
|
||||
}
|
||||
|
||||
// Read More Module
|
||||
.read-more {
|
||||
position: relative;
|
||||
margin: 40px 2px 20px 2px;
|
||||
padding: 40px 15px 25px;
|
||||
background-color: @white;
|
||||
box-shadow: 0 0 0 1px fade(@border-color,10), 0 6px 12px fade(@black,10);
|
||||
.rounded(3px);
|
||||
@media @medium {
|
||||
margin: 50px 10px 20px 10px;
|
||||
padding: 50px 40px 25px;
|
||||
}
|
||||
@media @large {
|
||||
max-width: 800px;
|
||||
padding: 50px 80px;
|
||||
margin: 60px auto;
|
||||
}
|
||||
text-align: center;
|
||||
.clearfix();
|
||||
}
|
||||
.read-more-header {
|
||||
position: absolute;
|
||||
top: -20px;
|
||||
left: 0;
|
||||
right: 0;
|
||||
height: 35px;
|
||||
a {
|
||||
.btn();
|
||||
}
|
||||
}
|
||||
.read-more-content {
|
||||
.font-size(16);
|
||||
// Dotted line underlines for links
|
||||
p > a,
|
||||
li > a {
|
||||
border-bottom: 1px dotted lighten(@link-color, 50);
|
||||
&:hover {
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
}
|
||||
h3 {
|
||||
margin: 0;
|
||||
.font-rem(28);
|
||||
a {
|
||||
color: @primary;
|
||||
}
|
||||
@media @medium {
|
||||
.font-rem(36);
|
||||
}
|
||||
}
|
||||
}
|
||||
.read-more-list {
|
||||
border-top: solid 1px lighten(@base-color,60);
|
||||
}
|
||||
.list-item {
|
||||
width: 100%;
|
||||
text-align: left;
|
||||
h4 {
|
||||
.font-rem(18);
|
||||
margin-bottom: 0;
|
||||
}
|
||||
span {
|
||||
display: block;
|
||||
.font-rem(14);
|
||||
color: lighten(@base-color,50);
|
||||
}
|
||||
@media @medium {
|
||||
width: 49%;
|
||||
float: left;
|
||||
&:nth-child(2) {
|
||||
text-align: right;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Post Index
|
||||
// --------------------------------------------------
|
||||
#post-index {
|
||||
#main {
|
||||
margin: 40px 2px 20px 2px;
|
||||
@media @medium {
|
||||
margin-left: 20px;
|
||||
margin-right: 20px;
|
||||
}
|
||||
@media @large {
|
||||
max-width: 800px;
|
||||
margin-top: 50px;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
}
|
||||
article {
|
||||
background-color: @white;
|
||||
box-shadow: 0 0 0 0, 0 6px 12px fade(@base-color,10);
|
||||
.rounded(3px);
|
||||
margin-bottom: 20px;
|
||||
padding: 25px 15px;
|
||||
@media @medium {
|
||||
padding: 30px;
|
||||
}
|
||||
@media @large {
|
||||
margin-bottom: 30px;
|
||||
padding: 50px 80px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Footer
|
||||
// --------------------------------------------------
|
||||
.footer-wrapper {
|
||||
.clearfix();
|
||||
margin: 2em auto;
|
||||
text-align: center;
|
||||
color: lighten(@text-color,20);
|
||||
a {
|
||||
color: lighten(@text-color,20);
|
||||
}
|
||||
}
|
||||
|
||||
// Social Share
|
||||
// --------------------------------------------------
|
||||
.socialcount {
|
||||
.font-rem(16);
|
||||
font-weight: 700;
|
||||
li {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
}
|
||||
p > a,
|
||||
li > a {
|
||||
border-bottom-width: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// Browser Upgrade
|
||||
// --------------------------------------------------
|
||||
.upgrade {
|
||||
padding: 10px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
// Google Search
|
||||
// --------------------------------------------------
|
||||
#goog-fixurl {
|
||||
ul {
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
li {
|
||||
list-style-type: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
#goog-wm-qt {
|
||||
width: auto;
|
||||
margin-right: 10px;
|
||||
margin-bottom: 20px;
|
||||
padding: 8px 20px;
|
||||
display: inline-block;
|
||||
.font-rem(14);
|
||||
background-color: @white;
|
||||
color: @primary;
|
||||
border-width: 2px !important;
|
||||
border-style: solid !important;
|
||||
border-color: lighten(@primary,50);
|
||||
.rounded(3px);
|
||||
}
|
||||
#goog-wm-sb {
|
||||
.btn();
|
||||
}
|
||||
|
||||
@media only screen and (min-device-width : 320px) and (max-device-width : 568px) {
|
||||
.entry-image img {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
|
@ -1,73 +0,0 @@
|
|||
.highlight {
|
||||
margin-bottom: 1.5em;
|
||||
.font(12);
|
||||
color: #d0d0d0;
|
||||
border: 1px solid darken(@body-color, 5);
|
||||
background-color: #272822;
|
||||
.rounded(3px);
|
||||
pre {
|
||||
position: relative;
|
||||
margin: 0;
|
||||
padding: 1em;
|
||||
}
|
||||
.lineno { padding-right: 24px; color: #8f908a;}
|
||||
.hll { background-color: #49483e }
|
||||
.c { color: #75715e } /* Comment */
|
||||
.err { color: #960050; background-color: #1e0010 } /* Error */
|
||||
.k { color: #66d9ef } /* Keyword */
|
||||
.l { color: #ae81ff } /* Literal */
|
||||
.n { color: #f8f8f2 } /* Name */
|
||||
.o { color: #f92672 } /* Operator */
|
||||
.p { color: #f8f8f2 } /* Punctuation */
|
||||
.cm { color: #75715e } /* Comment.Multiline */
|
||||
.cp { color: #75715e } /* Comment.Preproc */
|
||||
.c1 { color: #75715e } /* Comment.Single */
|
||||
.cs { color: #75715e } /* Comment.Special */
|
||||
.ge { font-style: italic } /* Generic.Emph */
|
||||
.gs { font-weight: bold } /* Generic.Strong */
|
||||
.kc { color: #66d9ef } /* Keyword.Constant */
|
||||
.kd { color: #66d9ef } /* Keyword.Declaration */
|
||||
.kn { color: #f92672 } /* Keyword.Namespace */
|
||||
.kp { color: #66d9ef } /* Keyword.Pseudo */
|
||||
.kr { color: #66d9ef } /* Keyword.Reserved */
|
||||
.kt { color: #66d9ef } /* Keyword.Type */
|
||||
.ld { color: #e6db74 } /* Literal.Date */
|
||||
.m { color: #ae81ff } /* Literal.Number */
|
||||
.s { color: #e6db74 } /* Literal.String */
|
||||
.na { color: #a6e22e } /* Name.Attribute */
|
||||
.nb { color: #f8f8f2 } /* Name.Builtin */
|
||||
.nc { color: #a6e22e } /* Name.Class */
|
||||
.no { color: #66d9ef } /* Name.Constant */
|
||||
.nd { color: #a6e22e } /* Name.Decorator */
|
||||
.ni { color: #f8f8f2 } /* Name.Entity */
|
||||
.ne { color: #a6e22e } /* Name.Exception */
|
||||
.nf { color: #a6e22e } /* Name.Function */
|
||||
.nl { color: #f8f8f2 } /* Name.Label */
|
||||
.nn { color: #f8f8f2 } /* Name.Namespace */
|
||||
.nx { color: #a6e22e } /* Name.Other */
|
||||
.py { color: #f8f8f2 } /* Name.Property */
|
||||
.nt { color: #f92672 } /* Name.Tag */
|
||||
.nv { color: #f8f8f2 } /* Name.Variable */
|
||||
.ow { color: #f92672 } /* Operator.Word */
|
||||
.w { color: #f8f8f2 } /* Text.Whitespace */
|
||||
.mf { color: #ae81ff } /* Literal.Number.Float */
|
||||
.mh { color: #ae81ff } /* Literal.Number.Hex */
|
||||
.mi { color: #ae81ff } /* Literal.Number.Integer */
|
||||
.mo { color: #ae81ff } /* Literal.Number.Oct */
|
||||
.sb { color: #e6db74 } /* Literal.String.Backtick */
|
||||
.sc { color: #e6db74 } /* Literal.String.Char */
|
||||
.sd { color: #e6db74 } /* Literal.String.Doc */
|
||||
.s2 { color: #e6db74 } /* Literal.String.Double */
|
||||
.se { color: #ae81ff } /* Literal.String.Escape */
|
||||
.sh { color: #e6db74 } /* Literal.String.Heredoc */
|
||||
.si { color: #e6db74 } /* Literal.String.Interpol */
|
||||
.sx { color: #e6db74 } /* Literal.String.Other */
|
||||
.sr { color: #e6db74 } /* Literal.String.Regex */
|
||||
.s1 { color: #e6db74 } /* Literal.String.Single */
|
||||
.ss { color: #e6db74 } /* Literal.String.Symbol */
|
||||
.bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */
|
||||
.vc { color: #f8f8f2 } /* Name.Variable.Class */
|
||||
.vg { color: #f8f8f2 } /* Name.Variable.Global */
|
||||
.vi { color: #f8f8f2 } /* Name.Variable.Instance */
|
||||
.il { color: #ae81ff } /* Literal.Number.Integer.Long */
|
||||
}
|
|
@ -1,207 +0,0 @@
|
|||
//
|
||||
// Reset CSS
|
||||
// Adapted from http://github.com/necolas/normalize.css
|
||||
// --------------------------------------------------
|
||||
|
||||
*, *:after, *:before {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
// Display in IE6-9 and FF3
|
||||
// -------------------------
|
||||
article,
|
||||
aside,
|
||||
details,
|
||||
figcaption,
|
||||
figure,
|
||||
footer,
|
||||
header,
|
||||
hgroup,
|
||||
nav,
|
||||
section {
|
||||
display: block;
|
||||
}
|
||||
|
||||
// Display block in IE6-9 and FF3
|
||||
// -------------------------
|
||||
audio,
|
||||
canvas,
|
||||
video {
|
||||
display: inline-block;
|
||||
*display: inline;
|
||||
*zoom: 1;
|
||||
}
|
||||
|
||||
// Prevents modern browsers from displaying 'audio' without controls
|
||||
// -------------------------
|
||||
audio:not([controls]) {
|
||||
display: none;
|
||||
}
|
||||
|
||||
// Base settings
|
||||
// -------------------------
|
||||
html {
|
||||
font-size: 100%;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
// Focus states
|
||||
a:focus {
|
||||
.tab-focus();
|
||||
}
|
||||
// Hover & Active
|
||||
a:hover,
|
||||
a:active {
|
||||
outline: 0;
|
||||
}
|
||||
|
||||
// Prevents sub and sup affecting line-height in all browsers
|
||||
// -------------------------
|
||||
sub,
|
||||
sup {
|
||||
position: relative;
|
||||
font-size: 75%;
|
||||
line-height: 0;
|
||||
vertical-align: baseline;
|
||||
}
|
||||
sup {
|
||||
top: -0.5em;
|
||||
}
|
||||
sub {
|
||||
bottom: -0.25em;
|
||||
}
|
||||
|
||||
// Blockquote
|
||||
// -------------------------
|
||||
blockquote {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
// Img border in a's and image quality
|
||||
// -------------------------
|
||||
img {
|
||||
/* Responsive images (ensure images don't scale beyond their parents) */
|
||||
max-width: 100%; /* Part 1: Set a maxium relative to the parent */
|
||||
width: auto\9; /* IE7-8 need help adjusting responsive images */
|
||||
height: auto; /* Part 2: Scale the height according to the width, otherwise you get stretching */
|
||||
|
||||
vertical-align: middle;
|
||||
border: 0;
|
||||
-ms-interpolation-mode: bicubic;
|
||||
}
|
||||
|
||||
// Prevent max-width from affecting Google Maps
|
||||
#map_canvas img,
|
||||
.google-maps img {
|
||||
max-width: none;
|
||||
}
|
||||
|
||||
// Forms
|
||||
// -------------------------
|
||||
// Font size in all browsers, margin changes, misc consistency
|
||||
button,
|
||||
input,
|
||||
select,
|
||||
textarea {
|
||||
margin: 0;
|
||||
font-size: 100%;
|
||||
vertical-align: middle;
|
||||
}
|
||||
button,
|
||||
input {
|
||||
*overflow: visible; // Inner spacing ie IE6/7
|
||||
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
|
||||
}
|
||||
button::-moz-focus-inner,
|
||||
input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
|
||||
padding: 0;
|
||||
border: 0;
|
||||
}
|
||||
button,
|
||||
html input[type="button"], // Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls.
|
||||
input[type="reset"],
|
||||
input[type="submit"] {
|
||||
-webkit-appearance: button; // Corrects inability to style clickable `input` types in iOS.
|
||||
cursor: pointer; // Improves usability and consistency of cursor style between image-type `input` and others.
|
||||
}
|
||||
label,
|
||||
select,
|
||||
button,
|
||||
input[type="button"],
|
||||
input[type="reset"],
|
||||
input[type="submit"],
|
||||
input[type="radio"],
|
||||
input[type="checkbox"] {
|
||||
cursor: pointer; // Improves usability and consistency of cursor style between image-type `input` and others.
|
||||
}
|
||||
input[type="search"] { // Appearance in Safari/Chrome
|
||||
.box-sizing(content-box);
|
||||
-webkit-appearance: textfield;
|
||||
}
|
||||
input[type="search"]::-webkit-search-decoration,
|
||||
input[type="search"]::-webkit-search-cancel-button {
|
||||
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
|
||||
}
|
||||
textarea {
|
||||
overflow: auto; // Remove vertical scrollbar in IE6-9
|
||||
vertical-align: top; // Readability and alignment cross-browser
|
||||
}
|
||||
|
||||
// Printing
|
||||
// -------------------------
|
||||
// Source: https://github.com/h5bp/html5-boilerplate/blob/master/css/main.css
|
||||
@media print {
|
||||
|
||||
* {
|
||||
text-shadow: none !important;
|
||||
color: #000 !important; // Black prints faster: h5bp.com/s
|
||||
background: transparent !important;
|
||||
box-shadow: none !important;
|
||||
}
|
||||
a,
|
||||
a:visited {
|
||||
text-decoration: underline;
|
||||
}
|
||||
a[href]:after {
|
||||
content: " (" attr(href) ")";
|
||||
}
|
||||
abbr[title]:after {
|
||||
content: " (" attr(title) ")";
|
||||
}
|
||||
// Don't show links for images, or javascript/internal links
|
||||
.ir a:after,
|
||||
a[href^="javascript:"]:after,
|
||||
a[href^="#"]:after {
|
||||
content: "";
|
||||
}
|
||||
pre,
|
||||
blockquote {
|
||||
border: 1px solid #999;
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
thead {
|
||||
display: table-header-group; // h5bp.com/t
|
||||
}
|
||||
tr,
|
||||
img {
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
img {
|
||||
max-width: 100% !important;
|
||||
}
|
||||
@page {
|
||||
margin: 0.5cm;
|
||||
}
|
||||
p,
|
||||
h2,
|
||||
h3 {
|
||||
orphans: 3;
|
||||
widows: 3;
|
||||
}
|
||||
h2,
|
||||
h3 {
|
||||
page-break-after: avoid;
|
||||
}
|
||||
}
|
|
@ -1,50 +0,0 @@
|
|||
// Selection
|
||||
// --------------------------------------------------
|
||||
::-moz-selection {
|
||||
background-color: lighten(@base-color, 65%);
|
||||
color: @base-color;
|
||||
text-shadow: none;
|
||||
}
|
||||
::selection {
|
||||
background-color: lighten(@base-color, 65%);
|
||||
color: @base-color;
|
||||
text-shadow: none;
|
||||
}
|
||||
|
||||
// Global Classes
|
||||
// --------------------------------------------------
|
||||
.wrap {
|
||||
margin: 0 auto;
|
||||
}
|
||||
.all-caps {
|
||||
text-transform: uppercase;
|
||||
}
|
||||
.pull-left {
|
||||
float: left;
|
||||
}
|
||||
.pull-right {
|
||||
float:right;
|
||||
}
|
||||
.unstyled-list {
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
li {
|
||||
list-style-type: none;
|
||||
}
|
||||
}
|
||||
.inline-list {
|
||||
list-style: none;
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
li {
|
||||
list-style-type: none;
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
|
||||
// Global Transition
|
||||
// ---------------------------------------------------
|
||||
b, i, strong, em, blockquote, p, q, span, figure, img, h1, h2, header, input, a {
|
||||
.transition(all .2s ease);
|
||||
}
|
|
@ -1,116 +0,0 @@
|
|||
// Body
|
||||
// --------------------------------------------------
|
||||
body {
|
||||
font-family: @base-font;
|
||||
color: @text-color;
|
||||
}
|
||||
|
||||
// Headings
|
||||
// --------------------------------------------------
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
font-family: @heading-font;
|
||||
}
|
||||
h1 {
|
||||
.font-rem(32);
|
||||
}
|
||||
|
||||
// Links
|
||||
// --------------------------------------------------
|
||||
a {
|
||||
text-decoration: none;
|
||||
color: @link-color;
|
||||
&:visited {
|
||||
color: lighten(@link-color, 20);
|
||||
}
|
||||
&:hover {
|
||||
color: darken(@link-color, 20);
|
||||
}
|
||||
&:focus {
|
||||
outline: thin dotted;
|
||||
color: darken(@link-color, 20);
|
||||
}
|
||||
&:hover,
|
||||
&:active {
|
||||
outline: 0;
|
||||
}
|
||||
}
|
||||
|
||||
.link-arrow {
|
||||
font-weight: 100;
|
||||
text-decoration: underline;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
// Figures
|
||||
// --------------------------------------------------
|
||||
figcaption {
|
||||
padding-top: 10px;
|
||||
.font(14);
|
||||
line-height: 1.3;
|
||||
color: lighten(@text-color, 10);
|
||||
}
|
||||
|
||||
// Note text
|
||||
// --------------------------------------------------
|
||||
.notice {
|
||||
margin-top: 1.5em;
|
||||
padding: .5em 1em;
|
||||
text-indent: 0;
|
||||
.font-rem(14);
|
||||
background-color: @body-color;
|
||||
border: 1px solid darken(@body-color,20);
|
||||
.rounded(3px);
|
||||
}
|
||||
|
||||
// Blockquotes
|
||||
// --------------------------------------------------
|
||||
blockquote {
|
||||
font-family: @alt-font;
|
||||
font-style: italic;
|
||||
border-left: 8px solid @border-color;
|
||||
padding-left: 20px;
|
||||
@media @medium {
|
||||
margin-left: -28px;
|
||||
}
|
||||
}
|
||||
|
||||
// Footnotes
|
||||
// --------------------------------------------------
|
||||
.entry-content .footnotes {
|
||||
ol, li, p {
|
||||
.font-size(14);
|
||||
}
|
||||
}
|
||||
|
||||
// Code
|
||||
// --------------------------------------------------
|
||||
tt, code, kbd, samp, pre {
|
||||
font-family: @code-font;
|
||||
}
|
||||
p,
|
||||
li {
|
||||
code {
|
||||
.font-rem(12);
|
||||
line-height: 1.5;
|
||||
white-space: nowrap;
|
||||
margin: 0 2px;
|
||||
padding: 0 5px;
|
||||
border: 1px solid lighten(@black, 90);
|
||||
background-color: lighten(@black, 95);
|
||||
.rounded(3px);
|
||||
}
|
||||
}
|
||||
pre {
|
||||
.font-rem(12);
|
||||
line-height: 1.5;
|
||||
overflow-x: auto;
|
||||
&::-webkit-scrollbar {
|
||||
height: 12px;
|
||||
background-color: #34362e;
|
||||
border-radius: 0 0 4px 4px;
|
||||
}
|
||||
&::-webkit-scrollbar-thumb:horizontal {
|
||||
background-color: #6a6d5d;
|
||||
.rounded(4px);
|
||||
}
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
// Typography
|
||||
// --------------------------------------------------
|
||||
|
||||
@base-font: 'Lato', Calibri, Arial, sans-serif;
|
||||
@heading-font: @base-font;
|
||||
@caption-font: @base-font;
|
||||
@code-font: monospace;
|
||||
@alt-font: serif;
|
||||
|
||||
@doc-font-size: 16;
|
||||
@doc-line-height: 26;
|
||||
|
||||
|
||||
// set-up the body font-size / line-height
|
||||
body {
|
||||
margin-top: 0px + @doc-line-height;
|
||||
font-size: 0px + @doc-font-size;
|
||||
}
|
||||
|
||||
// Colors
|
||||
// --------------------------------------------------
|
||||
@base-color : #222;
|
||||
@body-color : #e8e8e8;
|
||||
@text-color : #222;
|
||||
@comp-color : spin(@base-color, 180);
|
||||
@border-color : lighten(@base-color,60);
|
||||
@white : #fff;
|
||||
@black : #000;
|
||||
@link-color : #222;
|
||||
|
||||
@primary : @base-color;
|
||||
@success : #5cb85c;
|
||||
@warning : #dd8338;
|
||||
@danger : #C64537;
|
||||
@info : #308cbc;
|
102
_config.yml
|
@ -1,77 +1,27 @@
|
|||
title: tail call
|
||||
description: '[...] procedure calls may be usefully thought of as GOTO statements [...]'
|
||||
# Dependencies
|
||||
markdown: kramdown
|
||||
highlighter: pygments
|
||||
|
||||
# Permalinks
|
||||
permalink: /:categories/:title/
|
||||
relative_permalinks: true
|
||||
|
||||
# Setup
|
||||
title: tail call
|
||||
tagline: 'Ramblings in software development'
|
||||
description: The ramblings of a 25-year-old software developer from Germany.
|
||||
url: https://blog.kempkens.io
|
||||
baseurl: /
|
||||
|
||||
author:
|
||||
name: 'Daniel Kempkens'
|
||||
url: https://kempkens.io
|
||||
email: daniel+blog@kempkens.io
|
||||
|
||||
paginate: 5
|
||||
|
||||
include: [".htaccess"]
|
||||
exclude: ["tmp", "Gemfile", "Gemfile.lock", "Makefile"]
|
||||
|
||||
# Custom
|
||||
disqus_shortname: blog-kempkens-io
|
||||
#Your site's domain goes here. Leave localhost server or blank when working locally.
|
||||
url: https://blog.kempkens.io
|
||||
source_url: https://github.com/nifoc/blog.kempkens.io
|
||||
reading_time: true
|
||||
words_per_minute: 200
|
||||
ipv6_enabled: true
|
||||
|
||||
# Owner/author information
|
||||
owner:
|
||||
name: Daniel Kempkens
|
||||
avatar: sidebar/avatar.jpg
|
||||
bio: "I'm a 25-year-old software developer from Germany."
|
||||
email: daniel+blog@kempkens.io
|
||||
# Social networking links used in footer. Update and remove as you like.
|
||||
homepage: https://kempkens.io
|
||||
twitter: nifoc_
|
||||
app_net: nifoc
|
||||
facebook:
|
||||
github: nifoc
|
||||
stackexchange:
|
||||
linkedin:
|
||||
instagram:
|
||||
flickr:
|
||||
tumblr:
|
||||
# For Google Authorship https://plus.google.com/authorship
|
||||
google_plus:
|
||||
keybase: nifoc
|
||||
|
||||
# Background image to be tiled on all pages
|
||||
background:
|
||||
|
||||
# Analytics and webmaster tools stuff goes here
|
||||
google_analytics: UA-28082386-3
|
||||
google_verify:
|
||||
# https://ssl.bing.com/webmaster/configure/verify/ownership Option 2 content= goes here
|
||||
bing_verify:
|
||||
|
||||
# Links to include in top navigation
|
||||
# For external links add external: true
|
||||
links:
|
||||
|
||||
# http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
|
||||
timezone: Europe/Berlin
|
||||
future: true
|
||||
highlighter: pygments
|
||||
markdown: kramdown
|
||||
|
||||
# https://github.com/mojombo/jekyll/wiki/Permalinks
|
||||
permalink: /:categories/:title/
|
||||
|
||||
# Amount of post to show on home page
|
||||
paginate: 5
|
||||
|
||||
kramdown:
|
||||
auto_ids: true
|
||||
footnote_nr: 1
|
||||
entity_output: as_char
|
||||
toc_levels: 1..6
|
||||
use_coderay: true
|
||||
|
||||
coderay:
|
||||
coderay_line_numbers: nil
|
||||
coderay_line_numbers_start: 1
|
||||
coderay_tab_width: 4
|
||||
coderay_bold_every: 10
|
||||
coderay_css: class
|
||||
|
||||
assets:
|
||||
cache: true
|
||||
js_compressor: uglifier
|
||||
css_compressor: yui
|
||||
|
||||
include: [".htaccess"]
|
||||
exclude: ["lib", "config.rb", "Capfile", "config", "log", "Rakefile", "Rakefile.rb", "tmp", "less", "*.sublime-project", "*.sublime-workspace", "*~", "*.swp", "*.swo", "test", "spec", "Gruntfile.js", "package.json", "node_modules", "Gemfile", "Gemfile.lock", "Makefile"]
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
<!--[if lt IE 9]><div class="upgrade"><strong><a href="http://whatbrowser.org/">Your browser is quite old!</strong> Why not upgrade to a different browser to better enjoy this site?</a></div><![endif]-->
|
|
@ -1,21 +0,0 @@
|
|||
<script type="text/javascript">
|
||||
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
|
||||
var disqus_shortname = '{{ site.disqus_shortname }}'; // 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 = '//' + disqus_shortname + '.disqus.com/embed.js';
|
||||
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
|
||||
})();
|
||||
|
||||
/* * * DON'T EDIT BELOW THIS LINE * * */
|
||||
(function () {
|
||||
var s = document.createElement('script'); s.async = true;
|
||||
s.type = 'text/javascript';
|
||||
s.src = '//' + disqus_shortname + '.disqus.com/count.js';
|
||||
(document.getElementsByTagName('HEAD')[0] || document.getElementsByTagName('BODY')[0]).appendChild(s);
|
||||
}());
|
||||
</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">comments powered by <span class="logo-disqus">Disqus</span></a>
|
|
@ -1,10 +0,0 @@
|
|||
<p>
|
||||
© {{ site.time | date: '%Y' }} {{ site.owner.name }}. Powered by <a href="http://jekyllrb.com">Jekyll</a> using the <a href="http://mademistakes.com/hpstr/">HPSTR Theme</a>.
|
||||
{% if site.source_url %}<br><a href="{{ site.source_url }}">Source on GitHub</a>{% endif %}
|
||||
</p>
|
||||
|
||||
{% if site.ipv6_enabled %}
|
||||
<p class="fancy-icons">
|
||||
<a href="https://en.wikipedia.org/wiki/IPv6">{% image footer/ipv6.png %}</a>
|
||||
</p>
|
||||
{% endif %}
|
|
@ -1,54 +1,28 @@
|
|||
<meta charset="utf-8">
|
||||
<title>{% if page.title %}{{ page.title }} – {% endif %}{{ site.title }}</title>
|
||||
<meta name="description" content="{% if page.description %}{{ page.description }}{% else %}{{ site.description }}{% endif %}">
|
||||
{% if page.tags %}<meta name="keywords" content="{{ page.tags | join: ', ' }}">{% endif %}
|
||||
<head>
|
||||
<link href="http://gmpg.org/xfn/11" rel="profile">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
|
||||
{% if site.owner.twitter %}<!-- Twitter Cards -->
|
||||
{% if page.image.feature %}<meta name="twitter:card" content="summary_large_image">
|
||||
<meta name="twitter:image" content="{{ site.url }}/images/{{ page.image.feature }}">
|
||||
{% else %}<meta name="twitter:card" content="summary">
|
||||
<meta name="twitter:image" content="{% if page.image.thumb %}{{ site.url }}/images/{{ page.image.thumb }}{% else %}{{ site.url }}/images/{{ site.logo }}{% endif %}">{% endif %}
|
||||
<meta name="twitter:title" content="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}">
|
||||
<meta name="twitter:description" content="{% if page.description %}{{ page.description }}{% else %}{{ site.description }}{% endif %}">
|
||||
<meta name="twitter:creator" content="@{{ site.owner.twitter }}">{% endif %}
|
||||
<!-- Enable responsiveness on mobile devices-->
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
|
||||
|
||||
<!-- Open Graph -->
|
||||
<meta property="og:locale" content="en_US">
|
||||
<meta property="og:type" content="article">
|
||||
<meta property="og:title" content="{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}">
|
||||
<meta property="og:description" content="{% if page.description %}{{ page.description }}{% else %}{{ site.description }}{% endif %}">
|
||||
<meta property="og:url" content="{{ site.url }}{{ page.url }}">
|
||||
<meta property="og:site_name" content="{{ site.title }}">
|
||||
<title>
|
||||
{% if page.title == "Home" %}
|
||||
{{ site.title }} · {{ site.tagline }}
|
||||
{% else %}
|
||||
{{ page.title }} · {{ site.title }}
|
||||
{% endif %}
|
||||
</title>
|
||||
|
||||
{% if site.google_verify %}<meta name="google-site-verification" content="{{ site.google_verify }}">{% endif %}
|
||||
{% if site.bing_verify %}<meta name="msvalidate.01" content="{{ site.bing_verify }}">{% endif %}
|
||||
<!-- CSS -->
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}public/css/poole.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}public/css/syntax.css">
|
||||
<link rel="stylesheet" href="{{ site.baseurl }}public/css/hyde.css">
|
||||
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700|Abril+Fatface">
|
||||
|
||||
{% capture canonical %}{{ site.url }}{% if site.permalink contains '.html' %}{{ page.url }}{% else %}{{ page.url | remove:'index.html' | strip_slash }}{% endif %}{% endcapture %}
|
||||
<link rel="canonical" href="{{ canonical }}">
|
||||
<link href="/feed.xml" type="application/atom+xml" rel="alternate" title="{{ site.title }} Feed">
|
||||
{% if site.owner.google_plus %}<link rel="author" href="{{ site.owner.google_plus }}?rel=author">{% endif %}
|
||||
<!-- Icons -->
|
||||
<link rel="shortcut icon" href="{{ site.baseurl }}public/favicon.ico">
|
||||
|
||||
<!-- http://t.co/dKP3o1e -->
|
||||
<meta name="HandheldFriendly" content="True">
|
||||
<meta name="MobileOptimized" content="320">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
|
||||
<!-- For all browsers -->
|
||||
<link rel="stylesheet" href="{% asset_path main %}">
|
||||
<!-- Webfonts -->
|
||||
<link href="//fonts.googleapis.com/css?family=Lato:300,400,700,300italic,400italic" rel="stylesheet" type="text/css">
|
||||
|
||||
<meta http-equiv="cleartype" content="on">
|
||||
|
||||
<!-- Load Modernizr -->
|
||||
{% javascript vendor/modernizr-2.6.2.custom.min.js %}
|
||||
|
||||
<!-- Icons -->
|
||||
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico">
|
||||
<link rel="shortcut icon" type="image/png" href="/favicon.png">
|
||||
|
||||
{% if page.image.background or site.background %}
|
||||
{% capture background %}{% if page.image.background %}{{ page.image.background }}{% else %}{{ site.background }}{% endif %}{% endcapture %}
|
||||
{% unless background contains 'http://' or background contains 'https://' %}{% capture background %}{{ background | asset_path }}{% endcapture %}{% endunless %}
|
||||
<style type="text/css">body {background-image:url({{ background }});}</style>
|
||||
{% endif %}
|
||||
<!-- RSS -->
|
||||
<link rel="alternate" type="application/atom+xml" title="{{ site.title }} Feed" href="{{ site.baseurl }}feed.xml">
|
||||
</head>
|
||||
|
|
|
@ -1,61 +0,0 @@
|
|||
<nav id="dl-menu" class="dl-menuwrapper" role="navigation">
|
||||
<button class="dl-trigger">Open Menu</button>
|
||||
<ul class="dl-menu">
|
||||
<li><a href="/">Home</a></li>
|
||||
<li><a href="/impressum/">Impressum</a></li>
|
||||
<li>
|
||||
<a href="#">About</a>
|
||||
<ul class="dl-submenu">
|
||||
<li itemscope itemtype="http://data-vocabulary.org/Person">
|
||||
<img src="{{ site.owner.avatar | asset_path }}" alt="{{ site.owner.name }} photo" class="author-photo" itemprop="photo">
|
||||
<h4 itemprop="name">{{ site.owner.name }}</h4>
|
||||
<p>{{ site.owner.bio }}</p>
|
||||
</li>
|
||||
{% if site.owner.homepage %}<li>
|
||||
<a href="{{ site.owner.homepage }}"><i class="fa fa-home"></i> Homepage</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.twitter %}<li>
|
||||
<a href="https://twitter.com/{{ site.owner.twitter }}"><i class="fa fa-twitter"></i> Twitter</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.app_net %}<li>
|
||||
<a href="https://alpha.app.net/{{ site.owner.app_net }}"><i class="fa fa-adn"></i> App.net</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.facebook %}<li>
|
||||
<a href="http://facebook.com/{{ site.owner.facebook }}"><i class="fa fa-facebook"></i> Facebook</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.google_plus %}<li>
|
||||
<a href="{{ site.owner.google_plus }}"><i class="fa fa-google-plus"></i> Google+</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.linkedin %}<li>
|
||||
<a href="http://linkedin.com/in/{{ site.owner.linkedin }}"><i class="fa fa-linkedin"></i> LinkedIn</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.github %}<li>
|
||||
<a href="https://github.com/{{ site.owner.github }}"><i class="fa fa-github"></i> GitHub</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.stackexchange %}<li>
|
||||
<a href="{{ site.owner.stackexchange }}"><i class="fa fa-stackexchange"></i> Stackexchange</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.instagram %}<li>
|
||||
<a href="http://instagram.com/{{ site.owner.instagram }}"><i class="fa fa-instagram"></i> Instagram</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.flickr %}<li>
|
||||
<a href="http://www.flickr.com/photos/{{ site.owner.flickr }}"><i class="fa fa-flickr"></i> Flickr</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.tumblr %}<li>
|
||||
<a href="http://{{ site.owner.tumblr }}.tumblr.com"><i class="fa fa-tumblr"></i> Tumblr</a>
|
||||
</li>{% endif %}
|
||||
{% if site.owner.keybase %}<li>
|
||||
<a href="https://keybase.io/{{ site.owner.keybase }}"><i class="fa fa-key"></i> Keybase</a>
|
||||
</li>{% endif %}
|
||||
</ul><!-- /.dl-submenu -->
|
||||
</li>
|
||||
<li>
|
||||
<a href="#">Posts</a>
|
||||
<ul class="dl-submenu">
|
||||
<li><a href="/posts/">All Posts</a></li>
|
||||
<li><a href="/tags/">All Tags</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{% for link in site.links %}<li>{% if link.external %}<a href="{{ link.url }}" rel="external" target="_blank">{{ link.title }}</a>{% else %}<a href="{{ link.url }}">{{ link.title }}</a>{% endif %}</li>{% endfor %}
|
||||
</ul><!-- /.dl-menu -->
|
||||
</nav><!-- /.dl-menuwrapper -->
|
|
@ -1,23 +0,0 @@
|
|||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
|
||||
<script>window.jQuery || document.write('<script src="{% asset_path vendor/jquery-1.9.1.js %}"><\/script>')</script>
|
||||
{% javascript app %}
|
||||
{% if site.google_analytics %}
|
||||
<!-- Asynchronous Google Analytics snippet -->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
(function() {
|
||||
var host = window.location.hostname;
|
||||
|
||||
if (host !== 'localhost') { // No tracking on localhost
|
||||
ga('create', '{{ site.google_analytics }}', host);
|
||||
ga('set', 'anonymizeIp', true);
|
||||
ga('send', 'pageview');
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
{% endif %}
|
||||
{% if page.comments %}{% include disqus_comments.html %}{% endif %}
|
32
_includes/sidebar.html
Normal file
|
@ -0,0 +1,32 @@
|
|||
<div class="sidebar">
|
||||
<div class="container sidebar-sticky">
|
||||
<div class="sidebar-about">
|
||||
<h1>
|
||||
<a href="{{ site.baseurl }}">
|
||||
{{ site.title }}
|
||||
</a>
|
||||
</h1>
|
||||
<p class="lead">{{ site.description }}</p>
|
||||
</div>
|
||||
|
||||
<nav class="sidebar-nav">
|
||||
<a class="sidebar-nav-item{% if page.url == site.baseurl %} active{% endif %}" href="{{ site.baseurl }}">Home</a>
|
||||
|
||||
{% comment %}
|
||||
The code below dynamically generates a sidebar nav of pages with
|
||||
`layout: page` in the front-matter. See readme for usage.
|
||||
{% endcomment %}
|
||||
|
||||
{% assign pages_list = site.pages %}
|
||||
{% for node in pages_list %}
|
||||
{% if node.title != null %}
|
||||
{% if node.layout == "page" %}
|
||||
<a class="sidebar-nav-item{% if page.url == node.url %} active{% endif %}" href="{{ node.url }}">{{ node.title }}</a>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</nav>
|
||||
|
||||
<p>© {{ site.time | date: '%Y' }}. All rights reserved.</p>
|
||||
</div>
|
||||
</div>
|
32
_layouts/default.html
Normal file
|
@ -0,0 +1,32 @@
|
|||
<!DOCTYPE html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en-us">
|
||||
|
||||
{% include head.html %}
|
||||
|
||||
<body>
|
||||
|
||||
{% include sidebar.html %}
|
||||
|
||||
<div class="content container">
|
||||
{{ content }}
|
||||
</div>
|
||||
|
||||
<!-- Asynchronous Google Analytics snippet -->
|
||||
<script>
|
||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
||||
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
||||
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
||||
|
||||
(function() {
|
||||
var host = window.location.hostname;
|
||||
|
||||
if (host !== 'localhost') { // No tracking on localhost
|
||||
ga('create', 'UA-28082386-3', host);
|
||||
ga('set', 'anonymizeIp', true);
|
||||
ga('send', 'pageview');
|
||||
}
|
||||
})();
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -1,65 +1,8 @@
|
|||
<!doctype html>
|
||||
<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
|
||||
<!--[if (IE 7)&!(IEMobile)]><html class="no-js lt-ie9 lt-ie8" lang="en"><![endif]-->
|
||||
<!--[if (IE 8)&!(IEMobile)]><html class="no-js lt-ie9" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"><!--<![endif]-->
|
||||
<head>
|
||||
{% include head.html %}
|
||||
</head>
|
||||
---
|
||||
layout: default
|
||||
---
|
||||
|
||||
<body id="page" {% if page.image.feature %}class="feature"{% endif %}>
|
||||
|
||||
{% include browser-upgrade.html %}
|
||||
{% include navigation.html %}
|
||||
|
||||
{% if page.image.feature %}
|
||||
<div class="entry-header">
|
||||
{% if page.image.credit %}<div class="image-credit">Image source: {% if page.image.creditlink %}<a href="{{ page.image.creditlink }}">{% endif %}{{ page.image.credit }}{% if page.image.creditlink %}</a>{% endif %}</div><!-- /.image-credit -->{% endif %}
|
||||
<div class="entry-image">
|
||||
{{ page.image.feature | image }}
|
||||
</div><!-- /.entry-image -->
|
||||
</div><!-- /.entry-header -->
|
||||
{% endif %}
|
||||
|
||||
<div id="main" role="main">
|
||||
<article class="entry">
|
||||
<header class="header-title">
|
||||
<div class="header-title-wrap">
|
||||
<h1 class="entry-title">{{ page.title }}</h1>
|
||||
{% if site.reading_time %}
|
||||
<p class="entry-reading-time">
|
||||
<i class="fa fa-clock-o"></i>
|
||||
{% assign readtime = content | number_of_words | divided_by:site.words_per_minute %}
|
||||
Reading time ~{% if readtime <= 1 %}1 minute{% else %}{{ readtime }} minutes{% endif %}
|
||||
</p><!-- /.entry-reading-time -->
|
||||
{% endif %}
|
||||
</div><!-- /.header-title-wrap -->
|
||||
</header>
|
||||
<div class="entry-content">
|
||||
{{ content }}
|
||||
<footer class="entry-meta">
|
||||
{% if page.modified %}{{ page.title }} was last modified on <span class="entry-date date modified"><time datetime="{{ page.modified }}">{{ page.modified }}</time></span>
|
||||
<span class="author vcard fn">{{ site.owner.name }}</span>{% endif %}
|
||||
{% if page.share %}<div class="social-share">
|
||||
<ul class="socialcount socialcount-small inline-list" data-url="{{ site.url }}{{ page.url }}" data-share-text="{{ page.title }}">
|
||||
<li class="facebook"><a href="https://www.facebook.com/sharer/sharer.php?u={{ site.url }}{{ page.url }}" title="Share on Facebook"><span class="count"><i class="fa fa-facebook"></i> Like</span></a></li>
|
||||
<li class="twitter"><a href="https://twitter.com/intent/tweet?text={{ site.url }}{{ page.url }}" title="Share on Twitter"><span class="count"><i class="fa fa-twitter"></i> Tweet</span></a></li>
|
||||
<li class="googleplus"><a href="https://plus.google.com/share?url={{ site.url }}{{ page.url }}" title="Share on Google Plus"><span class="count"><i class="fa fa-google-plus"></i> +1</span></a></li>
|
||||
</ul>
|
||||
</div><!-- /.social-share -->{% endif %}
|
||||
</footer>
|
||||
</div><!-- /.entry-content -->
|
||||
{% if site.disqus_shortname and page.comments %}<section id="disqus_thread"></section><!-- /#disqus_thread -->{% endif %}
|
||||
</article>
|
||||
</div><!-- /#main -->
|
||||
|
||||
<div class="footer-wrapper">
|
||||
<footer role="contentinfo">
|
||||
{% include footer.html %}
|
||||
</footer>
|
||||
</div><!-- /.footer-wrapper -->
|
||||
|
||||
{% include scripts.html %}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
<div class="page">
|
||||
<h1 class="page-title">{{ page.title }}</h1>
|
||||
{{ content }}
|
||||
</div>
|
||||
|
|
|
@ -1,43 +0,0 @@
|
|||
<!doctype html>
|
||||
<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
|
||||
<!--[if (IE 7)&!(IEMobile)]><html class="no-js lt-ie9 lt-ie8" lang="en"><![endif]-->
|
||||
<!--[if (IE 8)&!(IEMobile)]><html class="no-js lt-ie9" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"><!--<![endif]-->
|
||||
<head>
|
||||
{% include head.html %}
|
||||
</head>
|
||||
|
||||
<body id="post-index" {% if page.image.feature %}class="feature"{% endif %}>
|
||||
|
||||
{% include browser-upgrade.html %}
|
||||
{% include navigation.html %}
|
||||
|
||||
<div class="entry-header">
|
||||
{% if page.image.credit %}<div class="image-credit">Image source: {% if page.image.creditlink %}<a href="{{ page.image.creditlink }}">{% endif %}{{ page.image.credit }}{% if page.image.creditlink %}</a>{% endif %}</div><!-- /.image-credit -->{% endif %}
|
||||
{% if page.image.feature %}
|
||||
<div class="entry-image">
|
||||
{{ page.image.feature | image }}
|
||||
</div><!-- /.entry-image -->
|
||||
{% endif %}
|
||||
<div class="header-title">
|
||||
<div class="header-title-wrap">
|
||||
<h1>{{ site.title }}</h1>
|
||||
<h2>{{ page.title }}</h2>
|
||||
</div><!-- /.header-title-wrap -->
|
||||
</div><!-- /.header-title -->
|
||||
</div><!-- /.entry-header -->
|
||||
|
||||
<div id="main" role="main">
|
||||
{{ content }}
|
||||
</div><!-- /#main -->
|
||||
|
||||
<div class="footer-wrapper">
|
||||
<footer role="contentinfo">
|
||||
{% include footer.html %}
|
||||
</footer>
|
||||
</div><!-- /.footer-wrapper -->
|
||||
|
||||
{% include scripts.html %}
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,93 +1,44 @@
|
|||
<!doctype html>
|
||||
<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]-->
|
||||
<!--[if (IE 7)&!(IEMobile)]><html class="no-js lt-ie9 lt-ie8" lang="en"><![endif]-->
|
||||
<!--[if (IE 8)&!(IEMobile)]><html class="no-js lt-ie9" lang="en"><![endif]-->
|
||||
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"><!--<![endif]-->
|
||||
<head>
|
||||
{% include head.html %}
|
||||
</head>
|
||||
---
|
||||
layout: default
|
||||
---
|
||||
|
||||
<body id="post" {% if page.image.feature %}class="feature"{% endif %}>
|
||||
<div class="post">
|
||||
<h1 class="post-title">{{ page.title }}</h1>
|
||||
<span class="post-date">{{ page.date | date_to_string }}</span>
|
||||
{{ content }}
|
||||
</div>
|
||||
|
||||
{% include browser-upgrade.html %}
|
||||
{% include navigation.html %}
|
||||
<div class="related">
|
||||
<h2>Related Posts</h2>
|
||||
<ul class="related-posts">
|
||||
{% for post in site.related_posts limit:3 %}
|
||||
<li>
|
||||
<h3>
|
||||
<a href="{{ post.url }}">
|
||||
{{ post.title }}
|
||||
<small>{{ post.date | date_to_string }}</small>
|
||||
</a>
|
||||
</h3>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
{% if page.image.feature %}
|
||||
<div class="entry-header">
|
||||
{% if page.image.credit %}<div class="image-credit">Image source: {% if page.image.creditlink %}<a href="{{ page.image.creditlink }}">{% endif %}{{ page.image.credit }}{% if page.image.creditlink %}</a>{% endif %}</div><!-- /.image-credit -->{% endif %}
|
||||
<div class="entry-image">
|
||||
{{ page.image.feature | image }}
|
||||
</div><!-- /.entry-image -->
|
||||
</div><!-- /.entry-header -->
|
||||
{% if page.comments %}
|
||||
<div class="comments">
|
||||
<h2>Comments</h2>
|
||||
<div id="disqus_thread"></div>
|
||||
</div>
|
||||
|
||||
<script type="text/javascript">
|
||||
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
|
||||
var disqus_shortname = '{{ site.disqus_shortname }}';
|
||||
|
||||
/* * * DON'T EDIT BELOW THIS LINE * * */
|
||||
(function() {
|
||||
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
|
||||
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
|
||||
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
|
||||
})();
|
||||
</script>
|
||||
{% endif %}
|
||||
|
||||
<div id="main" role="main">
|
||||
<article class="hentry">
|
||||
<header class="header-title">
|
||||
<div class="header-title-wrap">
|
||||
{% if page.link %}
|
||||
<h1 class="entry-title"><a href="{{ page.link }}">{{ page.title }}</a></h1>
|
||||
{% else %}
|
||||
<h1 class="entry-title"><a href="{{ page.url }}" rel="bookmark" title="{{ page.title }}">{{ page.title }}</a></h1>
|
||||
{% endif %}
|
||||
<h2>{{ page.date | date: "%B %d, %Y" }}</h2>
|
||||
{% if site.reading_time %}
|
||||
<p class="entry-reading-time">
|
||||
<i class="fa fa-clock-o"></i>
|
||||
{% assign readtime = content | number_of_words | divided_by:site.words_per_minute %}
|
||||
Reading time ~{% if readtime <= 1 %}1 minute{% else %}{{ readtime }} minutes{% endif %}
|
||||
</p><!-- /.entry-reading-time -->
|
||||
{% endif %}
|
||||
</div><!-- /.header-title-wrap -->
|
||||
</header>
|
||||
<div class="entry-content">
|
||||
{{ content }}
|
||||
<footer class="entry-meta">
|
||||
<span class="entry-tags">{% for tag in page.tags %}<a href="/tags/#{{ tag }}" title="Pages tagged {{ tag }}" class="tag">{{ tag }}</a>{% unless forloop.last %}{% endunless %}{% endfor %}</span>
|
||||
<span><a href="{{ page.url }}" rel="bookmark" title="{{ page.title }}">{{ page.title }}</a> was published on <span class="entry-date date published updated"><time datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: "%B %d, %Y" }}</time></span></span>
|
||||
{% if page.modified %}(revised: <span class="entry-date date modified"><time datetime="{{ page.modified }}">{{ page.modified | date: "%m/%d/%Y" }}</time></span>){% endif %}
|
||||
<span class="author vcard"><span class="fn"><a href="/about/" title="About {{ site.owner.name }}">{{ site.owner.name }}</a></span></span>
|
||||
{% if page.share %}<div class="social-share">
|
||||
<ul class="socialcount socialcount-small inline-list">
|
||||
<li class="facebook"><a href="https://www.facebook.com/sharer/sharer.php?u={{ site.url }}{{ page.url }}" title="Share on Facebook"><span class="count"><i class="fa fa-facebook-square"></i> Like</span></a></li>
|
||||
<li class="twitter"><a href="https://twitter.com/intent/tweet?text={{ site.url }}{{ page.url }}" title="Share on Twitter"><span class="count"><i class="fa fa-twitter-square"></i> Tweet</span></a></li>
|
||||
<li class="googleplus"><a href="https://plus.google.com/share?url={{ site.url }}{{ page.url }}" title="Share on Google Plus"><span class="count"><i class="fa fa-google-plus-square"></i> +1</span></a></li>
|
||||
</ul>
|
||||
</div><!-- /.social-share -->{% endif %}
|
||||
</footer>
|
||||
</div><!-- /.entry-content -->
|
||||
{% if site.disqus_shortname and page.comments %}<section id="disqus_thread"></section><!-- /#disqus_thread -->{% endif %}
|
||||
{% if site.related_posts.size %}
|
||||
<div class="read-more">
|
||||
{% for post in site.related_posts limit:1 %}
|
||||
<div class="read-more-header">
|
||||
<a href="{{ page.previous.url }}" class="read-more-btn">Read More</a>
|
||||
</div><!-- /.read-more-header -->
|
||||
<div class="read-more-content">
|
||||
<h3><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></h3>
|
||||
<p>{% if post.description %}{{ post.description }}{% else %}{{ post.content | strip_html | strip_newlines | truncate: 140 }}…{% endif %} <a href="{{ post.url }}">Continue Reading »</a></p>
|
||||
</div><!-- /.read-more-content -->
|
||||
{% endfor %}
|
||||
<div class="read-more-list">
|
||||
{% for post in site.related_posts limit:2 offset:1 %}
|
||||
<div class="list-item">
|
||||
<h4><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></h4>
|
||||
<span>Published on {{ post.date | date: "%B %d, %Y" }}</span>
|
||||
</div><!-- /.list-item -->
|
||||
{% endfor %}
|
||||
</div><!-- /.read-more-list -->
|
||||
{% endif %}
|
||||
</div><!-- /.read-more -->
|
||||
</article>
|
||||
</div><!-- /#main -->
|
||||
|
||||
<div class="footer-wrapper">
|
||||
<footer role="contentinfo">
|
||||
{% include footer.html %}
|
||||
</footer>
|
||||
</div><!-- /.footer-wrapper -->
|
||||
|
||||
{% include scripts.html %}
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
require "jekyll-assets"
|
|
@ -5,19 +5,14 @@ description: "Description and implementation of a function that joins a list of
|
|||
date: 2014-02-16 15:30:00 CET
|
||||
category: posts
|
||||
tags: [erlang, programming, english]
|
||||
image:
|
||||
feature: header/abstract-3.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
The binary module in Erlang provides an easy way to split binaries using `split/2,3`, but what if you want to join a list of binaries back together?
|
||||
|
||||
There is no built-in function to do this, so I've decided to write my own.
|
||||
|
||||
{% highlight erlang linenos %}
|
||||
{% highlight erlang %}
|
||||
-spec binary_join([binary()], binary()) -> binary().
|
||||
binary_join([], _Sep) ->
|
||||
<<>>;
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Simple nginx configuration that allows you to proxy most of Micros
|
|||
date: 2014-02-17 21:45:00 CET
|
||||
category: posts
|
||||
tags: [nginx, exchange, ops, english]
|
||||
image:
|
||||
feature: header/abstract-10.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
As it turns out, setting up [nginx](http://nginx.org) as a reverse proxy for Microsoft Exchange is not as easy as [some](http://blog.friedlandreas.net/2013/07/reverseproxy-fur-eas-exchange-activesync-und-owa-outlookwebapp-mit-nginx/) [posts](http://www.administrator.de/wissen/ngnix-als-reverse-proxy-für-exchange-2010-192711.html) suggest.
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Some links regarding Telegram and its security model."
|
|||
date: 2014-02-24 22:00:00 CET
|
||||
category: posts
|
||||
tags: [telegram, whatsapp, app, english]
|
||||
image:
|
||||
feature: header/abstract-2.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
Ever since [Facebook bought WhatsApp](http://techcrunch.com/2014/02/19/facebook-buying-whatsapp-for-16b-in-cash-and-stock-plus-3b-in-rsus/) more and more of the people I know switch to [Telegram](https://telegram.org). One of the main reasons they choose Telegram is because it's "secure" and Telegram itself seems really keen on being seen as a secure, privacy-focused WhatsApp alternative.
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Blow up a polyline to search inside the generated polygon."
|
|||
date: 2014-03-23 20:00:00 CET
|
||||
category: posts
|
||||
tags: [javascript, programming, english]
|
||||
image:
|
||||
feature: header/abstract-7.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
At work, we needed a simple way to buffer a polyline in order to search for stuff along the route from A to B. I'll explain how we used Google's Maps API and [JSTS](https://github.com/bjornharrtell/jsts) in order to achieve this easily.
|
||||
|
@ -47,4 +42,4 @@ Since it is nested, you need to call `polygon.coordinates[0]` in order to get ba
|
|||
|
||||
You could then use the the coordinates to draw the generated polygon on the map (along with the route), in order to produce something like this:
|
||||
|
||||
{% image posts/buffered-polyline-1.png %}
|
||||
![Buffered Polyline]({{ site.baseurl }}public/images/buffered-polyline-1.png)
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Collection of some interesting DEF CON videos."
|
|||
date: 2014-03-26 13:55:00 CET
|
||||
category: posts
|
||||
tags: [defcon, videos, english]
|
||||
image:
|
||||
feature: header/abstract-9.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
Over the weekend I watched some [DEF CON](https://www.defcon.org) videos on [YouTube](https://www.youtube.com/user/DEFCONConference/videos) and thought I should share some of the interesting ones on here. The two talks on Bitsquatting (by Stucke and Schultz) are especially entertaining and scary.
|
||||
|
|
|
@ -6,12 +6,7 @@ date: 2014-03-30 21:30:00 CEST
|
|||
modified: 2014-03-31 23:10:00 CEST
|
||||
category: posts
|
||||
tags: [nginx, ocsp, ssl, ops, english]
|
||||
image:
|
||||
feature: header/abstract-4.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
Setting up [OCSP stapling](https://en.wikipedia.org/wiki/OCSP_stapling) with [nginx](http://nginx.org/) is more or less straightforward, but depending on what's in your `ssl_certificate` you might run into some issues with it silently failing. So I've decided to write about how I set up OCSP stapling with certificates from [StartSSL](https://www.startssl.com/) and [CAcert](http://www.cacert.org/).
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Property-based testing in Erlang, with some basic usage examples."
|
|||
date: 2014-04-06 20:15:00 CEST
|
||||
category: posts
|
||||
tags: [erlang, quickcheck, testing, programming, english]
|
||||
image:
|
||||
feature: header/abstract-6.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
[PropEr](http://proper.softlab.ntua.gr/) is a [QuickCheck](https://en.wikipedia.org/wiki/QuickCheck)-inspired property-based testing tool for Erlang. In contrast to traditional testing methodologies, the tester only has to provide the generic structure of valid inputs and some properties, which specify the relation between input and output. The testing tool will then produce progressively more complex valid inputs and compare the results it gets to what it expected (based on the defined properties).
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Short description of how to install Erlang/OTP 17.0 using kerl on
|
|||
date: 2014-04-12 21:25:00 CEST
|
||||
category: posts
|
||||
tags: [erlang, programming, english]
|
||||
image:
|
||||
feature: header/abstract-8.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
It's been a few days since [Erlang/OTP 17.0](http://www.erlang.org/news/73) has been released. Installing 64 Bit Erlang (with [Observer](http://www.erlang.org/doc/man/observer.html) support) on Mac OS X has always been a bit tricky, but with 17.0 it has gotten significantly easier.
|
||||
|
@ -55,4 +50,4 @@ The following `alias` makes it easier to start the Observer from a terminal. The
|
|||
alias erlobserver='erl -sname observer -run observer -detached'
|
||||
{% endhighlight %}
|
||||
|
||||
{% image posts/installing-erlang-17-0-using-kerl-1.png %}
|
||||
![Erlang Observer]({{ site.baseurl }}public/images/installing-erlang-17-0-using-kerl-1.png)
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Simple workaround for supporting deprecated types and warnings_as_
|
|||
date: 2014-04-18 20:25:00 CEST
|
||||
category: posts
|
||||
tags: [erlang, programming, english]
|
||||
image:
|
||||
feature: header/abstract-10.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
Erlang 17.0 [deprecated some pre-defined types](http://www.erlang.org/download/otp_src_17.0.readme) like `dict()` and `gb_tree()` in favor of `dict:dict()` and `gb_tree:tree()`. The workaround they suggest (`nowarn_deprecated_type`) works in 17.0, but would break once the deprecated types are removed.
|
||||
|
|
|
@ -5,12 +5,7 @@ description: "Introductory post about the Riemann client I've written."
|
|||
date: 2014-05-04 21:55:00 CEST
|
||||
category: posts
|
||||
tags: [erlang, programming, riemann, katja, english]
|
||||
image:
|
||||
feature: header/abstract-11.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
comments: true
|
||||
share: true
|
||||
---
|
||||
|
||||
[Riemann](http://riemann.io) is a network monitoring system written in Clojure, it offers a rather simple [protobuf](https://de.wikipedia.org/wiki/Protocol_Buffers)-based API. I have just tagged [Katja](https://github.com/nifoc/katja) [version 0.1](https://github.com/nifoc/katja/tree/v0.1), my Riemann client written in Erlang.
|
||||
|
|
54
feed.xml
|
@ -1,36 +1,28 @@
|
|||
---
|
||||
layout: null
|
||||
---
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
|
||||
<title type="text">{{ site.title }}</title>
|
||||
<generator uri="https://github.com/mojombo/jekyll">Jekyll</generator>
|
||||
<link rel="self" type="application/atom+xml" href="{{ site.url }}/feed.xml" />
|
||||
<link rel="alternate" type="text/html" href="{{ site.url }}" />
|
||||
<updated>{{ site.time | date_to_xmlschema }}</updated>
|
||||
<id>{{ site.url }}/</id>
|
||||
<author>
|
||||
<name>{{ site.owner.name }}</name>
|
||||
<uri>{{ site.url }}/</uri>
|
||||
<email>{{ site.owner.email }}</email>
|
||||
</author>
|
||||
{% for post in site.posts limit:20 %}
|
||||
|
||||
<entry>
|
||||
<title type="html"><![CDATA[{{ post.title | cdata_escape }}]]></title>
|
||||
<link rel="alternate" type="text/html" href="{% if post.link %}{{ post.link }}{% else %}{{ site.url }}{{ post.url }}{% endif %}" />
|
||||
<id>{{ site.url }}{{ post.id }}</id>
|
||||
{% if post.modified %}<updated>{{ post.modified | to_xmlschema }}T00:00:00-00:00</updated>
|
||||
<published>{{ post.date | date_to_xmlschema }}</published>
|
||||
{% else %}<published>{{ post.date | date_to_xmlschema }}</published>
|
||||
<updated>{{ post.date | date_to_xmlschema }}</updated>{% endif %}
|
||||
<author>
|
||||
<name>{{ site.owner.name }}</name>
|
||||
<uri>{{ site.url }}</uri>
|
||||
<email>{{ site.owner.email }}</email>
|
||||
</author>
|
||||
<content type="html">{{ post.content | xml_escape }}
|
||||
<p><a href="{{ site.url }}{{ post.url }}">{{ post.title }}</a> was originally published by {{ site.owner.name }} at <a href="{{ site.url }}">{{ site.title }}</a> on {{ post.date | date: "%B %d, %Y" }}.</p></content>
|
||||
</entry>
|
||||
{% endfor %}
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom">
|
||||
|
||||
<title>{{ site.title }}</title>
|
||||
<link href="{{ site.url }}/atom.xml" rel="self"/>
|
||||
<link href="{{ site.url }}/"/>
|
||||
<updated>{{ site.time | date_to_xmlschema }}</updated>
|
||||
<id>{{ site.url }}</id>
|
||||
<author>
|
||||
<name>{{ site.author.name }}</name>
|
||||
<email>{{ site.author.email }}</email>
|
||||
</author>
|
||||
|
||||
{% for post in site.posts %}
|
||||
<entry>
|
||||
<title>{{ post.title }}</title>
|
||||
<link href="{{ site.url }}{{ post.url }}"/>
|
||||
<updated>{{ post.date | date_to_xmlschema }}</updated>
|
||||
<id>{{ site.url }}{{ post.id }}</id>
|
||||
<content type="html">{{ post.content | xml_escape }}</content>
|
||||
</entry>
|
||||
{% endfor %}
|
||||
|
||||
</feed>
|
||||
|
|
|
@ -3,17 +3,13 @@ layout: page
|
|||
permalink: /impressum/
|
||||
title: Impressum
|
||||
tags: [impressum]
|
||||
image:
|
||||
feature: header/abstract-5.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
---
|
||||
|
||||
Daniel Kempkens
|
||||
Kugelsberger Weg 6
|
||||
41849 Wassenberg
|
||||
|
||||
Email: {{ site.owner.email }}
|
||||
Email: {{ site.author.email }}
|
||||
|
||||
## Domains
|
||||
|
||||
|
|
90
index.html
|
@ -1,75 +1,37 @@
|
|||
---
|
||||
layout: post-index
|
||||
title: Latest Posts
|
||||
tags: [programming, blog]
|
||||
image:
|
||||
feature: header/abstract-1.jpg
|
||||
credit: dargadgetz
|
||||
creditlink: http://www.dargadgetz.com/ios-7-abstract-wallpaper-pack-for-iphone-5-and-ipod-touch-retina/
|
||||
layout: default
|
||||
title: Home
|
||||
---
|
||||
|
||||
{% for post in paginator.posts %}
|
||||
<article class="hentry">
|
||||
<header>
|
||||
<div class="entry-meta">
|
||||
<span class="entry-date date published updated"><time datetime="{{ post.date | date_to_xmlschema }}"><a href="{{ post.url }}">{{ post.date | date: "%B %d, %Y" }}</a></time></span><span class="author vcard"><span class="fn"><a href="/about/" title="About {{ site.owner.name }}">{{ site.owner.name }}</a></span></span>{% if site.disqus_shortname and post.comments %} • <span class="entry-comments"><a href="{{ post.url }}#disqus_thread">Comment</a></span>{% endif %}
|
||||
{% if site.reading_time %}
|
||||
<span class="entry-reading-time pull-right">
|
||||
<i class="fa fa-clock-o"></i>
|
||||
{% assign readtime = post.content | number_of_words | divided_by:site.words_per_minute %}
|
||||
Reading time ~{% if readtime <= 1 %}1 minute{% else %}{{ readtime }} minutes{% endif %}
|
||||
</span><!-- /.entry-reading-time -->
|
||||
{% endif %}
|
||||
</div><!-- /.entry-meta -->
|
||||
{% if post.link %}
|
||||
<h1 class="entry-title"><a href="{{ post.url }}" rel="bookmark" title="{{ post.title }}"><i class="fa fa-angle-double-right"></i></a> <a href="{{ post.link }}">{{ post.title }}</a></h1>
|
||||
{% else %}
|
||||
<h1 class="entry-title"><a href="{{ post.url }}" rel="bookmark" title="{{ post.title }}" itemprop="url">{{ post.title }}</a></h1>
|
||||
{% endif %}
|
||||
</header>
|
||||
<div class="entry-content">
|
||||
{% if post.link %}
|
||||
{{ post.content }}
|
||||
{% else %}
|
||||
{{ post.excerpt }}
|
||||
<div class="posts">
|
||||
{% for post in paginator.posts %}
|
||||
<div class="post">
|
||||
<h1 class="post-title">
|
||||
<a href="{{ post.url }}">
|
||||
{{ post.title }}
|
||||
</a>
|
||||
</h1>
|
||||
|
||||
<p><a href="{{ post.url }}">Continue Reading »</a></p>
|
||||
{% endif %}
|
||||
</div><!-- /.entry-content -->
|
||||
</article><!-- /.hentry -->
|
||||
{% endfor %}
|
||||
<span class="post-date">{{ post.date | date_to_string }}</span>
|
||||
|
||||
{{ post.excerpt }}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<div class="pagination">
|
||||
{% if paginator.next_page %}
|
||||
<a class="pagination-item older" href="{{ site.baseurl }}page{{paginator.next_page}}">Older</a>
|
||||
{% else %}
|
||||
<span class="pagination-item older">Older</span>
|
||||
{% endif %}
|
||||
{% if paginator.previous_page %}
|
||||
{% if paginator.previous_page == 1 %}
|
||||
<a href="/" class="btn">Previous</a>
|
||||
{% if paginator.page == 2 %}
|
||||
<a class="pagination-item newer" href="{{ site.baseurl }}">Newer</a>
|
||||
{% else %}
|
||||
<a href="/page{{ paginator.previous_page }}" class="btn">Previous</a>
|
||||
<a class="pagination-item newer" href="{{ site.baseurl }}page{{paginator.previous_page}}">Newer</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
Previous
|
||||
<span class="pagination-item newer">Newer</span>
|
||||
{% endif %}
|
||||
<ul class="inline-list">
|
||||
<li>
|
||||
{% if paginator.page == 1 %}
|
||||
<span class="current-page">1</span>
|
||||
{% else %}
|
||||
<a href="/">1</a>
|
||||
{% endif %}
|
||||
</li>
|
||||
{% for count in (2..paginator.total_pages) %}
|
||||
<li>
|
||||
{% if count == paginator.page %}
|
||||
<span class="current-page">{{ count }}</span>
|
||||
{% else %}
|
||||
<a href="/page{{ count }}">{{ count }}</a>
|
||||
{% endif %}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% if paginator.next_page %}
|
||||
<a href="/page{{ paginator.next_page }}" class="btn">Next</a>
|
||||
{% else %}
|
||||
Next
|
||||
{% endif %}
|
||||
</div><!-- /.pagination -->
|
||||
</div>
|
||||
|
|
32
posts.html
|
@ -1,32 +0,0 @@
|
|||
---
|
||||
layout: post-index
|
||||
permalink: /posts/
|
||||
title: All Posts
|
||||
description: "An archive of posts."
|
||||
---
|
||||
|
||||
{% for post in site.posts %}
|
||||
{% capture this_year %}{{ post.date | date: "%Y" }}{% endcapture %}
|
||||
{% capture next_year %}{{ post.previous.date | date: "%Y" }}{% endcapture %}
|
||||
|
||||
{% if forloop.first %}
|
||||
<article>
|
||||
<h2 id="{{ this_year }}-ref">{{ this_year }}</h2>
|
||||
<ul>
|
||||
{% endif %}
|
||||
|
||||
<li class="entry-title"><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></li>
|
||||
|
||||
{% if forloop.last %}
|
||||
</ul>
|
||||
</article>
|
||||
{% else %}
|
||||
{% if this_year != next_year %}
|
||||
</ul>
|
||||
</article>
|
||||
<article>
|
||||
<h2 id="{{ next_year }}-ref">{{next_year}}</h2>
|
||||
<ul>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
250
public/css/hyde.css
Normal file
|
@ -0,0 +1,250 @@
|
|||
/*
|
||||
* __ __
|
||||
* /\ \ /\ \
|
||||
* \ \ \___ __ __ \_\ \ __
|
||||
* \ \ _ `\/\ \/\ \ /'_` \ /'__`\
|
||||
* \ \ \ \ \ \ \_\ \/\ \_\ \/\ __/
|
||||
* \ \_\ \_\/`____ \ \___,_\ \____\
|
||||
* \/_/\/_/`/___/> \/__,_ /\/____/
|
||||
* /\___/
|
||||
* \/__/
|
||||
*
|
||||
* Designed, built, and released under MIT license by @mdo. Learn more at
|
||||
* https://github.com/poole/hyde.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Contents
|
||||
*
|
||||
* Global resets
|
||||
* Sidebar
|
||||
* Container
|
||||
* Reverse layout
|
||||
* Themes
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Global resets
|
||||
*
|
||||
* Update the foundational and global aspects of the page.
|
||||
*/
|
||||
|
||||
html {
|
||||
font-family: "PT Sans", Helvetica, Arial, sans-serif;
|
||||
}
|
||||
@media (min-width: 48em) {
|
||||
html {
|
||||
font-size: 16px;
|
||||
}
|
||||
}
|
||||
@media (min-width: 58em) {
|
||||
html {
|
||||
font-size: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Sidebar
|
||||
*
|
||||
* Flexible banner for housing site name, intro, and "footer" content. Starts
|
||||
* out above content in mobile and later moves to the side with wider viewports.
|
||||
*/
|
||||
|
||||
.sidebar {
|
||||
text-align: center;
|
||||
padding: 2rem 1rem;
|
||||
color: rgba(255,255,255,.5);
|
||||
background-color: #202020;
|
||||
}
|
||||
@media (min-width: 48em) {
|
||||
.sidebar {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
width: 18rem;
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
|
||||
/* Sidebar links */
|
||||
.sidebar a {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
/* About section */
|
||||
.sidebar-about h1 {
|
||||
color: #fff;
|
||||
margin-top: 0;
|
||||
font-family: "Abril Fatface", serif;
|
||||
font-size: 3.25rem;
|
||||
}
|
||||
|
||||
/* Sidebar nav */
|
||||
.sidebar-nav {
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
.sidebar-nav-item {
|
||||
display: block;
|
||||
line-height: 1.75;
|
||||
}
|
||||
a.sidebar-nav-item:hover,
|
||||
a.sidebar-nav-item:focus {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.sidebar-nav-item.active {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
/* Sticky sidebar
|
||||
*
|
||||
* Add the `sidebar-sticky` class to the sidebar's container to affix it the
|
||||
* contents to the bottom of the sidebar in tablets and up.
|
||||
*/
|
||||
|
||||
@media (min-width: 48em) {
|
||||
.sidebar-sticky {
|
||||
position: absolute;
|
||||
right: 1rem;
|
||||
bottom: 1rem;
|
||||
left: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* Container
|
||||
*
|
||||
* Align the contents of the site above the proper threshold with some margin-fu
|
||||
* with a 25%-wide `.sidebar`.
|
||||
*/
|
||||
|
||||
.content {
|
||||
padding-top: 4rem;
|
||||
padding-bottom: 4rem;
|
||||
}
|
||||
|
||||
@media (min-width: 48em) {
|
||||
.content {
|
||||
max-width: 38rem;
|
||||
margin-left: 20rem;
|
||||
margin-right: 2rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 64em) {
|
||||
.content {
|
||||
margin-left: 22rem;
|
||||
margin-right: 4rem;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Reverse layout
|
||||
*
|
||||
* Flip the orientation of the page by placing the `.sidebar` on the right.
|
||||
*/
|
||||
|
||||
@media (min-width: 48em) {
|
||||
.layout-reverse .sidebar {
|
||||
left: auto;
|
||||
right: 0;
|
||||
}
|
||||
.layout-reverse .content {
|
||||
margin-left: 2rem;
|
||||
margin-right: 20rem;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 64em) {
|
||||
.layout-reverse .content {
|
||||
margin-left: 4rem;
|
||||
margin-right: 22rem;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Themes
|
||||
*
|
||||
* As of v1.1, Hyde includes optional themes to color the sidebar and links
|
||||
* within blog posts. To use, add the class of your choosing to the `body`.
|
||||
*/
|
||||
|
||||
/* Base16 (http://chriskempson.github.io/base16/#default) */
|
||||
|
||||
/* Red */
|
||||
.theme-base-08 .sidebar {
|
||||
background-color: #ac4142;
|
||||
}
|
||||
.theme-base-08 .content a,
|
||||
.theme-base-08 .related-posts li a:hover {
|
||||
color: #ac4142;
|
||||
}
|
||||
|
||||
/* Orange */
|
||||
.theme-base-09 .sidebar {
|
||||
background-color: #d28445;
|
||||
}
|
||||
.theme-base-09 .content a,
|
||||
.theme-base-09 .related-posts li a:hover {
|
||||
color: #d28445;
|
||||
}
|
||||
|
||||
/* Yellow */
|
||||
.theme-base-0a .sidebar {
|
||||
background-color: #f4bf75;
|
||||
}
|
||||
.theme-base-0a .content a,
|
||||
.theme-base-0a .related-posts li a:hover {
|
||||
color: #f4bf75;
|
||||
}
|
||||
|
||||
/* Green */
|
||||
.theme-base-0b .sidebar {
|
||||
background-color: #90a959;
|
||||
}
|
||||
.theme-base-0b .content a,
|
||||
.theme-base-0b .related-posts li a:hover {
|
||||
color: #90a959;
|
||||
}
|
||||
|
||||
/* Cyan */
|
||||
.theme-base-0c .sidebar {
|
||||
background-color: #75b5aa;
|
||||
}
|
||||
.theme-base-0c .content a,
|
||||
.theme-base-0c .related-posts li a:hover {
|
||||
color: #75b5aa;
|
||||
}
|
||||
|
||||
/* Blue */
|
||||
.theme-base-0d .sidebar {
|
||||
background-color: #6a9fb5;
|
||||
}
|
||||
.theme-base-0d .content a,
|
||||
.theme-base-0d .related-posts li a:hover {
|
||||
color: #6a9fb5;
|
||||
}
|
||||
|
||||
/* Magenta */
|
||||
.theme-base-0e .sidebar {
|
||||
background-color: #aa759f;
|
||||
}
|
||||
.theme-base-0e .content a,
|
||||
.theme-base-0e .related-posts li a:hover {
|
||||
color: #aa759f;
|
||||
}
|
||||
|
||||
/* Brown */
|
||||
.theme-base-0f .sidebar {
|
||||
background-color: #8f5536;
|
||||
}
|
||||
.theme-base-0f .content a,
|
||||
.theme-base-0f .related-posts li a:hover {
|
||||
color: #8f5536;
|
||||
}
|
430
public/css/poole.css
Normal file
|
@ -0,0 +1,430 @@
|
|||
/*
|
||||
* ___
|
||||
* /\_ \
|
||||
* _____ ___ ___\//\ \ __
|
||||
* /\ '__`\ / __`\ / __`\\ \ \ /'__`\
|
||||
* \ \ \_\ \/\ \_\ \/\ \_\ \\_\ \_/\ __/
|
||||
* \ \ ,__/\ \____/\ \____//\____\ \____\
|
||||
* \ \ \/ \/___/ \/___/ \/____/\/____/
|
||||
* \ \_\
|
||||
* \/_/
|
||||
*
|
||||
* Designed, built, and released under MIT license by @mdo. Learn more at
|
||||
* https://github.com/poole/poole.
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Contents
|
||||
*
|
||||
* Body resets
|
||||
* Custom type
|
||||
* Messages
|
||||
* Container
|
||||
* Masthead
|
||||
* Posts and pages
|
||||
* Pagination
|
||||
* Reverse layout
|
||||
* Themes
|
||||
*/
|
||||
|
||||
|
||||
/*
|
||||
* Body resets
|
||||
*
|
||||
* Update the foundational and global aspects of the page.
|
||||
*/
|
||||
|
||||
* {
|
||||
-webkit-box-sizing: border-box;
|
||||
-moz-box-sizing: border-box;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
html,
|
||||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
html {
|
||||
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||
font-size: 16px;
|
||||
line-height: 1.5;
|
||||
}
|
||||
@media (min-width: 38em) {
|
||||
html {
|
||||
font-size: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
body {
|
||||
color: #515151;
|
||||
background-color: #fff;
|
||||
-webkit-text-size-adjust: 100%;
|
||||
-ms-text-size-adjust: 100%;
|
||||
}
|
||||
|
||||
/* No `:visited` state is required by default (browsers will use `a`) */
|
||||
a {
|
||||
color: #268bd2;
|
||||
text-decoration: none;
|
||||
}
|
||||
a strong {
|
||||
color: inherit;
|
||||
}
|
||||
/* `:focus` is linked to `:hover` for basic accessibility */
|
||||
a:hover,
|
||||
a:focus {
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
/* Headings */
|
||||
h1, h2, h3, h4, h5, h6 {
|
||||
margin-bottom: .5rem;
|
||||
font-weight: bold;
|
||||
line-height: 1.25;
|
||||
color: #313131;
|
||||
text-rendering: optimizeLegibility;
|
||||
}
|
||||
h1 {
|
||||
font-size: 2rem;
|
||||
}
|
||||
h2 {
|
||||
margin-top: 1rem;
|
||||
font-size: 1.5rem;
|
||||
}
|
||||
h3 {
|
||||
margin-top: 1.5rem;
|
||||
font-size: 1.25rem;
|
||||
}
|
||||
h4, h5, h6 {
|
||||
margin-top: 1rem;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
/* Body text */
|
||||
p {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
strong {
|
||||
color: #303030;
|
||||
}
|
||||
|
||||
|
||||
/* Lists */
|
||||
ul, ol, dl {
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
dd {
|
||||
margin-bottom: .5rem;
|
||||
}
|
||||
|
||||
/* Misc */
|
||||
hr {
|
||||
position: relative;
|
||||
margin: 1.5rem 0;
|
||||
border: 0;
|
||||
border-top: 1px solid #eee;
|
||||
border-bottom: 1px solid #fff;
|
||||
}
|
||||
|
||||
abbr {
|
||||
font-size: 85%;
|
||||
font-weight: bold;
|
||||
color: #555;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
abbr[title] {
|
||||
cursor: help;
|
||||
border-bottom: 1px dotted #e5e5e5;
|
||||
}
|
||||
|
||||
/* Code */
|
||||
code,
|
||||
pre {
|
||||
font-family: Menlo, Monaco, "Courier New", monospace;
|
||||
}
|
||||
code {
|
||||
padding: .25em .5em;
|
||||
font-size: 85%;
|
||||
color: #bf616a;
|
||||
background-color: #f9f9f9;
|
||||
border-radius: 3px;
|
||||
}
|
||||
pre {
|
||||
display: block;
|
||||
margin-top: 0;
|
||||
margin-bottom: 1rem;
|
||||
padding: 1rem;
|
||||
font-size: .8rem;
|
||||
line-height: 1.4;
|
||||
white-space: pre;
|
||||
white-space: pre-wrap;
|
||||
word-break: break-all;
|
||||
word-wrap: break-word;
|
||||
background-color: #f9f9f9;
|
||||
}
|
||||
pre code {
|
||||
padding: 0;
|
||||
font-size: 100%;
|
||||
color: inherit;
|
||||
background-color: transparent;
|
||||
}
|
||||
|
||||
/* Pygments via Jekyll */
|
||||
.highlight {
|
||||
margin-bottom: 1rem;
|
||||
border-radius: 4px;
|
||||
}
|
||||
.highlight pre {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* Gist via GitHub Pages */
|
||||
.gist .gist-file {
|
||||
font-family: Menlo, Monaco, "Courier New", monospace !important;
|
||||
}
|
||||
.gist .markdown-body {
|
||||
padding: 15px;
|
||||
}
|
||||
.gist pre {
|
||||
padding: 0;
|
||||
background-color: transparent;
|
||||
}
|
||||
.gist .gist-file .gist-data {
|
||||
font-size: .8rem !important;
|
||||
line-height: 1.4;
|
||||
}
|
||||
.gist code {
|
||||
padding: 0;
|
||||
color: inherit;
|
||||
background-color: transparent;
|
||||
border-radius: 0;
|
||||
}
|
||||
|
||||
/* Quotes */
|
||||
blockquote {
|
||||
padding: .5rem 1rem;
|
||||
margin: .8rem 0;
|
||||
color: #7a7a7a;
|
||||
border-left: .25rem solid #e5e5e5;
|
||||
}
|
||||
blockquote p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
@media (min-width: 30em) {
|
||||
blockquote {
|
||||
padding-right: 5rem;
|
||||
padding-left: 1.25rem;
|
||||
}
|
||||
}
|
||||
|
||||
img {
|
||||
display: block;
|
||||
max-width: 100%;
|
||||
margin: 0 0 1rem;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
/* Tables */
|
||||
table {
|
||||
margin-bottom: 1rem;
|
||||
width: 100%;
|
||||
border: 1px solid #e5e5e5;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
td,
|
||||
th {
|
||||
padding: .25rem .5rem;
|
||||
border: 1px solid #e5e5e5;
|
||||
}
|
||||
tbody tr:nth-child(odd) td,
|
||||
tbody tr:nth-child(odd) th {
|
||||
background-color: #f9f9f9;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Custom type
|
||||
*
|
||||
* Extend paragraphs with `.lead` for larger introductory text.
|
||||
*/
|
||||
|
||||
.lead {
|
||||
font-size: 1.25rem;
|
||||
font-weight: 300;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Messages
|
||||
*
|
||||
* Show alert messages to users. You may add it to single elements like a `<p>`,
|
||||
* or to a parent if there are multiple elements to show.
|
||||
*/
|
||||
|
||||
.message {
|
||||
margin-bottom: 1rem;
|
||||
padding: 1rem;
|
||||
color: #717171;
|
||||
background-color: #f9f9f9;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Container
|
||||
*
|
||||
* Center the page content.
|
||||
*/
|
||||
|
||||
.container {
|
||||
max-width: 38rem;
|
||||
padding-left: 1rem;
|
||||
padding-right: 1rem;
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Masthead
|
||||
*
|
||||
* Super small header above the content for site name and short description.
|
||||
*/
|
||||
|
||||
.masthead {
|
||||
padding-top: 1rem;
|
||||
padding-bottom: 1rem;
|
||||
margin-bottom: 3rem;
|
||||
}
|
||||
.masthead-title {
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
color: #505050;
|
||||
}
|
||||
.masthead-title a {
|
||||
color: #505050;
|
||||
}
|
||||
.masthead-title small {
|
||||
font-size: 75%;
|
||||
font-weight: 400;
|
||||
color: #c0c0c0;
|
||||
letter-spacing: 0;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Posts and pages
|
||||
*
|
||||
* Each post is wrapped in `.post` and is used on default and post layouts. Each
|
||||
* page is wrapped in `.page` and is only used on the page layout.
|
||||
*/
|
||||
|
||||
.page,
|
||||
.post {
|
||||
margin-bottom: 4em;
|
||||
}
|
||||
|
||||
/* Blog post or page title */
|
||||
.page-title,
|
||||
.post-title,
|
||||
.post-title a {
|
||||
color: #303030;
|
||||
}
|
||||
.page-title,
|
||||
.post-title {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
/* Meta data line below post title */
|
||||
.post-date {
|
||||
display: block;
|
||||
margin-top: -.5rem;
|
||||
margin-bottom: 1rem;
|
||||
color: #9a9a9a;
|
||||
}
|
||||
|
||||
/* Related posts */
|
||||
.related {
|
||||
padding-top: 2rem;
|
||||
padding-bottom: 2rem;
|
||||
border-top: 1px solid #eee;
|
||||
}
|
||||
.related-posts {
|
||||
padding-left: 0;
|
||||
list-style: none;
|
||||
}
|
||||
.related-posts h3 {
|
||||
margin-top: 0;
|
||||
}
|
||||
.related-posts li small {
|
||||
font-size: 75%;
|
||||
color: #999;
|
||||
}
|
||||
.related-posts li a:hover {
|
||||
color: #268bd2;
|
||||
text-decoration: none;
|
||||
}
|
||||
.related-posts li a:hover small {
|
||||
color: inherit;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Pagination
|
||||
*
|
||||
* Super lightweight (HTML-wise) blog pagination. `span`s are provide for when
|
||||
* there are no more previous or next posts to show.
|
||||
*/
|
||||
|
||||
.pagination {
|
||||
overflow: hidden; /* clearfix */
|
||||
margin-left: -1rem;
|
||||
margin-right: -1rem;
|
||||
font-family: "PT Sans", Helvetica, Arial, sans-serif;
|
||||
color: #ccc;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
/* Pagination items can be `span`s or `a`s */
|
||||
.pagination-item {
|
||||
display: block;
|
||||
padding: 1rem;
|
||||
border: 1px solid #eee;
|
||||
}
|
||||
.pagination-item:first-child {
|
||||
margin-bottom: -1px;
|
||||
}
|
||||
|
||||
/* Only provide a hover state for linked pagination items */
|
||||
a.pagination-item:hover {
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
@media (min-width: 30em) {
|
||||
.pagination {
|
||||
margin: 3rem 0;
|
||||
}
|
||||
.pagination-item {
|
||||
float: left;
|
||||
width: 50%;
|
||||
}
|
||||
.pagination-item:first-child {
|
||||
margin-bottom: 0;
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
}
|
||||
.pagination-item:last-child {
|
||||
margin-left: -1px;
|
||||
border-top-right-radius: 4px;
|
||||
border-bottom-right-radius: 4px;
|
||||
}
|
||||
}
|
65
public/css/syntax.css
Normal file
|
@ -0,0 +1,65 @@
|
|||
.highlight .hll { background-color: #ffc; }
|
||||
.highlight .c { color: #999; } /* Comment */
|
||||
.highlight .err { color: #a00; background-color: #faa } /* Error */
|
||||
.highlight .k { color: #069; } /* Keyword */
|
||||
.highlight .o { color: #555 } /* Operator */
|
||||
.highlight .cm { color: #09f; font-style: italic } /* Comment.Multiline */
|
||||
.highlight .cp { color: #099 } /* Comment.Preproc */
|
||||
.highlight .c1 { color: #999; } /* Comment.Single */
|
||||
.highlight .cs { color: #999; } /* Comment.Special */
|
||||
.highlight .gd { background-color: #fcc; border: 1px solid #c00 } /* Generic.Deleted */
|
||||
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||
.highlight .gr { color: #f00 } /* Generic.Error */
|
||||
.highlight .gh { color: #030; } /* Generic.Heading */
|
||||
.highlight .gi { background-color: #cfc; border: 1px solid #0c0 } /* Generic.Inserted */
|
||||
.highlight .go { color: #aaa } /* Generic.Output */
|
||||
.highlight .gp { color: #009; } /* Generic.Prompt */
|
||||
.highlight .gs { } /* Generic.Strong */
|
||||
.highlight .gu { color: #030; } /* Generic.Subheading */
|
||||
.highlight .gt { color: #9c6 } /* Generic.Traceback */
|
||||
.highlight .kc { color: #069; } /* Keyword.Constant */
|
||||
.highlight .kd { color: #069; } /* Keyword.Declaration */
|
||||
.highlight .kn { color: #069; } /* Keyword.Namespace */
|
||||
.highlight .kp { color: #069 } /* Keyword.Pseudo */
|
||||
.highlight .kr { color: #069; } /* Keyword.Reserved */
|
||||
.highlight .kt { color: #078; } /* Keyword.Type */
|
||||
.highlight .m { color: #f60 } /* Literal.Number */
|
||||
.highlight .s { color: #d44950 } /* Literal.String */
|
||||
.highlight .na { color: #4f9fcf } /* Name.Attribute */
|
||||
.highlight .nb { color: #366 } /* Name.Builtin */
|
||||
.highlight .nc { color: #0a8; } /* Name.Class */
|
||||
.highlight .no { color: #360 } /* Name.Constant */
|
||||
.highlight .nd { color: #99f } /* Name.Decorator */
|
||||
.highlight .ni { color: #999; } /* Name.Entity */
|
||||
.highlight .ne { color: #c00; } /* Name.Exception */
|
||||
.highlight .nf { color: #c0f } /* Name.Function */
|
||||
.highlight .nl { color: #99f } /* Name.Label */
|
||||
.highlight .nn { color: #0cf; } /* Name.Namespace */
|
||||
.highlight .nt { color: #2f6f9f; } /* Name.Tag */
|
||||
.highlight .nv { color: #033 } /* Name.Variable */
|
||||
.highlight .ow { color: #000; } /* Operator.Word */
|
||||
.highlight .w { color: #bbb } /* Text.Whitespace */
|
||||
.highlight .mf { color: #f60 } /* Literal.Number.Float */
|
||||
.highlight .mh { color: #f60 } /* Literal.Number.Hex */
|
||||
.highlight .mi { color: #f60 } /* Literal.Number.Integer */
|
||||
.highlight .mo { color: #f60 } /* Literal.Number.Oct */
|
||||
.highlight .sb { color: #c30 } /* Literal.String.Backtick */
|
||||
.highlight .sc { color: #c30 } /* Literal.String.Char */
|
||||
.highlight .sd { color: #c30; font-style: italic } /* Literal.String.Doc */
|
||||
.highlight .s2 { color: #c30 } /* Literal.String.Double */
|
||||
.highlight .se { color: #c30; } /* Literal.String.Escape */
|
||||
.highlight .sh { color: #c30 } /* Literal.String.Heredoc */
|
||||
.highlight .si { color: #a00 } /* Literal.String.Interpol */
|
||||
.highlight .sx { color: #c30 } /* Literal.String.Other */
|
||||
.highlight .sr { color: #3aa } /* Literal.String.Regex */
|
||||
.highlight .s1 { color: #c30 } /* Literal.String.Single */
|
||||
.highlight .ss { color: #fc3 } /* Literal.String.Symbol */
|
||||
.highlight .bp { color: #366 } /* Name.Builtin.Pseudo */
|
||||
.highlight .vc { color: #033 } /* Name.Variable.Class */
|
||||
.highlight .vg { color: #033 } /* Name.Variable.Global */
|
||||
.highlight .vi { color: #033 } /* Name.Variable.Instance */
|
||||
.highlight .il { color: #f60 } /* Literal.Number.Integer.Long */
|
||||
|
||||
.css .o,
|
||||
.css .o + .nt,
|
||||
.css .nt + .nt { color: #999; }
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 228 KiB After Width: | Height: | Size: 228 KiB |
Before Width: | Height: | Size: 82 KiB After Width: | Height: | Size: 82 KiB |
|
@ -1,7 +1,6 @@
|
|||
---
|
||||
layout: null
|
||||
---
|
||||
|
||||
User-agent: *
|
||||
Allow: /
|
||||
Sitemap: {{ site.url }}/sitemap.xml
|
||||
|
|
|
@ -15,7 +15,8 @@ layout: null
|
|||
|
||||
{% for post in site.posts %}
|
||||
<url>
|
||||
<loc>{{ site.url }}{{ post.url }}</loc>
|
||||
<loc>{{ site.url }}{{ post.url }}</loc>
|
||||
<lastmod>{{ post.date | date_to_xmlschema }}</lastmod>
|
||||
</url>
|
||||
{% endfor %}
|
||||
</urlset>
|
||||
|
|
28
tags.html
|
@ -1,28 +0,0 @@
|
|||
---
|
||||
layout: post-index
|
||||
permalink: /tags/
|
||||
title: Tag Archive
|
||||
description: "An archive of posts sorted by tag."
|
||||
---
|
||||
|
||||
{% capture site_tags %}{% for tag in site.tags %}{{ tag | first }}{% unless forloop.last %},{% endunless %}{% endfor %}{% endcapture %}
|
||||
{% assign tags_list = site_tags | split:',' | sort %}
|
||||
|
||||
<ul class="entry-meta inline-list">
|
||||
{% for item in (0..site.tags.size) %}{% unless forloop.last %}
|
||||
{% capture this_word %}{{ tags_list[item] | strip_newlines }}{% endcapture %}
|
||||
<li><a href="#{{ this_word }}" class="tag">{{ this_word }} <span>{{ site.tags[this_word].size }}</span></a></li>
|
||||
{% endunless %}{% endfor %}
|
||||
</ul>
|
||||
|
||||
{% for item in (0..site.tags.size) %}{% unless forloop.last %}
|
||||
{% capture this_word %}{{ tags_list[item] | strip_newlines }}{% endcapture %}
|
||||
<article>
|
||||
<h2 id="{{ this_word }}">{{ this_word }}</h2>
|
||||
<ul>
|
||||
{% for post in site.tags[this_word] %}{% if post.title != null %}
|
||||
<li class="entry-title"><a href="{{ post.url }}" title="{{ post.title }}">{{ post.title }}</a></li>
|
||||
{% endif %}{% endfor %}
|
||||
</ul>
|
||||
</article><!-- /.hentry -->
|
||||
{% endunless %}{% endfor %}
|