From 7372f56054259457f77c64cbdb34e736531cfc0e Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Sat, 4 Jul 2009 11:57:29 -0400 Subject: move lib to version 1 directory, (lib/sisu/v1) and make related changes --- lib/sisu/v0/dal_doc_str_code.rb | 187 ---------------------------------------- 1 file changed, 187 deletions(-) delete mode 100644 lib/sisu/v0/dal_doc_str_code.rb (limited to 'lib/sisu/v0/dal_doc_str_code.rb') diff --git a/lib/sisu/v0/dal_doc_str_code.rb b/lib/sisu/v0/dal_doc_str_code.rb deleted file mode 100644 index 02643fa3..00000000 --- a/lib/sisu/v0/dal_doc_str_code.rb +++ /dev/null @@ -1,187 +0,0 @@ -# coding: utf-8 -=begin - - * Name: SiSU - - * Description: a framework for document structuring, publishing and search - - * Author: Ralph Amissah - - * Copyright: (C) 1997 - 2009 Ralph Amissah All Rights Reserved. - - * License: GPL 3 or later: - - SiSU, a framework for document structuring, publishing and search - - Copyright (C) Ralph Amissah - - This program is free software: you can redistribute it and/or modify it - under the terms of the GNU General Public License as published by the Free - Software Foundation, either version 3 of the License, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, but WITHOUT - ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for - more details. - - You should have received a copy of the GNU General Public License along with - this program. If not, see . - - If you have Internet connection, the latest version of the GPL should be - available at these locations: - - - - - - - - * SiSU uses: - * Standard SiSU markup syntax, - * Standard SiSU meta-markup syntax, and the - * Standard SiSU object citation numbering and system - - * Hompages: - - - - * Download: - - - * Ralph Amissah - - - - ** Description: document abstraction - -=end -module SiSU_document_structure_code - class Instantiate < SiSU_Param::Parameters::Instructions - @@flag={} #Beware!! - def initialize - @@flag['table_to']=false - @@counter=@@column=@@columns=0 - @@line_mode='' - end - end - class Code - @@flag={} #Beware!! - def initialize(md,data) - @md,@data=md,data - Instantiate.new - end - def code - data=@data - tuned_file=[] - @tuned_group=[] - @@counter=0 - @verse_count=0 - data.each do |para| - para.gsub!(/(#{Mx[:gr_o]}(?:code|verse|alt|group)#{Mx[:gr_c]})\s/,'\1') #double check - para.gsub!(/(?:\n\s*\n)+/m,"\n") unless @@flag['code'] - if para =~/^code\{/ and not @@flag['code'] - @@flag['code']=true - @@counter=1 - para.gsub!(/^code\{.*/,"#{Mx[:gr_o]}code#{Mx[:gr_c]}") - elsif para =~/^(?:poem)\{/ \ - and not @@flag['code'] - @@flag['poem']=true - para.gsub!(/^(poem)\{.*/,"#{Mx[:gr_o]}verse#{Mx[:gr_c]}") - elsif para =~/^(?:alt|group)\{/ \ - and not @@flag['code'] #group not tested, stub 2005 - @@flag['group']=true - para.gsub!(/^(alt|group)\{.*/,"#{Mx[:gr_o]}\\1#{Mx[:gr_c]}") - end - if @@flag['code'] - if @@flag['code'] \ - and para =~/^\}code/ - para.gsub!(/^\}code.*/,"#{Mx[:gr_o]}code-end#{Mx[:gr_c]}") - @@flag['code']=false - end - if @@flag['code'] \ - or para =~/#{Mx[:gr_o]}code-end#{Mx[:gr_c]}/ #and para =~/\S/ - sub_array=if para !~/#{Mx[:gr_o]}code(?:-end)?#{Mx[:gr_c]}/; para.dup + "#{Mx[:br_nl]}" - else para.dup - end - @line_mode=sub_array.scan(/.+/) - #@line_mode=[] - #sub_array.scan(/.+/) {|w| @line_mode << w + '<:br>' if w =~/[\Ss]+/} - SiSU_document_structure_code::Code.new(@md,@line_mode).code_lines('code') - para=@line_mode.join - end - elsif ( @@flag['poem'] \ - or @@flag['group'] ) \ - and not @@flag['code'] - if @@flag['poem'] \ - and para =~/^\}(?:poem)/ - para.gsub!(/^\}(poem).*/,"\n#{Mx[:gr_o]}verse-end#{Mx[:gr_c]}") - @@flag['poem']=false - elsif ( @@flag['group'] \ - and para =~/^\}(?:alt|group)/ ) \ - and not @@flag['code'] - para.gsub!(/^\}(alt|group).*/,"#{Mx[:gr_o]}\\1-end#{Mx[:gr_c]}") - @@flag['group']=false - end - if @@flag['poem'] \ - or @@flag['group'] \ - and para =~/\S/ \ - and para !~/#{Mx[:gr_o]}(verse|code|alt|group)(-end)?#{Mx[:gr_c]}/ \ - and not @@flag['code'] - sub_array=para.dup - @line_mode=sub_array.scan(/.+/) - type=if @@flag['poem']; 'poem' - else 'group' - end - SiSU_document_structure_code::Code.new(@md,@line_mode).code_lines(type) - div=if @@flag['poem'] \ - and @verse_count > 0 - "\n" + "#{Mx[:gr_o]}verse-end#{Mx[:gr_c]}" + "\n\n" + "#{Mx[:gr_o]}verse#{Mx[:gr_c]}" - else '' - end - @verse_count+=1 if @@flag['poem'] - para = div + @line_mode.join - else para - end - end - if @@flag['code'] \ - or @@flag['poem'] \ - or @@flag['group'] - @tuned_group << para if para =~/\S+/ - elsif para =~/#{Mx[:gr_o]}(?:code|alt|group|verse)-end#{Mx[:gr_c]}/ - @verse_count=0 - @tuned_group << para - tuned_file <<= if para =~/#{Mx[:gr_o]}group-end#{Mx[:gr_c]}/ - @tuned_group.join("\n") - else @tuned_group=@tuned_group.join - @tuned_group.gsub!(/#{Mx[:br_nl]}#{Mx[:br_nl]}(#{Mx[:gr_o]}code-end#{Mx[:gr_c]})/,'\1') - @tuned_group - end - @tuned_group=[] - else tuned_file << para - end - end - tuned_file - end - def code_lines(type='') - data=@data - data.each do |line| - if line =~/\S/ \ - and line !~/^code\{|^\}code|#{Mx[:gr_o]}code.+/ - line.gsub!(/\s\s/,"#{Mx[:nbsp]}#{Mx[:nbsp]}") - line.gsub!(/^/,"#{Mx[:gr_o]}codeline#{Mx[:gr_c]}") if type=='code' # try sort for texpdf special case - if line =~/(?:https?|file|ftp):\/\/\S+$/ - line.gsub!(/$/," #{Mx[:br_nl]}") - else line.gsub!(/$/,"#{Mx[:br_nl]}") #unless type=='code' - end - if @@flag['code']; @@counter+=1 - else - end - elsif line =~/^\s*$/ - line.gsub!(/$/,"#{Mx[:br_nl]}") - end - end - end - end -end -__END__ -- cgit v1.2.3