Class MiscPlugins::SyntaxHighlighter
In: lib/webgen/plugins/miscplugins/syntax_highlighter.rb
Parent: Webgen::Plugin
Webgen::Plugin RenderedFilesPlugin SmileyReplacer SyntaxHighlighter lib/webgen/plugins/miscplugins/smileyreplacer.rb lib/webgen/plugins/miscplugins/syntax_highlighter.rb lib/webgen/plugins/miscplugins/rendered_files.rb MiscPlugins dot/m_39_0.png

Methods

Public Class methods

Returns all available syntax highlighting languages.

[Source]

    # File lib/webgen/plugins/miscplugins/syntax_highlighter.rb, line 62
62:     def self.available_languages
63:       if Object.const_defined?( :CodeRay )
64:         CodeRay::Scanners.list
65:       else
66:         []
67:       end
68:     end

[Source]

    # File lib/webgen/plugins/miscplugins/syntax_highlighter.rb, line 44
44:     def initialize( plugin_manager )
45:       super
46:       @sl_available = plugin_manager.optional_part( 'syntax-highlighting' )[:loaded]
47:       if @sl_available
48:         @plugin_manager['Core/ResourceManager'].append_data( 'webgen-css', CodeRay::Encoders[:html]::CSS.new.stylesheet )
49:       end
50:     end

Public Instance methods

Highlights the given content in language lang.

[Source]

    # File lib/webgen/plugins/miscplugins/syntax_highlighter.rb, line 53
53:     def highlight( content, lang )
54:       if @sl_available
55:         CodeRay.scan( content, (lang.kind_of?( String ) ? lang.to_sym : lang ) ).html( :wrap => :div, :line_numbers => :inline )
56:       else
57:         content
58:       end
59:     end

[Validate]