From 65477054fd798728bf186aa2938727ddddbe86a5 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Tue, 22 May 2007 02:06:46 +0100 Subject: Imported upstream version 0.52.7 --- lib/sisu/0.52/html_format_css.rb | 473 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 473 insertions(+) create mode 100644 lib/sisu/0.52/html_format_css.rb (limited to 'lib/sisu/0.52/html_format_css.rb') diff --git a/lib/sisu/0.52/html_format_css.rb b/lib/sisu/0.52/html_format_css.rb new file mode 100644 index 00000000..4e519a41 --- /dev/null +++ b/lib/sisu/0.52/html_format_css.rb @@ -0,0 +1,473 @@ +=begin + * Name: SiSU information Structuring Universe - Structured information, Serialized Units + * Author: Ralph Amissah + * http://www.jus.uio.no/sisu + * http://www.jus.uio.no/sisu/SiSU/download.html + + * Description: html formating, css template + + * Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Ralph Amissah + + * License: GPL 2 or later + + Summary of GPL 2 + + 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 2 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, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA + + If you have Internet connection, the latest version of the GPL should be + available at these locations: + http://www.fsf.org/licenses/gpl.html + http://www.gnu.org/copyleft/gpl.html + http://www.jus.uio.no/sisu/gpl2.fsf + + SiSU was first released to the public on January 4th 2005 + + SiSU uses: + + * Standard SiSU markup syntax, + * Standard SiSU meta-markup syntax, and the + * Standard SiSU object citation numbering and system + + © Ralph Amissah 1997, current 2007. + All Rights Reserved. + + * Ralph Amissah: ralph@amissah.com + ralph.amissah@gmail.com +=end +module SiSU_HTML_Format_type + require SiSU_lib + '/html_format' + require SiSU_lib + '/param' + include SiSU_Param + include SiSU_Viz + include SiSU_HTML_Format + class Head_toc < SiSU_HTML_Format::Head_toc + def initialize(md='') + super(md) + end + def head + %{#{doc_type} + + + #{@md.html_title} + + +#{@rdf.rdftoc} +#{@rdf.metatag_html} +#{@css.html} + +#{@vz.color_body} + + + +#{@vz.js_top}} + end + def concordance + if @md.concord_make + %{#{@vz.margin_css} +

+ + Concordance + +

+#{@vz.table_close}} + else + %{#{@vz.margin_css} +#{@vz.table_close}} + end + end + def metadata + %{#{@vz.margin_css} +

+ + MetaData + +

+#{@vz.table_close}} + end + end + class Head_seg < SiSU_HTML_Format::Head_seg + def initialize(md='') + super(md) + end + def head + %{#{doc_type} + + + #{@seg_name_html[@seg_name_html_tracker]} - + #{@md.html_title} + + +#{@rdf.rdfseg} +#{@rdf.metatag_html} +#{@css.html} + +#{@vz.color_body} + + + +#{@vz.js_top}} + end + def toc_metadata + @metalink=%{./#{@md.fn[:meatadata]}} + toc_metadata + end + def title_banner(title,subtitle,creator) + %{

+ #{title} +

+

+ #{subtitle} +

+

+ #{creator} +

+

+ copy @ + + #{@vz.txt_home} + +

} + end + end + class Head_scroll < SiSU_HTML_Format::Head_scroll + def initialize(md='') + super(md) + end + def toc_endnote + %{#{@vz.margin_css} +

+ + Endnotes + +

+#{@vz.table_close}} + end + end + class Format_scroll < SiSU_HTML_Format::Format_text_object + def initialize(md='',*txt) + super(md,*txt) + @vz=SiSU_Env::Get_init.instance.skin + end + def indent_one_no_paranum + %{#{@vz.margin_txt_1} +#{@paragraph.txt} + #@one +#{@vz.margin_num} +#{@vz.table_close}} + end + def indent_two_no_paranum + %{#{@vz.margin_txt_1} +#{@paragraph.txt} + #@one +#{@vz.margin_num} +#{@vz.table_close}} + end + def endnote_body + %{#{@vz.margin_css} +

+ #@one +

+#{@vz.margin_num_css} +   +#{@vz.table_close}} + end + def header_normal + %{#{@vz.margin_css} + <#@tag class="#@class" #{@p_num.id}>#{@p_num.name} + #@headname + #@parablock + +#{@vz.margin_num_css} + #{@p_num.ocn_display} +#{@vz.table_close}} + end + def heading_body + @tag,@class='p','norm' + header_normal + end + def heading_body1 + @tag,@class='h1','norm' + header_normal + end + def heading_body2 + @tag,@class='h2','norm' + header_normal + end + def heading_body3 + @tag,@class='h3','norm' + header_normal + end + def heading_body4 + @tag,@class='h4','norm' + header_normal + end + def heading_body5 + @tag,@class='h5','norm' + header_normal + end + def heading_body6 + @tag,@class='h6','norm' + header_normal + end + end + class Format_seg < SiSU_HTML_Format::Format_text_object + def initialize(md='',*txt) + super(md,*txt) + end + def navigation_para + %{#{@vz.margin_css} +#{@paragraph.txt} + #@one +

+#{@vz.table_close}} + end + def navigation_toc_lev1_advert + %{#{@banner.home_button}\n +
+#@one +#@two +

} + end + def navigation_toc_lev1 + %{#{@banner.nav_toc}} + end + def navigation_toc_lev2 #change bold use css + %{

+ + +
+ + + #@one + +

+#{@vz.table_close}} + end + def navigation_toc_lev3 #change bold use css + %{

+ + +
+ + + #@one + +

+#{@vz.table_close}} + end + def navigation_toc_lev4 + %{ + +
+ +

+ #@one +

+#{@vz.table_close}} + end + def navigation_toc_lev5 + end + def navigation_toc_lev6 + end + def endnote_body_seg_tail + %{#{@vz.margin_css} +

+ #@one +

+#{@vz.margin_num_css}  +#{@vz.table_close}} + end + def endnote_body_seg_tail_indent + %{#{@vz.margin_css} +

+ #@one +

+#{@vz.margin_num_css}  +#{@vz.table_close}} + end + def endnote_seg_body(fn='') #url construction keep within single line... BUG WATCH 200408 + fn='doc' if fn.empty? #you may wish to reconsider, sends to 'doc' where no segment info + %{#{@vz.margin_css} +

+ #@one#{@md.fnl[:pre]}#{fn}#{@md.fnl[:mid]}#{@md.sfx}#{@md.fnl[:post]}#@two#@three +

+#{@vz.margin_num_css}  +#{@vz.table_close}} + end + def title_header + %{#{@vz.margin_css} + <#@tag class="#@class"> + #@one + +#{@vz.margin_num_css}  +#@two +#{@vz.table_close}} + end + def title_header1 + @tag,@class='h1','banner' + title_header + end + def title_header2 + @tag,@class='h2','banner' + title_header + end + def title_header3 + @tag,@class='h3','banner' + title_header + end + def title_header4 + %{#{@vz.margin_css} + +#{@vz.margin_num_css}  +#{@vz.table_close}} + end + def subtoc_lev + one=if @one and @one =~/<\/?i>|/mi + @one.gsub(/<\/?i>|/mi,'') #removes name markers from subtoc, go directly to substantive text + else @one + end + note='' + if one =~/(~[{\[].+?[}\]]~\s*)/m #this is a clumsy fix, revisit and address upstream + note=$1 + note.gsub!(/[\n\s]+/m,' ') + one.gsub!(/~[{\[].+?[}\]]~\s*/m,' ') + one.gsub!(/ \d+<\/sup> /m,'') + end + %{<#@tag class="#@class"> + + #{one} + #{note} + } + end + def subtoc_lev5 + @tag,@class='h5','subtoc' + subtoc_lev if @one + end + def subtoc_lev6 + @tag,@class='h6','subtoc' + subtoc_lev if @one + end + #% para sisu + def header4 + %{#@format +#{@vz.margin_css} +

#{@p_num.name} + #@format + #@parablock +

+#{@vz.margin_num_css} +#{@p_num.ocn_display} +#{@vz.table_close}} + end + def header_sub + @parablock.gsub!(/~[{\[].+?[}\]]~\s*/m,' ') + %{#{@vz.margin_css} +#{@headname} + <#@tag class="#@class" #{@p_num.id}>#{@p_num.name} + #{@parablock} + +#{@vz.margin_num_css} +#{@p_num.ocn_display} +#{@vz.table_close}} + end + def header5 + @tag,@class='p','bold' + header_sub + end + def header6 + @tag,@class='p','bold' + header_sub + end + def navigation_header4 + %{ +
+

+ #@parablock +

+#{@vz.table_close}} + end + def navigation_header5 + %{

+ #@parablock +

} + end + def navigation_header6 + %{

+ #@parablock +

} + end + def navigation_indent1 + %{#{@vz.margin_txt_00_1} +#{@paragraph.txt_00} + #@parablock + +

+#{@vz.margin_num_css}  +#{@vz.table_close}} + end + def navigation_indent2 + end + def navigation_center + "
#@parablock
" + end + end + class Format_toc < SiSU_HTML_Format::Format_text_object + def initialize(md='',*txt) + super(md,*txt) + end + def links_guide + #@three distinguishes between _top and external, can be used e.g. for different colour scheme + %{
  • + + #@linkname + +
  • +} + end + def lev + %{<#@tag class="#@class"> + #@one + +} + end + def lev1 + @tag,@class='h1','toc' + lev + end + def lev2 + @tag,@class='h2','toc' + lev + end + def lev3 + @tag,@class='h3','toc' + lev + end + def lev4 + @tag,@class='h4','toc' + lev + end + def lev5 + @tag,@class='h5','toc' + lev + end + def lev6 + @tag,@class='h6','toc' + lev + end + end +end +__END__ -- cgit v1.2.3