aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2008-12-11 21:48:30 -0500
committerRalph Amissah <ralph@amissah.com>2008-12-11 21:48:35 -0500
commit6149eecbced3c564088bab622a9491deb4f65646 (patch)
tree69cb3aa9297bd4b4b6d02a8365f892a40b3fe425 /lib/sisu
parenttex/pdf, bullet mark, workaround current absence from tex-live) (diff)
html tables, fix to structure and for (specified) column widths
Diffstat (limited to 'lib/sisu')
-rw-r--r--lib/sisu/v0/html_scroll.rb39
-rw-r--r--lib/sisu/v0/html_table.rb24
2 files changed, 33 insertions, 30 deletions
diff --git a/lib/sisu/v0/html_scroll.rb b/lib/sisu/v0/html_scroll.rb
index fb04f2f9..2f8bc1dd 100644
--- a/lib/sisu/v0/html_scroll.rb
+++ b/lib/sisu/v0/html_scroll.rb
@@ -112,33 +112,36 @@ module SiSU_HTML_scroll
txt_obj={:txt =>@sto.text}
format_txt_obj=SiSU_HTML_Format::Format_text_object.new(@md,txt_obj)
end
- case @sto.format
- when /^1:\S*?/; para=@sto.scroll_lev_para_ocn.heading_body1
- when /^2:\S*?/; para=@sto.scroll_lev_para_ocn.heading_body2
- when /^3:\S*?/; para=@sto.scroll_lev_para_ocn.heading_body3
- when /^4:\S+?/; para=@sto.scroll_lev_para_ocn.heading_body4 # work on see Split_text_object4
- when /^5:\S*?/; para=@sto.scroll_lev_para_ocn.heading_body5
- when /^6:\S*?/; para=@sto.scroll_lev_para_ocn.heading_body6
- when /^#{Mx[:gl_bullet]}/; para=@sto.scroll_lev_para_ocn.bullet
+ para=case @sto.format
+ when /^1:\S*?/; @sto.scroll_lev_para_ocn.heading_body1
+ when /^2:\S*?/; @sto.scroll_lev_para_ocn.heading_body2
+ when /^3:\S*?/; @sto.scroll_lev_para_ocn.heading_body3
+ when /^4:\S+?/; @sto.scroll_lev_para_ocn.heading_body4 # work on see Split_text_object4
+ when /^5:\S*?/; @sto.scroll_lev_para_ocn.heading_body5
+ when /^6:\S*?/; @sto.scroll_lev_para_ocn.heading_body6
+ when /^#{Mx[:gl_bullet]}/; @sto.scroll_lev_para_ocn.bullet
when /^#{Mx[:pa_o]}:i([1-9])#{Mx[:pa_c]}#{Mx[:gl_bullet]}/ #indent with bullet
format_txt_obj.gsub_body
- para=@sto.scroll_lev_para_ocn.format('li',"i#{$1}")
+ @sto.scroll_lev_para_ocn.format('li',"i#{$1}")
when /^i([1-9])$/ #indent
format_txt_obj.gsub_body
- para=@sto.scroll_lev_para_ocn.format('p',"i#{$1}")
- when /^center$/; para=@sto.scroll_lev_para_ocn.center
- when /^(?:b|bold)$/; para=@sto.scroll_lev_para_ocn.bold
- when /^(?:verse|group|alt)$/; para=@sto.scroll_lev_para_ocn.para
- when /^code$/; para=@sto.scroll_lev_para_ocn.code
+ @sto.scroll_lev_para_ocn.format('p',"i#{$1}")
+ when /^center$/; @sto.scroll_lev_para_ocn.center
+ when /^(?:b|bold)$/; @sto.scroll_lev_para_ocn.bold
+ when /^(?:verse|group|alt)$/; @sto.scroll_lev_para_ocn.para
+ when /^code$/; @sto.scroll_lev_para_ocn.code
when /ordinary/ # see whether u can improve
- if para !~/#{@vz.margin_txt_0}|#{@vz.margin_txt_1}|#{@vz.margin_txt_2}/
+ para=if para !~/#{@vz.margin_txt_0}|#{@vz.margin_txt_1}|#{@vz.margin_txt_2}/
format_txt_obj.gsub_body
- para=@sto.scroll_lev_para_ocn.para
- if para =~/#{Mx[:gr_o]}Th?.+/ # tables come as single block
+ para=if para =~/#{Mx[:gr_o]}Th?.+/ # tables come as single block
+ #@sto=nil
table=SiSU_HTML_shared::Table.new(para)
- para=table.table_split
+ table.table_split
+ else @sto.scroll_lev_para_ocn.para
end
+ else para
end
+ else para
end
elsif para =~/^#{Mx[:lv_o]}[1-9]:/ \
and para !~/#{Mx[:id_o]}~\d+;(?:[oh]|[0-6]:)\d+;\w\d+#{Mx[:id_c]}#{Mx[:id_c]}#@dp:#@dp#{Mx[:id_c]}$/
diff --git a/lib/sisu/v0/html_table.rb b/lib/sisu/v0/html_table.rb
index 7f28ed93..067a7dd9 100644
--- a/lib/sisu/v0/html_table.rb
+++ b/lib/sisu/v0/html_table.rb
@@ -109,16 +109,16 @@ module SiSU_HTML_table
tablefoot=[]
@@tablefoot.each {|x| tablefoot << ''}
@@tablefoot=[]
- if @parablock =~/#{Mx[:gr_o]}TZ#{Mx[:gr_c]}/; @parablock="</p>\n</div>" #table_end
+ if @parablock =~/#{Mx[:gr_o]}TZ#{Mx[:gr_c]}/; @parablock="</table></p>\n</div>" #table_end
end
end
if @@tablehead == 1
if @parablock =~/#{Mx[:tc_p]}#{Mx[:tc_p]}/u
- if @parablock =~/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u
- @parablock.gsub!(/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u,table_row($1,true))
+ while @parablock =~/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u
+ @parablock.sub!(/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u,table_row($1,true))
end
- if @parablock =~/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u
- @parablock.gsub!(/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u,table_cell($1,true))
+ while @parablock =~/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u
+ @parablock.sub!(/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u,table_cell($1,true))
end
if @parablock =~/#{Mx[:tc_c]}/
@parablock.gsub!(/#{Mx[:tc_c]}/,table_row_close(true))
@@ -127,11 +127,11 @@ module SiSU_HTML_table
end
@parablock
else
- if @parablock =~/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u
- @parablock.gsub!(/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u,table_row($1))
+ while @parablock =~/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u
+ @parablock.sub!(/#{Mx[:tc_o]}#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u,table_row($1))
end
- if @parablock =~/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u
- @parablock.gsub!(/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+?)#{Mx[:tc_p]}/u,table_cell($1))
+ while @parablock =~/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u
+ @parablock.sub!(/#{Mx[:tc_p]}#{Mx[:tc_p]}(\d+)#{Mx[:tc_p]}/u,table_cell($1))
end
if @parablock =~/#{Mx[:tc_c]}/
@parablock.gsub!(/#{Mx[:tc_c]}/,table_row_close)
@@ -141,12 +141,12 @@ module SiSU_HTML_table
@parablock
end
def table_split
- @new_content=[]
+ content=[]
@one.split(/\n/).each do |parablock|
table=Table.new("#{parablock}\n")
- @new_content << table.table
+ content << table.table
end
- @new_content.join
+ content.join
end
end
end