include VisualHelpers Nanoc::Filter.define(:handle_shortcodes) do |content, _params = {}| prefix = /:/ content .gsub(Regexp.new(prefix.source + /callout :(\w+), "(.+)", "(.+)"/.source)) { callout($2, $3, $1) } .gsub(Regexp.new(prefix.source + /deliverable (.+)$/.source)) { deliverable($1) } .gsub(Regexp.new(prefix.source + /discussion_box "(.+)"/.source)) { discussion_box($1) } .gsub(Regexp.new(prefix.source + /h1 (.+)$/.source), "# \\1 ") .gsub(Regexp.new(prefix.source + /h2 (.+)$/.source), "## \\1 ") .gsub(Regexp.new(prefix.source + /h3 (.+)$/.source), "### \\1 ") .gsub(Regexp.new(prefix.source + /h4 (.+)$/.source), "#### \\1 ") .gsub(Regexp.new(prefix.source + /h5 (.+)$/.source)) { "
#{$1}
" } .gsub(Regexp.new(prefix.source + /image :(\w+)$/.source)) { "" } .gsub(Regexp.new(prefix.source + /image :(\w+), :(\w+)$/.source)) { "" } .gsub(Regexp.new(prefix.source + /lecture_end/.source), end_of_lecture) .gsub(Regexp.new(prefix.source + /li (.+)$/.source)) { "
  • #{$1}
  • " } .gsub(Regexp.new(prefix.source + /partbadge/.source), partbadge) .gsub(Regexp.new(prefix.source + /pdfbadge/.source), pdfbadge) .gsub(Regexp.new(prefix.source + /section_link :(\w+), :(\w+)/.source)) { link_to_section($1, $2) } .gsub(Regexp.new(prefix.source + /section_include :(\w+), :(\w+)/.source)) { include_from_section($1, $2) } .gsub(Regexp.new(prefix.source + /slide_bigtitle (.+)$/.source), "\n\n## \\1") .gsub(Regexp.new(prefix.source + /slide_break/.source), "") .gsub(Regexp.new(prefix.source + /slide_subtitle (.+)$/.source), "\n\n#### \\1") .gsub(Regexp.new(prefix.source + /slide_title (.+)$/.source), "\n\n### \\1") .gsub(Regexp.new(prefix.source + /source_begin :(.+)$/.source)) { source_begin( ":language-"+$1) } .gsub(Regexp.new(prefix.source + /source_end/.source), source_end) .gsub(Regexp.new(prefix.source + /team_deliverable (.+)$/.source)) { team_deliverable($1) } .gsub(Regexp.new(prefix.source + /teambadge/.source), teambadge) .gsub(Regexp.new(prefix.source + /topic_include :(\w+)$/.source)) { include_topic($1) } .gsub(Regexp.new(prefix.source + /topic_link :(\w+)/.source)) { link_to_topic($1) } .gsub(Regexp.new(prefix.source + /ul_begin :(\w+)/.source)) { "