Class: RDoc::Markup::ToLabel
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
| Class Chain: 
          self,
           Formatter | |
| Instance Chain: 
          self,
           Formatter | |
| Inherits: | RDoc::Markup::Formatter 
 | 
| Defined in: | lib/rdoc/markup/to_label.rb | 
Overview
Creates HTML-safe labels suitable for use in id attributes. Tidylinks are converted to their link part and cross-reference links have the suppression marks removed (\SomeClass is converted to SomeClass).
Class Method Summary
- 
    
      .new(markup = nil)  ⇒ ToLabel 
    
    constructor
    Creates a new formatter that will output HTML-safe labels. 
Formatter - Inherited
| .gen_relative_url | Converts a target url to one that is relative to a given path. | 
| .new | Creates a new  | 
Instance Attribute Summary
Instance Method Summary
- #accept_blank_line
- #accept_block_quote
- #accept_heading
- #accept_list_end
- #accept_list_item_end
- #accept_list_item_start
- #accept_list_start
- #accept_paragraph
- #accept_raw
- #accept_rule
- #accept_verbatim
- 
    
      #convert(text)  
    
    Converts textto an HTML-safe label.
- #end_accepting
- 
    
      #handle_regexp_CROSSREF(target)  
    
    Converts the CROSSREF targetto plain text, removing the suppression marker, if any.
- #handle_regexp_HARD_BREAK
- 
    
      #handle_regexp_TIDYLINK(target)  
    
    Converts the TIDYLINK targetto just the text part.
- #start_accepting
Formatter - Inherited
| #accept_document | Adds  | 
| #add_regexp_handling_RDOCLINK | Adds a regexp handling for links of the form rdoc-…: | 
| #add_regexp_handling_TIDYLINK | Adds a regexp handling for links of the form  | 
| #add_tag | Add a new set of tags for an attribute. | 
| #annotate | Allows  | 
| #convert | Marks up  | 
| #convert_flow | Converts flow items  | 
| #convert_regexp_handling | Converts added regexp handlings. | 
| #convert_string | Converts a string to be fancier if desired. | 
| #each_attr_tag, | |
| #ignore | Use ignore in your subclass to ignore the content of a node. | 
| #off_tags | Turns off tags for  | 
| #on_tags | Turns on tags for  | 
| #parse_url | Extracts and a scheme, url and an anchor id from  | 
| #tt? | Is  | 
| #tt_tag? | |
Constructor Details
    .new(markup = nil)  ⇒ ToLabel 
  
Creates a new formatter that will output HTML-safe labels
# File 'lib/rdoc/markup/to_label.rb', line 16
def initialize(markup = nil) super nil, markup @markup.add_regexp_handling RDoc::CrossReference::CROSSREF_REGEXP, :CROSSREF @markup.add_regexp_handling(/(((\{.*?\})|\b\S?)\[\S?\])/, :TIDYLINK) add_tag :BOLD, '', '' add_tag :TT, '', '' add_tag :EM, '', '' @res = [] end
Instance Attribute Details
#res (readonly)
# File 'lib/rdoc/markup/to_label.rb', line 11
attr_reader :res # :nodoc:
Instance Method Details
#accept_blank_line
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 59
alias accept_blank_line ignore
#accept_block_quote
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 60
alias accept_block_quote ignore
#accept_heading
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 61
alias accept_heading ignore
#accept_list_end
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 62
alias accept_list_end ignore
#accept_list_item_end
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 63
alias accept_list_item_end ignore
#accept_list_item_start
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 64
alias accept_list_item_start ignore
#accept_list_start
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 65
alias accept_list_start ignore
#accept_paragraph
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 66
alias accept_paragraph ignore
#accept_raw
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 67
alias accept_raw ignore
#accept_rule
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 68
alias accept_rule ignore
#accept_verbatim
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 69
alias accept_verbatim ignore
#convert(text)
Converts text to an HTML-safe label
# File 'lib/rdoc/markup/to_label.rb', line 32
def convert(text) label = convert_flow @am.flow text CGI.escape(label).gsub('%', '-').sub(/^-/, '') end
#end_accepting
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 70
alias end_accepting ignore
#handle_regexp_CROSSREF(target)
Converts the CROSSREF target to plain text, removing the suppression marker, if any
# File 'lib/rdoc/markup/to_label.rb', line 42
def handle_regexp_CROSSREF(target) text = target.text text.sub(/^\\/, '') end
#handle_regexp_HARD_BREAK
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 71
alias handle_regexp_HARD_BREAK ignore
#handle_regexp_TIDYLINK(target)
Converts the TIDYLINK target to just the text part
# File 'lib/rdoc/markup/to_label.rb', line 51
def handle_regexp_TIDYLINK(target) text = target.text return text unless text =~ /\{(.*?)\}\[(.*?)\]/ or text =~ /(\S+)\[(.*?)\]/ $1 end
#start_accepting
[ GitHub ]# File 'lib/rdoc/markup/to_label.rb', line 72
alias start_accepting ignore