diff options
Diffstat (limited to 'lib/sisu/v3/html_minitoc.rb')
-rw-r--r-- | lib/sisu/v3/html_minitoc.rb | 73 |
1 files changed, 39 insertions, 34 deletions
diff --git a/lib/sisu/v3/html_minitoc.rb b/lib/sisu/v3/html_minitoc.rb index fef0bb3f..729eee50 100644 --- a/lib/sisu/v3/html_minitoc.rb +++ b/lib/sisu/v3/html_minitoc.rb @@ -57,10 +57,10 @@ ** Description: system environment, resource control and configuration details =end - module SiSU_HTML_minitoc + module SiSU_HTML_MiniToc require_relative 'html_tune' # html_tune.rb include SiSU_HTML_Tune - class Toc_mini + class TocMini @@seg_mini=nil @@seg_url='' @@firstseg=nil @@ -74,18 +74,19 @@ toc=nil @toc=[] @data.each do |txt| - if (txt.is =='heading' or txt.is =='heading_insert') - txt.obj.gsub!(/(?:#{Mx[:en_a_o]}|#{Mx[:en_b_o]}).+?(?:#{Mx[:en_a_c]}|#{Mx[:en_b_c]})/m,'') #remove endnotes from toc - txt.obj.gsub!(/<a name="-\d+" href="#_\d+"> <sup>\d+<\/sup> <\/a>/,'') - txt.obj.gsub!(@pat_strip_heading_name,'\1') - txt.obj.gsub(/(.*?)<a name="(\d+)"><\/a>(.*)/,'\1') #2002w42 altered gsub! - problematic? - suspect + 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+"> <sup>\d+<\/sup> <\/a>/,''). + gsub(@pat_strip_heading_name,'\1') + #gsub(/(.*?)<a name="(\d+)"><\/a>(.*)/,'\1') #2002w42 altered gsub - problematic? - suspect toc=case txt.ln - when 1; Toc_mini.new(@md,txt).level_1 - when 2; Toc_mini.new(@md,txt).level_2 - when 3; Toc_mini.new(@md,txt).level_3 - when 4; Toc_mini.new(@md,txt).level_4 - when 5; Toc_mini.new(@md,txt).level_5 - when 6; Toc_mini.new(@md,txt).level_6 + when 1; SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_1 + when 2; SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_2 + when 3; SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_3 + when 4; SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_4 + when 5; SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_5 + when 6; SiSU_HTML_MiniToc::TocMini.new(@md,txt).level_6 else end @toc << toc @@ -95,22 +96,23 @@ end protected def level_concordance - format_head_toc=SiSU_HTML_Format::Head_toc.new(@md) + format_head_toc=SiSU_HTML_Format::HeadToc.new(@md) @@seg_mini << format_head_toc.mini_seg_concordance end def level_metadata - format_head_toc=SiSU_HTML_Format::Head_toc.new(@md) + format_head_toc=SiSU_HTML_Format::HeadToc.new(@md) @@seg_mini << format_head_toc.mini_seg_metadata end def level_word_index - format_head_toc=SiSU_HTML_Format::Head_toc.new(@d0c) + format_head_toc=SiSU_HTML_Format::HeadToc.new(@d0c) @@seg_mini << format_head_toc.mini_concordance end def level_1 txt=@data - if (txt.is =='heading' or txt.is =='heading_insert') \ - and txt.ocn !=0 - txt.obj.gsub!(@pat_strip_heading_name,'\1') + if (txt.is ==:heading \ + || txt.is ==:heading_insert) \ + && txt.ocn !=0 + txt.obj=txt.obj.gsub(@pat_strip_heading_name,'\1') end title=unless txt.obj =~/Document Information/; txt.obj else @@ -119,7 +121,7 @@ end toc={} txt_obj={ txt: title } - format_toc=SiSU_HTML_Format::Format_toc.new(@md,txt_obj) + format_toc=SiSU_HTML_Format::FormatToc.new(@md,txt_obj) toc_mini=if txt.name =~/^meta/ and txt.obj=~/Document Information/ format_toc.mini_tail else format_toc.mini_lev1 @@ -128,19 +130,20 @@ end def level_2 txt=@data - if (txt.is =='heading' or txt.is =='heading_insert') \ - and txt.ocn !=0 - txt.obj.gsub!(@pat_strip_heading_name,'\1') + if (txt.is ==:heading \ + || txt.is ==:heading_insert) \ + && txt.ocn !=0 + txt.obj=txt.obj.gsub(@pat_strip_heading_name,'\1') end txt_obj={ txt: txt.obj } - format_toc=SiSU_HTML_Format::Format_toc.new(@md,txt_obj) + format_toc=SiSU_HTML_Format::FormatToc.new(@md,txt_obj) toc_mini=format_toc.mini_lev2 toc_mini end def level_3 txt=@data txt_obj={ txt: txt.obj } - format_toc=SiSU_HTML_Format::Format_toc.new(@md,txt_obj) + format_toc=SiSU_HTML_Format::FormatToc.new(@md,txt_obj) toc_mini=format_toc.mini_lev3 toc_mini end @@ -158,38 +161,40 @@ %{target="_top">\\1 \\2</a> }) end txt_obj={ txt: seg_link } - format_toc=SiSU_HTML_Format::Format_toc.new(@md,txt_obj) + format_toc=SiSU_HTML_Format::FormatToc.new(@md,txt_obj) toc_mini=format_toc.mini_lev4 toc_mini end end def level_5 txt=@data - if (txt.is =='heading' or txt.is =='heading_insert') \ - and txt.ocn !=0 - txt.obj.gsub!(@pat_strip_heading_name,'\1') + if (txt.is ==:heading \ + || txt.is ==:heading_insert) \ + && txt.ocn !=0 + txt.obj=txt.obj.gsub(@pat_strip_heading_name,'\1') end toc={} lnk_n_txt=%{ <a href="#{@@seg_url}#{@md.lang_code_insert}#{Sfx[:html]}##{txt.ocn}"> #{txt.obj} </a>} txt_obj={ txt: lnk_n_txt } - format_toc=SiSU_HTML_Format::Format_toc.new(@md,txt_obj) + format_toc=SiSU_HTML_Format::FormatToc.new(@md,txt_obj) toc_mini=format_toc.mini_lev5 toc_mini end def level_6 txt=@data - if (txt.is =='heading' or txt.is =='heading_insert') \ - and txt.ocn !=0 - txt.obj.gsub!(@pat_strip_heading_name,'\1') + if (txt.is ==:heading \ + || txt.is ==:heading_insert) \ + && txt.ocn !=0 + txt.obj=txt.obj.gsub(@pat_strip_heading_name,'\1') end toc={} lnk_n_txt=%{ <a href="#{@@seg_url}#{@md.lang_code_insert}#{Sfx[:html]}##{txt.ocn}"> #{txt.obj} </a>} txt_obj={ txt: lnk_n_txt } - format_toc=SiSU_HTML_Format::Format_toc.new(@md,txt_obj) + format_toc=SiSU_HTML_Format::FormatToc.new(@md,txt_obj) toc_mini=format_toc.mini_lev6 toc_mini end |