aboutsummaryrefslogtreecommitdiff
path: root/_plugins/callout.rb
diff options
context:
space:
mode:
authorMark Otto <[email protected]>2017-05-31 21:29:23 -0700
committerMark Otto <[email protected]>2017-05-31 21:29:23 -0700
commitf13eb5194019b460eb01cdb251c81c76b2e7d5d0 (patch)
tree178410fd574e52b9a0850273dacea566efa2aef0 /_plugins/callout.rb
parent8a6642bbff3b86a24fc47cad42f5a23af80f057a (diff)
parent620257456ed0685cae6b6ff51d2ab1e37f02a4fa (diff)
downloadbootstrap-f13eb5194019b460eb01cdb251c81c76b2e7d5d0.tar.xz
bootstrap-f13eb5194019b460eb01cdb251c81c76b2e7d5d0.zip
Merge branch 'v4-dev' into form-tweaks
Diffstat (limited to '_plugins/callout.rb')
-rw-r--r--_plugins/callout.rb28
1 files changed, 28 insertions, 0 deletions
diff --git a/_plugins/callout.rb b/_plugins/callout.rb
new file mode 100644
index 000000000..58453ecb4
--- /dev/null
+++ b/_plugins/callout.rb
@@ -0,0 +1,28 @@
+# Source: https://stackoverflow.com/questions/19169849/how-to-get-markdown-processed-content-in-jekyll-tag-plugin
+
+module Jekyll
+ module Tags
+ class CalloutTag < Liquid::Block
+
+ def initialize(tag_name, type, tokens)
+ super
+ type.strip!
+ if %w(info danger warning).include?(type)
+ @type = type
+ else
+ puts "#{type} callout not supported. Defaulting to info"
+ @type = "info"
+ end
+ end
+
+ def render(context)
+ site = context.registers[:site]
+ converter = site.find_converter_instance(::Jekyll::Converters::Markdown)
+ output = converter.convert(super(context))
+ "<div class=\"bd-callout bd-callout-#{@type}\">#{output}</div>"
+ end
+ end
+ end
+end
+
+Liquid::Template.register_tag('callout', Jekyll::Tags::CalloutTag)