Module: Octopress::CodeHighlighter

Defined in:
lib/octopress-code-highlighter.rb,
lib/octopress-code-highlighter/cache.rb,
lib/octopress-code-highlighter/version.rb,
lib/octopress-code-highlighter/renderer.rb,
lib/octopress-code-highlighter/options_parser.rb

Defined Under Namespace

Classes: Cache, OptionsParser, Renderer

Constant Summary collapse

DEFAULTS =
{
  lang: 'plain',
  linenos: true,
  marks: [],
  start: 1
}
VERSION =
"3.1.0"

Class Method Summary collapse

Class Method Details

.clean_markup(input) ⇒ Object



33
34
35
# File 'lib/octopress-code-highlighter.rb', line 33

def self.clean_markup(input)
  OptionsParser.new(input).clean_markup
end

.highlight(code, options = {}) ⇒ Object



21
22
23
# File 'lib/octopress-code-highlighter.rb', line 21

def self.highlight(code, options={})
  Renderer.new(code, options).highlight
end

.highlight_failed(error, syntax, markup, code, file = nil) ⇒ Object

Raises:

  • (ArgumentError)


37
38
39
40
41
42
43
44
45
46
# File 'lib/octopress-code-highlighter.rb', line 37

def self.highlight_failed(error, syntax, markup, code, file = nil)
  code_snippet = code.split("\n")[0..9].map{|l| "    #{l}" }.join("\n")
  fail_message  = "\nError while parsing the following markup#{" in #{file}" if file}:\n\n".red
  fail_message += "    #{markup}\n#{code_snippet}\n"
  fail_message += "#{"    ..." if code.split("\n").size > 10}\n"
  fail_message += "\nValid Syntax:\n\n#{syntax}\n".yellow
  fail_message += "\nError:\n\n#{error.message}".red
  $stderr.puts fail_message.chomp
  raise ArgumentError
end

.parse_markup(input, defaults = {}) ⇒ Object



29
30
31
# File 'lib/octopress-code-highlighter.rb', line 29

def self.parse_markup(input, defaults={})
  OptionsParser.new(input).parse_markup(defaults)
end

.read_cache(code, options = {}) ⇒ Object



25
26
27
# File 'lib/octopress-code-highlighter.rb', line 25

def self.read_cache(code, options={})
  Cache.read_cache(code, options)
end