Class: SiSU_HTML_MiniToc::TocMini

Inherits:
Object
  • Object
show all
Defined in:
lib/sisu/html_minitoc.rb

Constant Summary collapse

@@seg_mini =
nil
@@seg_url =
''
@@firstseg =
nil

Instance Method Summary collapse

Constructor Details

#initialize(md, data) ⇒ TocMini

Returns a new instance of TocMini.



62
63
64
65
66
# File 'lib/sisu/html_minitoc.rb', line 62

def initialize(md,data)
  @md,@data=md,data
  @pat_strip_heading_name=/<a name="h?\d.*?">(.+?)<\/a>/
  @tell=SiSU_Screen::Ansi.new(@md.opt.act[:color_state][:set]) if @md
end

Instance Method Details

#songsheetObject



67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/sisu/html_minitoc.rb', line 67

def songsheet
  if (@md.opt.act[:verbose][:set]==:on \
  || @md.opt.act[:verbose_plus][:set]==:on \
  || @md.opt.act[:maintenance][:set]==:on)
    SiSU_Screen::Ansi.new(@md.opt.act[:color_state][:set],'Toc').txt_grey
  end
  toc=nil
  @toc=[]
  @data.each do |txt|
    if txt.is ==:heading \
    || txt.is ==:heading_insert
      txt.obj=txt.obj.gsub(/(?:#{Mx[:en_a_o]}|#{Mx[:en_b_o]}).+?(?:#{Mx[:en_a_c]}|#{Mx[:en_b_c]})/m,''). #remove endnotes from toc
        gsub(/<a name="-\d+" href="#_\d+">&nbsp;<sup>\d+<\/sup>&nbsp;<\/a>/,'').
        gsub(@pat_strip_heading_name,'\1')
        #gsub(/(.*?)<a name="(\d+)"><\/a>(.*)/,'\1') #2002w42 altered gsub - problematic? - suspect
      toc=case txt.ln
      when 0 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_0
      when 1 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_1
      when 2 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_2
      when 3 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_3
      when 4 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_4
      when 5 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_5
      when 6 then SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_6
      else
      end
      @toc << toc
    end
  end
  @toc
end