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/shared_html_lite.rb | 276 ----------------------------------------
1 file changed, 276 deletions(-)
delete mode 100644 lib/sisu/v0/shared_html_lite.rb
(limited to 'lib/sisu/v0/shared_html_lite.rb')
diff --git a/lib/sisu/v0/shared_html_lite.rb b/lib/sisu/v0/shared_html_lite.rb
deleted file mode 100644
index 7fe77e0b..00000000
--- a/lib/sisu/v0/shared_html_lite.rb
+++ /dev/null
@@ -1,276 +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: modules shared by db and flatfile output generators, mostly
- xml/xhtml/html formatting
-
-=end
-module SiSU_Format_Shared
- require "#{SiSU_lib}/defaults"
- include SiSU_Viz
- class CSS_Format
- require "#{SiSU_lib}/defaults"
- @@fns=nil
- def initialize(md,t_o)
- @md,@t_o=md,t_o
- if t_o.class==Hash
- @txt =t_o[:txt] #|| nil #s/@content/@txt/
- @col =t_o[:col] #|| nil
- @notenumber =t_o[:endnote_nr] || nil
- #elsif t_o.class == Array
- # @txt =txt[0]
- #elsif t_o.class == String
- # @txt =txt
- else
- #content.gsub!(/<:i[1-9]>/,'')
- #@md,@content=md,content
- p t_o.class
- p caller
- end
- @txt.gsub!(/#{Mx[:pa_o]}:i[1-9]#{Mx[:pa_c]}/,'')
- @id=@ocn=@col[:ocn]
- @ocnd,@ocns=@col[:ocnd],@col[:ocns]
- @lv=@col[:lev].to_s
- @@hname=if @md.fns != @@fns
- @@fns=@md.fns
- ''
- end
- @hname=if @col[:seg] \
- and not @col[:seg].to_s.empty?
- @@hname=@col[:seg].to_s
- else @@hname
- end
- @tab="\t"
- @url_brace=SiSU_Viz::Skin.new.url_decoration
- # lots introduced to do html tables in db
- @@tablehead,@@tablefoot=[],[]
- @vz=SiSU_Env::Get_init.instance.skin
- @env=SiSU_Env::Info_env.new(@md.fns)
- @base_url="#{@env.url.root}/#{@md.fnb}/#{@hname}.html"
- end
- def urls(data)
- @words=[]
- data.each do |word|
- @words << if word=~/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}((?:https?|file|ftp)\S+|image)/
- if word =~/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}((?:https?|file|ftp)\S+|image)([;.,](?:\s|$))/
- m,u,d=/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}((?:https?|file|ftp)\S+|image)([;.,](?:\s|$))/.match(word).captures
- else m,u=/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}((?:https?|file|ftp)\S+|image)/.match(word).captures
- d=''
- end
- word=case m
- when /\.png|\.jpg|\.gif|c=|\d+x\d+/
- w,h=/(\d+)x(\d+)/.match(m).captures if m =~/\d+x\d+/
- w=%{width="#{w}"} if w
- h=%{height="#{h}"} if h
- c=m[/"(.+?)"/m,1]
- caption=%{
#{c}
} if c
- png=m.scan(/\S+/)[0]
- #image_path=if @md.fns =~/\.-ss[tm]$/; @env.url.images_external
- #else @env.url.images_local
- #end
- ins=if u \
- and u.strip !~/^image$/
- %{[#{png}]#{caption}}
- else %{[#{png}] #{caption}}
- end
- word.gsub!(/#{Mx[:lnk_o]}.+?#{Mx[:lnk_c]}((?:https?|file|ftp)\S+|image)/,ins)
- else
- link=m[/(.+)/m]
- png=m.scan(/\S+/)[0].strip
- link=link.strip
- ins=%{#{link}#{d}}
- #ins=%{#{link} [link]#{d}}
- word.gsub!(/#{Mx[:lnk_o]}.+?#{Mx[:lnk_c]}(?:https?|file|ftp)\S+/,ins)
- end
- else word
- end
- word
- end
- @words=@words.join(' ')
- end
- def markup(para)
- if para !~/^#{Mx[:gr_o]}:code#{Mx[:gr_c]}/
- if para =~/#{Mx[:lnk_o]}.+?#{Mx[:lnk_c]}((?:https?|file|ftp)\S+|image)/
- wm=para.scan(/#{Mx[:lnk_o]}.+?#{Mx[:lnk_c]}(?:(?:https?|file|ftp)\S+|image)|\S+/)
- words=urls(wm)
- para.gsub!(/.+/m,words)
- end
- para.gsub!(/#{Mx[:gl_o]}(#[0-9]{3})#{Mx[:gl_c]}/u,'&\1;')
- para.gsub!(/#{Mx[:gl_o]}#([a-z]{2,4})#{Mx[:gl_c]}/u,'&\1;')
- para.gsub!(/#{Mx[:pa_o]}:i[1-9]#{Mx[:pa_c]}/m,'')
- para.gsub!(/\b[_\\]((?:https?|file|ftp):\/\/\S+?\.[^'"><\s]+?)([;.,]?(?:\s|$))/,'\1\2') #http ftp matches escaped, no decoration
- para.gsub!(/((?:^|\s)#{Mx[:lnk_c]})((?:https?|file|ftp):\/\/\S+?\.[^'"><\s]+?)([;.,]?(?:\s|$))/,'\1\2\3') #special case \{ e.g. \}http://url
- para.gsub!(/(^|#{Mx[:gl_c]}|\s)((?:https?|file|ftp):\/\/\S+?\.[^'"><\s]+?)([;.,]?(?=\s|$))/,%{\\1#{@url_brace.xml_open}\\2#{@url_brace.xml_close}\\3}) #http ftp matches with decoration
- else
- para.gsub!(/(^|[^}])_/m,'\1>') #code-block: angle brackets special characters
- para.gsub!(/(^|[^}])_/m,'\1>')
- end
- para
- end
- def paragraph
- %{#{@tab*1}
\n#{@tab*2}#{@txt}\n#{@tab*1}
\n} << "\n"
- end
- def endnote #used only by db
- @txt=markup(@txt)
- <
-#{@tab*2}#{@notenumber}.#{@txt}
-#{@tab*1}