diff options
author | Brandon Mathis <brandon@imathis.com> | 2011-07-26 23:37:31 -0400 |
---|---|---|
committer | Brandon Mathis <brandon@imathis.com> | 2011-07-26 23:37:31 -0400 |
commit | 6e2beaa969d6dd68652fa2cd79ad4eb6eeeaae49 (patch) | |
tree | cd7bd3f5dce02c36501738cdeae3633a2c0d5128 | |
parent | 786b8e8783cb596f8c375b8ba6dea9123ae9620a (diff) | |
download | my_new_personal_website-6e2beaa969d6dd68652fa2cd79ad4eb6eeeaae49.tar.xz my_new_personal_website-6e2beaa969d6dd68652fa2cd79ad4eb6eeeaae49.zip |
added support for github style backtick code blocks
-rw-r--r-- | .themes/classic/source/_layouts/default.html | 2 | ||||
-rw-r--r-- | plugins/octopress_filters.rb | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/.themes/classic/source/_layouts/default.html b/.themes/classic/source/_layouts/default.html index 5b6240de..f6333435 100644 --- a/.themes/classic/source/_layouts/default.html +++ b/.themes/classic/source/_layouts/default.html @@ -5,7 +5,7 @@ <nav role=navigation>{% include navigation.html %}</nav> <div id="main"> <div id="content"> - {{ content | expand_urls: root_url | smart_quotes }} + {{ content | expand_urls: root_url | backtick_codeblock | smart_quotes }} {% unless page.sidebar == false %} <aside role=sidebar>{% include sidebar.html %}</aside> {% endunless %} diff --git a/plugins/octopress_filters.rb b/plugins/octopress_filters.rb index 429e505c..e85466e3 100644 --- a/plugins/octopress_filters.rb +++ b/plugins/octopress_filters.rb @@ -1,6 +1,8 @@ #custom filters for Octopress +require './plugins/pygments_code' module OctopressFilters + include HighlightCode # Used on the blog index to split posts on the <!--more--> marker def excerpt(input) if input.index(/<!--\s*more\s*-->/i) @@ -19,6 +21,18 @@ module OctopressFilters end end + # for Github style codeblocks eg. + # ``` ruby + # code snippet + # ``` + def backtick_codeblock(input) + input.gsub /<p>`{3}\s(\w+)<\/p>.+<pre><code>(.+)<\/code><\/pre>.+`{3}<\/p>/m do + lang = $1 + str = $2.gsub(/^\s{4}/, '').gsub('<','<').gsub('>','>') + highlight(str, lang) + end + end + # Replaces relative urls with full urls def expand_urls(input, url='') url ||= '/' |