aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v0/plaintext.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/v0/plaintext.rb')
-rw-r--r--lib/sisu/v0/plaintext.rb47
1 files changed, 13 insertions, 34 deletions
diff --git a/lib/sisu/v0/plaintext.rb b/lib/sisu/v0/plaintext.rb
index b89a6252..754e366d 100644
--- a/lib/sisu/v0/plaintext.rb
+++ b/lib/sisu/v0/plaintext.rb
@@ -66,7 +66,7 @@ module SiSU_Plaintext
include SiSU_Param
include SiSU_Viz
require "#{SiSU_lib}/plaintext_format"
- include Format
+ include SiSU_Plaintext_format
require "#{SiSU_lib}/shared_txt"
require "#{SiSU_lib}/shared_structure"
pwd=Dir.pwd
@@ -275,6 +275,7 @@ WOK
table_message='[table omitted, see other document formats]'
fix=[]
data.each do |para|
+ para.gsub!(/#{Mx[:id_o]}~0;0:0;x\d+#{Mx[:id_c]}/,'') # if book index? remove
para.gsub!(/#{Mx[:gr_o]}Th?#{Mx[:tc_p]}.+/um,"#@br#{table_message}")
para.gsub!(/.+?#{Mx[:gl_o]}-##{Mx[:gl_c]}/,'') # remove dummy headings (used by html) #check
para.gsub!(/#{Mx[:gl_bullet]}\s*/,'* ') # bullet markup, marked down
@@ -287,7 +288,7 @@ WOK
para.gsub!(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'"\1"')
para.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'-\1-')
unless para =~/#{Mx[:gr_o]}code#{Mx[:gr_c]}/
- para.gsub!(/\{(.+?)\}((?:https?|file|ftp):\/\/\S+|image)/,'\1 [link:] \2')
+ para.gsub!(/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}((?:https?|file|ftp):\/\/\S+|image)/,'\1 [link:] \2')
para.gsub!(/(^|#{Mx[:gl_c]}|\s)((?:https?|file|ftp):\/\/\S+?\.[^'"><\s]+?)([.,]?(?:\s|$))/,"\\1#{@url_brace.txt_open}\\2#{@url_brace.txt_close}\\3")
para.gsub!(/_((?:https?|file|ftp):\/\/\S+)/,'\1')
extract_endnotes(para)
@@ -321,8 +322,8 @@ WOK
para.gsub!(/(^|#{Mx[:gl_c]}|\s)[_\\]((?:https?|file|ftp):\/\/\S+?\.[^'"><\s]+?)([.,]?(?:\s|$))/,'\1\2\3')
para.gsub!(/<a href=".+?">(.+?)<\/a>/m,'\1')
para.gsub!(/#{Mx[:mk_o]}:name#(\S+?)#{Mx[:mk_c]}/,'') # remove name links
- para.gsub!(/&nbsp;/,' ') # decide on
- para.gsub!(/(?:^|[^_\\])\{(\S+?\.(?:png|jpg|gif)) .+?\}(?:(?:https?|file|ftp):\/\/\S+|image)/,' [ \1 ]') #"[ #{dir.url.images_local}\/\\1 ]")
+ para.gsub!(/&nbsp;|#{Mx[:nbsp]}/,' ') # decide on
+ para.gsub!(/(?:^|[^_\\])#{Mx[:lnk_o]}(\S+?\.(?:png|jpg|gif)) .+?#{Mx[:lnk_c]}(?:(?:https?|file|ftp):\/\/\S+|image)/,' [ \1 ]') #"[ #{dir.url.images_local}\/\\1 ]")
para.gsub!(/(?:^|[^_\\])\{\s*\S+?\.(?:png|jpg|gif)\s+.+?"(.*?)"\s*\}\S+/,'[image: "\1"]')
#para.gsub!(/^\{\S+?\.(?:png|jpg|gif)\s+.+?"(.*?)"\s*\}\S+/,'[image: "\1"]')
wordlist=para.scan(/\S+/)
@@ -334,7 +335,7 @@ WOK
if para !~/(^#{Rx[:meta]}|#{Mx[:br_eof]}|#{Mx[:br_endnotes]})/
if para =~@regx #/.+?<~\d+;\w\d+;\w\d+>.*/ #watch change
paranum=para[@regx,3]
- @p_num=Format::Paragraph_number.new(paranum)
+ @p_num=SiSU_Plaintext_format::Paragraph_number.new(paranum)
end
@sto=SiSU_Structure::Split_text_object.new(@md,para).txt
### problem in scroll, it appears tables are getting paragraph numbers
@@ -360,25 +361,6 @@ WOK
when /^(6):(\S*?)/
plaintext_structure(para,$1,@sto.ocn,$2)
@sto.lev_para_ocn.heading_body6
- #when /^(i1)$/
- # #formatMono.gsubBody
- # #para=@sto[:lev_para_ocn].scrIndent1
- #when /^(i2)$/
- # formatMono.gsubBody
- # para=@sto[:lev_para_ocn].scrIndent2
- #when /^(center)$/
- # para.gsub!(/(.+)/,
- # %{<center>(\\1)</center>})
- # para=@sto[:lev_para_ocn].scrPara
- #when /^(b|bold)$/
- # para.gsub!(/(.+)/,
- # %{<b>(\\1)</b>})
- # para=@sto[:lev_para_ocn].scrPara
- #when /null/ # see whether u can improve
- # if (para !~/#{@margin.txt_0}|#{@margin.txt_1}|#{@margin.txt_2}/)
- # #formatMono.gsubBody
- # #para=@sto[:lev_para_ocn].scrPara
- # end
else
plaintext_structure(para,nil,nil,nil) #watch may be problematic
para
@@ -397,28 +379,25 @@ WOK
#@plaintext[:owner_details]=formatMono.bold_para
#para=''
elsif para =~/(#{Mx[:tc_p]}|#{Mx[:gr_o]}Th?)/u #tables ! check
- elsif para =~/(.*)<!#!>(.*)/
- one,two=$1,$2
- format_text=Format_text_object.new(one,two)
- para=format_text.seg_no_paranum
end
para='' if (para =~/<a name="n\d+">/ \
and para =~/^(-\{{2}~\d+|<!e[:_]\d+!>)/) # -endnote
case para
when /#{Mx[:pa_o]}:i[1-9]#{Mx[:pa_c]}/
if para =~/.*<:#>.*$/m
- format_text=Format_text_object.new(para,'')
+ txt_obj={:txt =>para}
+ format_text=Format_text_object.new(@md,txt_obj)
para=format_text.scr_indent_one_no_paranum
end
end
if para !~/#{@vz.margin_txt_0}|#{@vz.margin_txt_1}|#{@vz.margin_txt_2}/
# i don't get the condition for no paranum
end
- if para =~/<:center>/
- one,two=/(.*)<:center>(.*)/.match(para)[1,2]
- format_text=Format_text_object.new(one,two)
- para=format_text.center
- end
+ #if para =~/<:center>/
+ # one,two=/(.*)<:center>(.*)/.match(para)[1,2]
+ # format_text=Format_text_object.new(one,two)
+ # para=format_text.center
+ #end
para.gsub!(/#{Mx[:id_o]}.+?#{Mx[:id_c]}/,' ') if para ## Clean Prepared Text
para.gsub!(/<!.+!>/,' ') if para ## Clean Prepared Text
para.gsub!(/<:\S+>/,' ') if para ## Clean Prepared Text