Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 9714d7d
Showing
225 changed files
with
45,453 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
_site | ||
.sass-cache |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# Site settings | ||
title: NHibernate Forge | ||
email: | ||
description: > # this means to ignore newlines until "baseurl:" | ||
baseurl: "" | ||
url: "http://nhibernate.github.io" | ||
twitter_username: nhibernate | ||
github_username: nhibernate | ||
|
||
# Build settings | ||
markdown: kramdown |
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,201 @@ | ||
# BlogML import script originally sourced from: | ||
# https://github.com/philippkueng/philippkueng.github.com/tree/30ef1570f06d33938b18d5eee7767d6641b9a779/source/_import | ||
# Best post I could find about how to use it was here: | ||
# http://philippkueng.ch/migrate-from-blogengine-dot-net-to-jekyll.html | ||
# | ||
# how to install | ||
# -------------- | ||
# mkdir source/_importer | ||
# cp blogml.rb to the source/_importer/ you created above | ||
# cp your BlogML.xml to the same source/_importer/ directory | ||
# | ||
# make sure to change the "categories" output at the end of this script | ||
# to be the final resting place of your imported posts. i chose to put mine | ||
# all into the /blog/archives/ folder personally. by using categories like | ||
# this, it uses the folder structure for all posts to render in that one | ||
# directory. | ||
# | ||
# if you, on the other hand, want to retain your categories as categories | ||
# in your new blog, feel free to remove the TAGs portion and copy it to the | ||
# CATEGORIES portion in the final output below. It will render the categories | ||
# per your BlogML. | ||
# | ||
# how to run | ||
# -------------- | ||
# I prefer this method below so you can run the importer multiple times without | ||
# effecting any new and existing posts you may have created. because the import | ||
# BLOWS OUT YOUR _posts FOLDER! | ||
# cd source/_importer/ | ||
# ruby -r './blogml.rb' -e 'Jekyll::BlogML.process()' | ||
# | ||
# that will execute the script only with that folder | ||
# | ||
# change Log by eduncan911: | ||
# | ||
# 2014-04-08 | ||
# added "alias: " to output, changed old_url to be an array with the original old_url as well as a lowercased version | ||
# added "date: " to output | ||
# added "tags: " to output to read from categories (since I abused that 10 years ago) | ||
# you can change this to "categories: " easily and have the same array for them | ||
# added "published: " to output | ||
# | ||
|
||
module Jekyll | ||
|
||
require 'rexml/document' | ||
require 'time' | ||
require "YAML" | ||
require 'fileutils' | ||
|
||
module BlogML | ||
#Reads posts from an BlogML dump. | ||
#It creates a post file for each entry in the dump. | ||
def self.process(source = "BlogML.xml") | ||
FileUtils.rmtree "_posts" | ||
FileUtils.mkdir_p "_posts" | ||
content = "" | ||
open(source, "r") { |f| content << f.read } | ||
|
||
FileUtils.touch ".htaccess" | ||
File.open(".htaccess", "w") do |htaccess| | ||
|
||
htaccess.puts "RewriteEngine on" | ||
|
||
# first, we need to parse the existing categories into a known hash for later lookup | ||
cats = Hash.new | ||
catdoc = REXML::Document.new(content) | ||
catdoc.elements.each("blog/categories/category") do |category| | ||
cats[category.attributes["id"]] = category.elements["title"].text | ||
end | ||
puts "Categories found: #{cats.values}" | ||
|
||
doc = REXML::Document.new(content) | ||
posts = 0 | ||
doc.elements.each("blog/posts/post") do |item| | ||
|
||
puts | ||
link = item.attributes["post-url"] | ||
|
||
title = item.elements["title"].text | ||
puts " title: #{title}" | ||
|
||
# Use the URL after the last slash as the post's name | ||
name = link.split("/")[-1] | ||
puts "original name: #{name}" | ||
|
||
# Lowercase name for uniformity | ||
name.downcase! | ||
|
||
# Remove extensions (.html, .aspx, etc) | ||
name = $1 if name =~ /(.*)\.(.*)/ | ||
puts " parsed name: #{name}" | ||
|
||
# # Remove the leading digits and dash that Serendipity adds | ||
# name = $1 if name =~ /\d+\-(.*)/ | ||
# puts "name 3: #{name}" | ||
# puts "name: #{name}" | ||
|
||
## an important note. my blogml.xml had a few spaces and \r\n before | ||
# the <![CDATA[ markers in the content. this caused the Ruby REXML parser | ||
# to ignore all content within element. i had to remove all of those | ||
# in order for this line to parse. | ||
content = item.elements["content"].text | ||
|
||
## i'd like to insert a diclaimer that I have imported these posts. | ||
# note that you'll have to create the file source/_includes/imported_disclaimer.html | ||
# to render. i just put a {% blockquote %} with some verbage in it. | ||
content = "{% include imported_disclaimer.html %}\r\n" + content | ||
|
||
## i'd like to cut off old content from showing in the blog roll. since | ||
# it requires <!-- more --> to be inserted, we'll just do it at the | ||
# very top. someone with more time can make it insert after the first | ||
# paragraph or something. | ||
content = "<!-- more -->\r\n" + content | ||
|
||
## This section is used to cleanup any content data. | ||
# | ||
# Replace /image.axd?picture= with /images/ | ||
#content.gsub!(/\/image\.axd\?picture\=/, "/images/") | ||
# Replace /file.axd?file= with /files/ | ||
#content.gsub!(/\/file\.axd\?file\=/, "/files/") | ||
# Replace encoded /'s with real thing | ||
#content.gsub!(/\%2f/, "/") | ||
content.gsub!(/http:\/\/eduncan911.com/, "") # remove the domain from my links and images | ||
content.gsub!(/\/blog\/thumbnail\//, "/blog/archives/images/") | ||
# handle my old [PostIcon] mod | ||
content.gsub!(/\[PostIcon((.*;)|(.*"))?\]+/i, "<img alt='#{title}' src='") | ||
content.gsub!(/\[Posticon((.*;)|(.*"))?\]+/i, "<img alt='#{title}' src='") # /i doesn't seem to be working | ||
content.gsub!(/\[posticon((.*;)|(.*"))?\]+/i, "<img alt='#{title}' src='") # /i doesn't seem to be working | ||
# [PostIcon Anchor="Top"] | ||
content.gsub!(/\[\/PostIcon\]+/i, "'/>") | ||
content.gsub!(/\[\/Posticon\]+/i, "'/>") # /i doesn't seem to be working | ||
content.gsub!(/\[\/posticon\]+/i, "'/>") # /i doesn't seem to be working | ||
|
||
## is this published? | ||
published = item.attributes["approved"] | ||
puts "published: #{published}" | ||
|
||
timestamp = Time.parse(item.attributes["date-created"]) | ||
puts "timestamp: #{timestamp}" | ||
|
||
# post_file_name = "#{timestamp.strftime("%Y-%m-%d")}-#{name}" | ||
#filename = "_posts/#{timestamp.strftime("%Y-%m-%d")}-#{name}.html" | ||
filename = "_posts/#{timestamp.strftime("%Y-%m-%d")}-#{name}.markdown" | ||
puts "filename: #{filename}" | ||
|
||
## Keep old URL | ||
# old_url = name | ||
# htaccess.puts "RewriteRule ^#{name}$ " | ||
# for GitHub pages, we need to setup an alias | ||
old_url = [ item.attributes["post-url"] ] | ||
if item.attributes["post-url"] != item.attributes["post-url"].downcase | ||
old_url.push(item.attributes["post-url"].downcase) | ||
end | ||
puts "old_url: #{old_url}" | ||
|
||
# Add URL rewrite to htaccess (broken now that we use old_url as an array) | ||
#htaccess.puts "RewriteRule ^post/#{old_url}$ /#{name}.html [R=301,NC]" | ||
|
||
# since BlogML doesn't support tags, and I haphazardly used categories as tags, | ||
# we are going to read categories and use them as tags. | ||
tags = Array.new | ||
item.elements.each("categories/category") do |category| | ||
tags.push(cats[category.attributes["ref"]]) | ||
end | ||
puts "tags: #{tags}" | ||
|
||
# puts "#{link} -> #{filename}" | ||
File.open(filename, "w") do |f| | ||
# YAML.dump( | ||
# { | ||
# "layout" => "default", | ||
# # "name" => name, | ||
# "title" => title, | ||
# # "time" => timestamp, | ||
# }, | ||
f.puts <<-HEADER | ||
--- | ||
layout: post | ||
title: "#{title}" | ||
date: #{timestamp.strftime("%Y-%m-%d %H:%M:%S %z")} | ||
comments: true | ||
published: #{published} | ||
categories: ["blog", "archives"] | ||
tags: #{tags} | ||
alias: #{old_url} | ||
--- | ||
HEADER | ||
# f.puts | ||
# ) | ||
# f.puts "---\n#{content}" | ||
f.puts content | ||
end | ||
|
||
posts += 1 | ||
end | ||
puts "Created #{posts} posts!" | ||
|
||
end | ||
end | ||
end | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
<footer class="site-footer"> | ||
|
||
<div class="wrapper"> | ||
|
||
<h2 class="footer-heading">{{ site.title }}</h2> | ||
|
||
<div class="footer-col-wrapper"> | ||
<div class="footer-col footer-col-1"> | ||
<ul class="contact-list"> | ||
<li>{{ site.title }}</li> | ||
<li><a href="mailto:{{ site.email }}">{{ site.email }}</a></li> | ||
</ul> | ||
</div> | ||
|
||
<div class="footer-col footer-col-2"> | ||
<ul class="social-media-list"> | ||
{% if site.github_username %} | ||
<li> | ||
<a href="https://github.com/{{ site.github_username }}"> | ||
<span class="icon icon--github"> | ||
<svg viewBox="0 0 16 16"> | ||
<path fill="#828282" d="M7.999,0.431c-4.285,0-7.76,3.474-7.76,7.761 c0,3.428,2.223,6.337,5.307,7.363c0.388,0.071,0.53-0.168,0.53-0.374c0-0.184-0.007-0.672-0.01-1.32 c-2.159,0.469-2.614-1.04-2.614-1.04c-0.353-0.896-0.862-1.135-0.862-1.135c-0.705-0.481,0.053-0.472,0.053-0.472 c0.779,0.055,1.189,0.8,1.189,0.8c0.692,1.186,1.816,0.843,2.258,0.645c0.071-0.502,0.271-0.843,0.493-1.037 C4.86,11.425,3.049,10.76,3.049,7.786c0-0.847,0.302-1.54,0.799-2.082C3.768,5.507,3.501,4.718,3.924,3.65 c0,0,0.652-0.209,2.134,0.796C6.677,4.273,7.34,4.187,8,4.184c0.659,0.003,1.323,0.089,1.943,0.261 c1.482-1.004,2.132-0.796,2.132-0.796c0.423,1.068,0.157,1.857,0.077,2.054c0.497,0.542,0.798,1.235,0.798,2.082 c0,2.981-1.814,3.637-3.543,3.829c0.279,0.24,0.527,0.713,0.527,1.437c0,1.037-0.01,1.874-0.01,2.129 c0,0.208,0.14,0.449,0.534,0.373c3.081-1.028,5.302-3.935,5.302-7.362C15.76,3.906,12.285,0.431,7.999,0.431z"/> | ||
</svg> | ||
</span> | ||
|
||
<span class="username">{{ site.github_username }}</span> | ||
</a> | ||
</li> | ||
{% endif %} | ||
|
||
{% if site.twitter_username %} | ||
<li> | ||
<a href="https://twitter.com/{{ site.twitter_username }}"> | ||
<span class="icon icon--twitter"> | ||
<svg viewBox="0 0 16 16"> | ||
<path fill="#828282" d="M15.969,3.058c-0.586,0.26-1.217,0.436-1.878,0.515c0.675-0.405,1.194-1.045,1.438-1.809 | ||
c-0.632,0.375-1.332,0.647-2.076,0.793c-0.596-0.636-1.446-1.033-2.387-1.033c-1.806,0-3.27,1.464-3.27,3.27 c0,0.256,0.029,0.506,0.085,0.745C5.163,5.404,2.753,4.102,1.14,2.124C0.859,2.607,0.698,3.168,0.698,3.767 c0,1.134,0.577,2.135,1.455,2.722C1.616,6.472,1.112,6.325,0.671,6.08c0,0.014,0,0.027,0,0.041c0,1.584,1.127,2.906,2.623,3.206 C3.02,9.402,2.731,9.442,2.433,9.442c-0.211,0-0.416-0.021-0.615-0.059c0.416,1.299,1.624,2.245,3.055,2.271 c-1.119,0.877-2.529,1.4-4.061,1.4c-0.264,0-0.524-0.015-0.78-0.046c1.447,0.928,3.166,1.469,5.013,1.469 c6.015,0,9.304-4.983,9.304-9.304c0-0.142-0.003-0.283-0.009-0.423C14.976,4.29,15.531,3.714,15.969,3.058z"/> | ||
</svg> | ||
</span> | ||
|
||
<span class="username">{{ site.twitter_username }}</span> | ||
</a> | ||
</li> | ||
{% endif %} | ||
</ul> | ||
</div> | ||
|
||
<div class="footer-col footer-col-3"> | ||
<p class="text">{{ site.description }}</p> | ||
</div> | ||
</div> | ||
|
||
</div> | ||
|
||
</footer> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<head> | ||
<meta charset="utf-8"> | ||
<meta name="viewport" content="width=device-width initial-scale=1" /> | ||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> | ||
|
||
<title>{% if page.title %}{{ page.title }}{% else %}{{ site.title }}{% endif %}</title> | ||
<meta name="description" content="{{ site.description }}"> | ||
|
||
<link rel="stylesheet" href="{{ "/css/main.css" | prepend: site.baseurl }}"> | ||
<link rel="canonical" href="{{ page.url | replace:'index.html','' | prepend: site.baseurl | prepend: site.url }}"> | ||
</head> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
<header class="site-header"> | ||
|
||
<div class="wrapper"> | ||
|
||
<a class="site-title" href="{{ site.baseurl }}/">{{ site.title }}</a> | ||
|
||
<nav class="site-nav"> | ||
<a href="#" class="menu-icon"> | ||
<svg viewBox="0 0 18 15"> | ||
<path fill="#424242" d="M18,1.484c0,0.82-0.665,1.484-1.484,1.484H1.484C0.665,2.969,0,2.304,0,1.484l0,0C0,0.665,0.665,0,1.484,0 h15.031C17.335,0,18,0.665,18,1.484L18,1.484z"/> | ||
<path fill="#424242" d="M18,7.516C18,8.335,17.335,9,16.516,9H1.484C0.665,9,0,8.335,0,7.516l0,0c0-0.82,0.665-1.484,1.484-1.484 h15.031C17.335,6.031,18,6.696,18,7.516L18,7.516z"/> | ||
<path fill="#424242" d="M18,13.516C18,14.335,17.335,15,16.516,15H1.484C0.665,15,0,14.335,0,13.516l0,0 c0-0.82,0.665-1.484,1.484-1.484h15.031C17.335,12.031,18,12.696,18,13.516L18,13.516z"/> | ||
</svg> | ||
</a> | ||
|
||
<div class="trigger"> | ||
{% for page in site.pages %} | ||
{% if page.title %} | ||
<a class="page-link" href="{{ page.url | prepend: site.baseurl }}">{{ page.title }}</a> | ||
{% endif %} | ||
{% endfor %} | ||
</div> | ||
</nav> | ||
|
||
</div> | ||
|
||
</header> |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
<!DOCTYPE html> | ||
<html> | ||
|
||
{% include head.html %} | ||
|
||
<body> | ||
|
||
{% include header.html %} | ||
|
||
<div class="page-content"> | ||
<div class="wrapper"> | ||
{{ content }} | ||
</div> | ||
</div> | ||
|
||
{% include footer.html %} | ||
|
||
</body> | ||
|
||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
--- | ||
layout: default | ||
--- | ||
<div class="post"> | ||
|
||
<header class="post-header"> | ||
<h1 class="post-title">{{ page.title }}</h1> | ||
</header> | ||
|
||
<article class="post-content"> | ||
{{ content }} | ||
</article> | ||
|
||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- | ||
layout: default | ||
--- | ||
<div class="post"> | ||
|
||
<header class="post-header"> | ||
<h1 class="post-title">{{ page.title }}</h1> | ||
<p class="post-meta">{{ page.date | date: "%b %-d, %Y" }}{% if page.author %} • {{ page.author }}{% endif %}{% if page.meta %} • {{ page.meta }}{% endif %}</p> | ||
</header> | ||
|
||
<article class="post-content"> | ||
{{ content }} | ||
</article> | ||
|
||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.