diff options
Diffstat (limited to 'lib/sisu/v3dv/dal_substitutions_and_insertions.rb')
-rw-r--r-- | lib/sisu/v3dv/dal_substitutions_and_insertions.rb | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/lib/sisu/v3dv/dal_substitutions_and_insertions.rb b/lib/sisu/v3dv/dal_substitutions_and_insertions.rb index b81a91e2..2ae365be 100644 --- a/lib/sisu/v3dv/dal_substitutions_and_insertions.rb +++ b/lib/sisu/v3dv/dal_substitutions_and_insertions.rb @@ -66,12 +66,12 @@ module SiSU_DAL_SubstituteAndInsert data=@data data_expand=[] if data[0] =~ /^#!\s*(?:\/usr\/bin\/env sisu|\/usr\/bin\/sisu)/ # remove bang from top #! (however file is stripped, so will be removed provided no content precedes it) - data[0].gsub!(/^#!\s*\/usr\/bin\/sisu/,'') - data[0].gsub!(/^#!\s*\/usr\/bin\/env sisu/,'') + data[0]=data[0].gsub(/^#!\s*\/usr\/bin\/sisu/,''). + gsub(/^#!\s*\/usr\/bin\/env sisu/,'') end if data[0] =~ /^(SiSU\s+[\d.]*|sisu-[\d.]+)$/ # SiSU identifier - data[0].gsub!(/^(SiSU\s*[\d.]*)$/,'% \1') - data[0].gsub!(/^(sisu-[\d.]+)$/,'% \1') + data[0]=data[0].gsub(/^(SiSU\s*[\d.]*)$/,'% \1'). + gsub(/^(sisu-[\d.]+)$/,'% \1') end data.each do |para| if para =~/<:(insert\d+)!?>/ \ @@ -132,22 +132,24 @@ module SiSU_DAL_SubstituteAndInsert para.each {|x| data_expand << x } else data_expand << para end - data_expand.flatten! - data_expand.compact! + data_expand=data_expand.flatten.compact end + data_new=[] data_expand.each do |para| para=if @md.markup_version.determined >= 0.38 SiSU_DAL_DocumentStructureExtract::Structure.new(@md,para).structure_markup_normalize else SiSU_DAL_DocumentStructureExtract::Structure.new(@md,para).structure_marks end - para.gsub!(/^(:?A~)\s*$/,'\1~ @title @author') #conditional header - para.gsub!(/^((?:[1-9]|:?[A-C])~\S*)\s*$/,'\1~ [Note: heading marker::required title missing]~#') #conditional header for incorporated document 2004w12 + para=para.gsub(/^(:?A~)\s*$/,'\1~ @title @author'). #conditional header + gsub(/^((?:[1-9]|:?[A-C])~\S*)\s*$/,'\1~ [Note: heading marker::required title missing]~#') #conditional header for incorporated document 2004w12 if para =~/^@\S+?:/ - para.gsub!(/^@(\S+?):(\s+|$)/,"#{Mx[:meta_o]}\\1#{Mx[:meta_c]}\\2") - para.gsub!(/^@(\S+?):([+-])(\s+|$)/,"#{Mx[:meta_o]}\\1\\2#{Mx[:meta_c]}\\3") + para=para.gsub(/^@(\S+?):(\s+|$)/,"#{Mx[:meta_o]}\\1#{Mx[:meta_c]}\\2"). + gsub(/^@(\S+?):([+-])(\s+|$)/,"#{Mx[:meta_o]}\\1\\2#{Mx[:meta_c]}\\3") end + data_new << para end + data_new end end end |