diff --git a/plugins/octopress_filters.rb b/plugins/octopress_filters.rb index 7d73bde..8c9367b 100644 --- a/plugins/octopress_filters.rb +++ b/plugins/octopress_filters.rb @@ -26,11 +26,25 @@ module OctopressFilters # code snippet # ``` def backtick_codeblock(input) - input.gsub /
`{3}\s(\w+)<\/p>\n\n
([^<]+)<\/code><\/pre>\n\n`{3}<\/p>/m do
+ # Markdown support
+ input = input.gsub /
`{3}\s(\w+)<\/p>\s*
\s*(.+?)\s*<\/code><\/pre>\s*`{3}<\/p>/m do
lang = $1
str = $2.gsub('<','<').gsub('>','>')
highlight(str, lang)
end
+
+ # Textile support
+ input = input.gsub /
`{3}\s(\w+)
\n(.+?)`{3}<\/p>/m do
+ lang = $1
+ str = $2.gsub(/^\s{4}/, '').gsub(/
$/, '')
+ highlight(str, lang)
+ end
+
+ input.gsub /^`{3}\s(\w+)\n(.+?)\n`{3}/m do
+ lang = $1
+ str = $2.gsub(/^\s{4}/, '')
+ highlight(str, lang)
+ end
end
# Replaces relative urls with full urls