Class: Rouge::Lexers::Haml
- Inherits:
-
RegexLexer
- Object
- Rouge::Lexer
- RegexLexer
- Rouge::Lexers::Haml
- Includes:
- Indentation
- Defined in:
- lib/rouge/lexers/haml.rb
Overview
A lexer for the Haml templating system for Ruby.
Constant Summary
Constants inherited from RegexLexer
Constants included from Token::Tokens
Token::Tokens::Num, Token::Tokens::Str
Instance Attribute Summary collapse
-
#filters ⇒ Object
readonly
Returns the value of attribute filters.
Attributes inherited from Rouge::Lexer
Instance Method Summary collapse
- #html ⇒ Object
-
#initialize(opts = {}) ⇒ Haml
constructor
A new instance of Haml.
- #ruby ⇒ Object
- #ruby!(state) ⇒ Object
Methods included from Indentation
#indentation, #reset!, #starts_block
Methods inherited from RegexLexer
append, #delegate, get_state, #get_state, #goto, #group, #groups, #in_state?, #pop!, prepend, #push, #recurse, replace_state, #reset!, #reset_stack, #stack, start, start_procs, #state, state, #state?, state_definitions, states, #step, #stream_tokens, #token
Methods inherited from Rouge::Lexer
aliases, all, #as_bool, #as_lexer, #as_list, #as_string, #as_token, assert_utf8!, #bool_option, debug_enabled?, demo, demo_file, desc, detect?, disable_debug!, enable_debug!, filenames, find, find_fancy, guess, guess_by_filename, guess_by_mimetype, guess_by_source, guesses, #hash_option, lex, #lex, #lexer_option, #list_option, mimetypes, option, option_docs, #reset!, #stream_tokens, #string_option, tag, #tag, title, #token_option
Methods included from Token::Tokens
Constructor Details
#initialize(opts = {}) ⇒ Haml
Returns a new instance of Haml.
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/rouge/lexers/haml.rb', line 25 def initialize(opts={}) super default_filters = { 'javascript' => Javascript.new(), 'css' => CSS.new(), 'ruby' => ruby, 'erb' => ERB.new(), 'markdown' => Markdown.new(), 'sass' => Sass.new(), # TODO # 'textile' => Textile.new(options), # 'maruku' => Maruku.new(options), } @filters = hash_option(:filters, default_filters) do |v| as_lexer(v) || PlainText.new(@options) end end |
Instance Attribute Details
#filters ⇒ Object (readonly)
Returns the value of attribute filters.
20 21 22 |
# File 'lib/rouge/lexers/haml.rb', line 20 def filters @filters end |
Instance Method Details
#html ⇒ Object
49 50 51 |
# File 'lib/rouge/lexers/haml.rb', line 49 def html @html ||= HTML.new(@options) end |
#ruby ⇒ Object
45 46 47 |
# File 'lib/rouge/lexers/haml.rb', line 45 def ruby @ruby ||= Ruby.new(@options) end |
#ruby!(state) ⇒ Object
53 54 55 56 |
# File 'lib/rouge/lexers/haml.rb', line 53 def ruby!(state) ruby.reset! push state end |