diff options
Diffstat (limited to 'lib/sisu/v1/dal_endnotes.rb')
| -rw-r--r-- | lib/sisu/v1/dal_endnotes.rb | 129 | 
1 files changed, 0 insertions, 129 deletions
diff --git a/lib/sisu/v1/dal_endnotes.rb b/lib/sisu/v1/dal_endnotes.rb deleted file mode 100644 index 3d4bd148..00000000 --- a/lib/sisu/v1/dal_endnotes.rb +++ /dev/null @@ -1,129 +0,0 @@ -# coding: utf-8 -=begin - - * Name: SiSU - - * Description: a framework for document structuring, publishing and search - - * Author: Ralph Amissah - - * Copyright: (C) 1997 - 2010, 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 <http://www.gnu.org/licenses/>. - -   If you have Internet connection, the latest version of the GPL should be -   available at these locations: -   <http://www.fsf.org/licensing/licenses/gpl.html> -   <http://www.gnu.org/copyleft/gpl.html> - -   <http://www.jus.uio.no/sisu/gpl.fsf/toc.html> -   <http://www.jus.uio.no/sisu/gpl.fsf/doc.html> -   <http://www.jus.uio.no/sisu/gpl.fsf/plain.txt> - - * SiSU uses: -   * Standard SiSU markup syntax, -   * Standard SiSU meta-markup syntax, and the -   * Standard SiSU object citation numbering and system - - * Hompages: -   <http://www.jus.uio.no/sisu> -   <http://www.sisudoc.org> - - * Download: -   <http://www.jus.uio.no/sisu/SiSU/download.html> - - * Ralph Amissah -   <ralph@amissah.com> -   <ralph.amissah@gmail.com> - - ** Description: system environment, resource control and configuration details - -=end -module SiSU_endnotes -  class Endnotes -    def initialize(md,data,endnote_array=nil) -      @md,@data,@endnote_array=md,data,endnote_array -      @endnote_counter,@endnote_counter_asterisk,@endnote_counter_dag=1,1,1 -    end -    def endnotes -      data=@data -      @tuned_file=[] -      endnote_no,endnote_ref=1,1 -                                                                                 #% endnote work zone -      data.each do |para| -                                                                                 # manually numbered endnotes <!e(\d)!> <!e_(\d)!> --> -        if @md.mod.inspect =~/--no-asterisk|--no-annotate/ -          para.gsub!(/#{Mx[:en_b_o]}\s.+?#{Mx[:en_b_c]}/,'') -        end -        if @md.mod.inspect =~/--no-dagger|--no-annotate/ -          para.gsub!(/#{Mx[:en_b_o]}[+]\s.+?#{Mx[:en_b_c]}/,'') -        end -        unless para =~/^#{Mx[:gr_o]}code#{Mx[:gr_c]}/ -          case para -                                                                                 # auto-numbered endnotes <!e!> <!e_!> --> -          when /#{Mx[:en_a_o]}.+?#{Mx[:en_a_c]}|#{Mx[:en_b_o]}[*+]\s+.+?#{Mx[:en_b_c]}/ -            para.gsub!(/\s*(#{Mx[:en_a_c]}|#{Mx[:en_b_c]})/,' \1')                                     # required 2003w31 -            word_mode=para.scan(/#{Mx[:gr_o]}group#{Mx[:gr_c]}\n|\n#{Mx[:gr_o]}group-end#{Mx[:gr_c]}|\S+/m) -            word_mode=endnote_call_number(word_mode) -            para=word_mode.join(' ') -            endnote_ref+=1 -          when /~\^(?:\s|$)|<:e>/ -                                                                                 #%Note inserts endnotes previously gathered from /^(<!e[:_]!>|[-~]\{{3})/ (in earlier loop) -            word_mode=para.scan(/#{Mx[:gr_o]}group#{Mx[:gr_c]}\n|\n#{Mx[:gr_o]}group-end#{Mx[:gr_c]}|\S+/m) -            word_mode=endnote_call_number(word_mode) -            para=word_mode.join(' ') -            endnote_ref+=1 -          end -        end -        @tuned_file << para -      end -      @endnote_counter,@endnote_counter_asterisk,@endnote_counter_dag=1,1,1 -      @tuned_file=@tuned_file.flatten -    end -    def endnote_call_number(data) -      data.each do |word| -        unless data =~/^#{Mx[:gr_o]}code#{Mx[:gr_c]}/ -          case word -          when /#{Mx[:en_a_o]}/ -            unless word =~/#{Mx[:en_a_o]}[*+]+/ -              word.gsub!(/#{Mx[:en_a_o]}/,"#{Mx[:en_a_o]}#{@endnote_counter} ") -              @endnote_counter+=1 -            end -          when /#{Mx[:en_b_o]}/ -            if word =~/#{Mx[:en_b_o]}[+]/ -              word.gsub!(/#{Mx[:en_b_o]}[+]/,"#{Mx[:en_b_o]}\+#{@endnote_counter_dag} ") -              @endnote_counter_dag+=1 -            else -              word.gsub!(/#{Mx[:en_b_o]}[*]?/,"#{Mx[:en_b_o]}\*#{@endnote_counter_asterisk} ") -              @endnote_counter_asterisk+=1 -            end -          when /~\^|<:e>/ -            if @endnote_array -              word.gsub!(/~\^|<:e>/,"#{@endnote_array[@endnote_counter-1]}") -              @endnote_counter+=1 -            end -          end -        end -      end -    end -  end -end -__END__ -  | 
