all repos — h3rald @ e499554c01e9b2c4bbb2483a83f726f7e22693cc

The sources of https://h3rald.com

lib/highlighter.rb

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
# Monkey patch Nanoc::Helpers::Filtering
require 'coderay'

module Nanoc3::Helpers::Filtering

	def highlight(syntax, &block)
		data = capture(&block)
		# Reconvert <% %>
		data.gsub! /&lt;%/, '<%'
		data.gsub! /%&gt;/, '%>'
		filtered_data = CodeRay.scan(data.strip, syntax).div(:line_numbers => :inline, :tab_width => 2, :css =>:class)
		filtered_data = "<notextile>\n"+filtered_data+"\n</notextile>"
		buffer = eval('_erbout', block.binding)
		buffer << filtered_data
	end

end

include Nanoc3::Helpers::Filtering