diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/sisu/v1/sysenv.rb | 4 | ||||
| -rw-r--r-- | lib/sisu/v2/concordance.rb | 2 | ||||
| -rw-r--r-- | lib/sisu/v2/constants.rb | 2 | ||||
| -rw-r--r-- | lib/sisu/v2/css.rb | 5 | ||||
| -rw-r--r-- | lib/sisu/v2/dal_syntax.rb | 4 | ||||
| -rw-r--r-- | lib/sisu/v2/db_import.rb | 3 | ||||
| -rw-r--r-- | lib/sisu/v2/defaults.rb | 14 | ||||
| -rw-r--r-- | lib/sisu/v2/epub_format.rb | 5 | ||||
| -rw-r--r-- | lib/sisu/v2/epub_tune.rb | 1 | ||||
| -rw-r--r-- | lib/sisu/v2/html_promo.rb | 2 | ||||
| -rw-r--r-- | lib/sisu/v2/html_tune.rb | 1 | ||||
| -rw-r--r-- | lib/sisu/v2/manifest.rb | 2 | ||||
| -rw-r--r-- | lib/sisu/v2/manpage.rb | 1 | ||||
| -rw-r--r-- | lib/sisu/v2/odf.rb | 27 | ||||
| -rw-r--r-- | lib/sisu/v2/plaintext.rb | 2 | ||||
| -rw-r--r-- | lib/sisu/v2/shared_html_lite.rb | 6 | ||||
| -rw-r--r-- | lib/sisu/v2/shared_xml.rb | 1 | ||||
| -rw-r--r-- | lib/sisu/v2/sysenv.rb | 12 | ||||
| -rw-r--r-- | lib/sisu/v2/texpdf.rb | 53 | ||||
| -rw-r--r-- | lib/sisu/v2/texpdf_format.rb | 9 | ||||
| -rw-r--r-- | lib/sisu/v2/urls.rb | 9 | 
21 files changed, 98 insertions, 67 deletions
| diff --git a/lib/sisu/v1/sysenv.rb b/lib/sisu/v1/sysenv.rb index a55b03cc..519c0f9f 100644 --- a/lib/sisu/v1/sysenv.rb +++ b/lib/sisu/v1/sysenv.rb @@ -2648,10 +2648,10 @@ WOK      def get_version        @version={}        @pwd=ENV['PWD'] -      yst_etc="#{defaults[:sisu_etc]}/#{SiSU_version_dir}/version.yml" +      yst_ver="#{defaults[:sisu_share]}/#{SiSU_version_dir}/v/version.yml"        lib_path=@@lib_path ? @@lib_path : `echo $RUBYLIB`.split(':')        @@lib_path ||=lib_path -      if File.exist?(yst_etc); @version=YAML::load(File::open(yst_etc)) #unless @@noyaml +      if File.exist?(yst_ver); @version=YAML::load(File::open(yst_ver)) #unless @@noyaml        end        @version      end diff --git a/lib/sisu/v2/concordance.rb b/lib/sisu/v2/concordance.rb index 03635cd0..20ab8efa 100644 --- a/lib/sisu/v2/concordance.rb +++ b/lib/sisu/v2/concordance.rb @@ -331,7 +331,7 @@ WOK            # special cases endnotes and header levels 1 - 3          end          credits=@vz.credits_sisu -        @file_concordance << %{</div><div class="content">#{credits}<div></body>\n</html>} # footer +        @file_concordance << %{</div></body>\n</html>} # footer          SiSU_Screen::Ansi.new(@md.cmd,@md.fns,"#{@env.path.output_tell}/#{@md.fn[:concordance]}").flow if @md.cmd =~/[MV]/        end      end diff --git a/lib/sisu/v2/constants.rb b/lib/sisu/v2/constants.rb index 363bc65a..7fe795da 100644 --- a/lib/sisu/v2/constants.rb +++ b/lib/sisu/v2/constants.rb @@ -84,6 +84,7 @@ Mx[:fa_strike_o]=     "#{Mx[:fa_o]}del#{Mx[:fa_o_c]}";   Mx[:fa_strike_c]=     "  Mx[:fa_superscript_o]="#{Mx[:fa_o]}sup#{Mx[:fa_o_c]}";   Mx[:fa_superscript_c]="#{Mx[:fa_c_o]}sup#{Mx[:fa_c]}"  Mx[:fa_subscript_o]=  "#{Mx[:fa_o]}sub#{Mx[:fa_o_c]}";   Mx[:fa_subscript_c]=  "#{Mx[:fa_c_o]}sub#{Mx[:fa_c]}"  Mx[:fa_hilite_o]=     "#{Mx[:fa_o]}hi#{Mx[:fa_o_c]}";    Mx[:fa_hilite_c]=     "#{Mx[:fa_c_o]}hi#{Mx[:fa_c]}" +Mx[:fa_monospace_o]=  "#{Mx[:fa_o]}mono#{Mx[:fa_o_c]}";  Mx[:fa_monospace_c]=  "#{Mx[:fa_c_o]}mono#{Mx[:fa_c]}"  Mx[:gl_bullet]=       "#{Mx[:gl_o]}●#{Mx[:gl_c]}"    Mx[:pa_non_object_dummy_heading]="#{Mx[:pa_o]}-##{Mx[:pa_c]}" #unnumbered paragraph, delete when not required [used in dummy headings, eg. for segmented html] (place marker at end of paragraph)    Mx[:pa_non_object_no_heading]="#{Mx[:pa_o]}~##{Mx[:pa_c]}" #unnumbered paragraph (place marker at end of paragraph) @@ -125,6 +126,7 @@ Px[:strike_o]=     '-';     Px[:strike_c]=     '-'  Px[:superscript_o]='^';     Px[:superscript_c]='^'  Px[:subscript_o]=  '[';     Px[:subscript_c]=  ']'  Px[:hilite_o]=     '*';     Px[:hilite_c]=     '*' +Px[:monospace_o]=  '';      Px[:monospace_c]=  ''  Px[:lv1]=     '*'  Px[:lv2]=     '='  Px[:lv3]=     '=' diff --git a/lib/sisu/v2/css.rb b/lib/sisu/v2/css.rb index f088c44e..38913431 100644 --- a/lib/sisu/v2/css.rb +++ b/lib/sisu/v2/css.rb @@ -605,6 +605,11 @@ WOK      background: #880000;    } +  tt { +    font-family: inconsolata, andale mono, courier new, courier, monospace; +    background-color: #eeeeee; +  } +    label.ocn {      width: 2%;      float: right; diff --git a/lib/sisu/v2/dal_syntax.rb b/lib/sisu/v2/dal_syntax.rb index 5e04730f..713bc886 100644 --- a/lib/sisu/v2/dal_syntax.rb +++ b/lib/sisu/v2/dal_syntax.rb @@ -253,6 +253,8 @@ module SiSU_Syntax          "\\1#{Mx[:fa_subscript_o]}\\2#{Mx[:fa_subscript_c]}")                                                                                                          #subscript        dob.obj.gsub!(/(^|#{Mx[:gl_c]}|\s+|['"]|#{Mx[:nbsp]}|#{Mx[:fa_o_c]}|#{Mx[:fa_c]}|\(|\>)6\{(.+?)\}6/,          "\\1#{Mx[:fa_subscript_o]}\\2#{Mx[:fa_subscript_c]}")                                                                                                          #subscript +      dob.obj.gsub!(/(^|#{Mx[:gl_c]}|\s+|['"]|#{Mx[:nbsp]}|#{Mx[:fa_o_c]}|#{Mx[:fa_c]}|\(|\>)#\{(.+?)\}#/, +        "\\1#{Mx[:fa_monospace_o]}\\2#{Mx[:fa_monospace_c]}")                                                                                                          #monospace text        dob.obj.gsub!(/(^|#{Mx[:gl_c]}|\s+|['"]|#{Mx[:nbsp]}|#{Mx[:fa_o_c]}|#{Mx[:fa_c]}|\(|\>)\+\{(.+?)\}\+/,          "\\1#{Mx[:fa_insert_o]}\\2#{Mx[:fa_insert_c]}")                                                                                                                #inserted text        dob.obj.gsub!(/(^|#{Mx[:gl_c]}|\s+|['"]|#{Mx[:nbsp]}|#{Mx[:fa_o_c]}|#{Mx[:fa_c]}|\(|\>)v\{(.+?)\}v/, @@ -288,6 +290,7 @@ module SiSU_Syntax        # ,{subscript},                          <sub>subscript</sub>        # +{inserted text}+                      <ins>inserted text</ins>        # -{deleted text}-                       <del>deleted text</del> +      # #{monospace text}#        #        # {url address}:url        # {image.png}imageurl @@ -447,6 +450,7 @@ module SiSU_Syntax        # ,{subscript},                          <sub>subscript</sub>        # +{inserted text}+                      <ins>inserted text</ins>        # -{deleted text}-                       <del>deleted text</del> +      # #{monospace text}#        # {url address}:url        # {image.png}imageurl        # {image.png}png diff --git a/lib/sisu/v2/db_import.rb b/lib/sisu/v2/db_import.rb index 3b5c1cc9..4237757f 100644 --- a/lib/sisu/v2/db_import.rb +++ b/lib/sisu/v2/db_import.rb @@ -250,6 +250,7 @@ module SiSU_DB_import            data.obj.gsub!(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'\1')            data.obj.gsub!(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'\1')            data.obj.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'\1') +          data.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,'\1')            data.obj.gsub!(/#{Mx[:gl_o]}(●)#{Mx[:gl_c]}\s*/,'\1 ')            data.obj.gsub!(/#{Mx[:tag_o]}\S+?#{Mx[:tag_c]}/,'') #check            @col[:seg]=@@seg @@ -384,6 +385,8 @@ module SiSU_DB_import                @en_a_plus,@en_z_plus=@en_pls[0].first,@en_pls[0].last if @en_pls[0]                @col[:body]=if data.is=='table'                  SiSU_Format_Shared::CSS_Format.new(@md,data).html_table +              elsif data.is=='code' +                SiSU_Format_Shared::CSS_Format.new(@md,data).code                elsif defined? data.indent and data.indent =~/[1-9]/                  SiSU_Format_Shared::CSS_Format.new(@md,data).indent(data.indent)                else diff --git a/lib/sisu/v2/defaults.rb b/lib/sisu/v2/defaults.rb index 849c430c..09a9808b 100644 --- a/lib/sisu/v2/defaults.rb +++ b/lib/sisu/v2/defaults.rb @@ -1649,7 +1649,7 @@ WOK    </font>  #{table_close*4}}      end -    def credits_sisu +    def credits_sisu_manifest        %{<div class="substance">  <table summary="SiSU summary" bgcolor="#ffffff" cellpadding="4" border="0">  <tr><td> @@ -1657,12 +1657,22 @@ WOK    #{widget_way_better}  </table></div>}      end +    def credits_sisu +      x=%{<div class="substance"> +<table summary="SiSU summary" bgcolor="#ffffff" cellpadding="4" border="0"> +<tr><td> +  #{widget_sisu} +  #{widget_way_better} +</table></div>} +      '' +    end      def credits_splash      end      def credits_sisu_epub -      %{<div class="substance"> +      x=%{<div class="substance">  <p class="center"><a href="http://www.openebook.org"><b>EPUB</b></a> generated by <a href="http://www.sisudoc.org"><b>#{@v[:project]}</b></a> v#{@v[:version]}, GPL3</p>  </div>} +      ''      end      #% bottom      def bottom_surround diff --git a/lib/sisu/v2/epub_format.rb b/lib/sisu/v2/epub_format.rb index 498912a3..6bbbd668 100644 --- a/lib/sisu/v2/epub_format.rb +++ b/lib/sisu/v2/epub_format.rb @@ -398,6 +398,11 @@ module SiSU_EPUB_Format      background: #880000;    } +  tt { +    font-family: inconsolata, andale mono, courier new, courier, monospace; +    background-color: #eeeeee; +  } +    label.ocn {      width: 2%;      float: right; diff --git a/lib/sisu/v2/epub_tune.rb b/lib/sisu/v2/epub_tune.rb index 035a453b..5da82392 100644 --- a/lib/sisu/v2/epub_tune.rb +++ b/lib/sisu/v2/epub_tune.rb @@ -244,6 +244,7 @@ module SiSU_EPUB_Tune          dob.obj.gsub!(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'<ins>\1</ins>')          dob.obj.gsub!(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'<cite>\1</cite>')          dob.obj.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'<del>\1</del>') +        dob.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,'<tt>\1</tt>') # tt, kbd          dob.obj.gsub!(/#{Mx[:mk_o]}:name#(\S+?)#{Mx[:mk_c]}/,'')          dob.obj.gsub!(/^#{Mx[:gl_bullet]}/m,'●  ')          dob.obj.gsub!(/#{Mx[:nbsp]}/,' ') diff --git a/lib/sisu/v2/html_promo.rb b/lib/sisu/v2/html_promo.rb index 0b3e500a..290e74f2 100644 --- a/lib/sisu/v2/html_promo.rb +++ b/lib/sisu/v2/html_promo.rb @@ -163,7 +163,7 @@ module SiSU_HTML_promo          end          form=if action \          and db -          'SiSU search:<br />' + @env.widget.search_form('sisusearch',action,db,table) +          @env.widget.search_form('sisusearch',action,db,table)          else ''          end        end diff --git a/lib/sisu/v2/html_tune.rb b/lib/sisu/v2/html_tune.rb index 11b1dbde..d5f3f35e 100644 --- a/lib/sisu/v2/html_tune.rb +++ b/lib/sisu/v2/html_tune.rb @@ -240,6 +240,7 @@ module SiSU_HTML_Tune          dob.obj.gsub!(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'<ins>\1</ins>')          dob.obj.gsub!(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'<cite>\1</cite>')          dob.obj.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'<del>\1</del>') +        dob.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,'<tt>\1</tt>') # tt, kbd          dob.obj.gsub!(/#{Mx[:mk_o]}:name#(\S+?)#{Mx[:mk_c]}/,'<a name="\1"></a>')          dob.obj.gsub!(/^#{Mx[:gl_bullet]}/m,'●  ')          dob.obj.gsub!(/#{Mx[:nbsp]}/,' ') diff --git a/lib/sisu/v2/manifest.rb b/lib/sisu/v2/manifest.rb index c8dd3753..7be18b19 100644 --- a/lib/sisu/v2/manifest.rb +++ b/lib/sisu/v2/manifest.rb @@ -677,7 +677,7 @@ WOK  </table>  </div>  <div class="main_column"> -#{vz.credits_sisu} +#{vz.credits_sisu_manifest}  </div>  </body>  </html> diff --git a/lib/sisu/v2/manpage.rb b/lib/sisu/v2/manpage.rb index 48b22fd3..2d13793b 100644 --- a/lib/sisu/v2/manpage.rb +++ b/lib/sisu/v2/manpage.rb @@ -274,6 +274,7 @@ WOK            dob.obj.gsub!(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'++\1++')            dob.obj.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'--\1--')            dob.obj.gsub!(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'"\1"') +          dob.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,'\1')            dob.obj.gsub!(/\A\s*#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}#{Mx[:br_line]}/m,"#{Mx[:br_line]}.I \\1#{Mx[:br_line]}")            dob.obj.gsub!(/\s*#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}/m,"#{Mx[:br_line]}.I \\1#{Mx[:br_line]}")            dob.obj.gsub!(/\A\s*#{Mx[:fa_bold_o]}(.+?)#{Mx[:fa_bold_c]}#{Mx[:br_line]}/m,"#{Mx[:br_line]}.BI \\1#{Mx[:br_line]}") diff --git a/lib/sisu/v2/odf.rb b/lib/sisu/v2/odf.rb index 4eabbba5..2c0e206b 100644 --- a/lib/sisu/v2/odf.rb +++ b/lib/sisu/v2/odf.rb @@ -392,7 +392,7 @@ module SiSU_ODF              parablock.gsub!(/^\s*$/,'<br />')              parablock.gsub!(/#{Mx[:url_o]}_(\S+?)#{Mx[:url_c]}/,                '<text:a xlink:type="simple" xlink:href="\1">\1</text:a>') #http ftp matches escaped, no decoration -            parray << %{<text:p text:style-name="P5">#{parablock}</text:p>} if parablock =~/\S+/ +            parray << %{<text:p text:style-name="P20">#{parablock}</text:p>} if parablock =~/\S+/            end            dob.obj=parray.join + '<text:p text:style-name="Standard"/>'          end @@ -485,14 +485,22 @@ module SiSU_ODF                dob.obj            end            dob.obj.gsub!(/#{Mx[:br_line]}/,'<br />') -          dob.obj.gsub!(/#{Mx[:br_page]}|#{Mx[:br_page_new]}/,'<text:p text:style-name="P8"> </text:p>') +          dob.obj.gsub!(/#{Mx[:br_page]}|#{Mx[:br_page_new]}/, +            '<text:p text:style-name="P8"> </text:p>')            dob.obj.gsub!(/©/,'©') #too arbitrary            dob.obj.gsub!(/.+?<-#>/,'')                                           # remove dummy headings (used by html) #check -          dob.obj.gsub!(/#{Mx[:fa_bold_o]}(.+?)#{Mx[:fa_bold_c]}/,'<text:span text:style-name="T1">\1</text:span>') -          dob.obj.gsub!(/#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}/,'<text:span text:style-name="T2">\1</text:span>') -          dob.obj.gsub!(/#{Mx[:fa_underscore_o]}(.+?)#{Mx[:fa_underscore_c]}/,'<text:span text:style-name="T3">\1</text:span>') -          dob.obj.gsub!(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/,'<text:span text:style-name="T4">\1</text:span>') -          dob.obj.gsub!(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/,'<text:span text:style-name="T5">\1</text:span>') +          dob.obj.gsub!(/#{Mx[:fa_bold_o]}(.+?)#{Mx[:fa_bold_c]}/, +            '<text:span text:style-name="T1">\1</text:span>') +          dob.obj.gsub!(/#{Mx[:fa_italics_o]}(.+?)#{Mx[:fa_italics_c]}/, +            '<text:span text:style-name="T2">\1</text:span>') +          dob.obj.gsub!(/#{Mx[:fa_underscore_o]}(.+?)#{Mx[:fa_underscore_c]}/, +            '<text:span text:style-name="T3">\1</text:span>') +          dob.obj.gsub!(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/, +            '<text:span text:style-name="T4">\1</text:span>') +          dob.obj.gsub!(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/, +            '<text:span text:style-name="T5">\1</text:span>') +          dob.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/, +            '<text:span text:style-name="T7">\1</text:span>')            dob.obj.gsub!(//u,'-')            dob.obj.gsub!(/ /u, ' ')       # space identify            dob.obj.gsub!(/ /u, ' ')       # space identify @@ -557,7 +565,7 @@ module SiSU_ODF          end          @@odf[:head]<<%{<?xml version="1.0" encoding="UTF-8"?>#{@br}} +            %{<office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" office:version="1.0"><office:scripts/>#{@br}} + -          %{<office:font-face-decls><style:font-face style:name="HG Mincho Light J" svg:font-family="'HG Mincho Light J', 'MS Mincho', 'HG Mincho J', 'HG Mincho L', 'HG Mincho', Mincho, 'MS PMincho', 'HG Mincho Light J', 'MS Gothic', 'HG Gothic J', 'HG Gothic B', 'HG Gothic', Gothic, 'MS PGothic', 'Andale Sans UI', 'Arial Unicode MS', 'Lucida Sans Unicode', Tahoma" style:font-pitch="variable"/><style:font-face style:name="Nimbus Sans L" svg:font-family="'Nimbus Sans L'" style:font-pitch="variable"/><style:font-face style:name="Tahoma" svg:font-family="Tahoma, Lucidasans, 'Lucida Sans', 'Arial Unicode MS'" style:font-pitch="variable"/><style:font-face style:name="Nimbus Roman No9 L" svg:font-family="'Nimbus Roman No9 L'" style:font-family-generic="roman" style:font-pitch="variable"/><style:font-face style:name="Bitstream Vera Sans" svg:font-family="'Bitstream Vera Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/></office:font-face-decls>#{@br}} + +          %{<office:font-face-decls><style:font-face style:name="DejaVu Sans Mono" svg:font-family="'DejaVu Sans Mono'" style:font-adornments="Book" style:font-family-generic="modern" style:font-pitch="fixed"/><style:font-face style:name="Inconsolata" svg:font-family="Inconsolata" style:font-adornments="Regular" style:font-pitch="fixed"/><style:font-face style:name="Liberation Mono" svg:font-family="'Liberation Mono'" style:font-adornments="Regular" style:font-family-generic="modern" style:font-pitch="fixed"/><style:font-face style:name="DejaVu Sans" svg:font-family="'DejaVu Sans'" style:font-adornments="ExtraLight" style:font-family-generic="swiss" style:font-pitch="variable"/><style:font-face style:name="Nimbus Sans L" svg:font-family="'Nimbus Sans L'" style:font-pitch="variable"/><style:font-face style:name="Tahoma" svg:font-family="Tahoma, Lucidasans, 'Lucida Sans', 'Arial Unicode MS'" style:font-pitch="variable"/><style:font-face style:name="DejaVu Serif" svg:font-family="'DejaVu Sans'" style:font-adornments="ExtraLight" style:font-family-generic="swiss" style:font-pitch="variable"/><style:font-face style:name="Nimbus Roman No9 L" svg:font-family="'Nimbus Roman No9 L'" style:font-family-generic="roman" style:font-pitch="variable"/><style:font-face style:name="Bitstream Vera Sans" svg:font-family="'Bitstream Vera Sans'" style:font-family-generic="swiss" style:font-pitch="variable"/></office:font-face-decls>#{@br}} +            %{<office:automatic-styles>#{@br}} +            %{#{table}#{@br}} +            %{<style:style style:name="P1" style:family="paragraph" style:parent-style-name="Standard"><style:paragraph-properties  fo:margin-top="0.199cm" fo:margin-bottom="0.199cm" fo:line-height="150%" fo:text-align="justify" style:justify-single-word="false"/></style:style>#{@br}} + @@ -579,13 +587,14 @@ module SiSU_ODF            %{<style:style style:name="P17" style:family="paragraph" style:parent-style-name="Standard"><style:paragraph-properties  fo:margin-top="0.199cm" fo:margin-bottom="0.199cm" fo:line-height="150%" fo:margin-left="7cm" fo:margin-right="0cm" fo:text-align="justify" style:justify-single-word="false" fo:text-indent="0cm" style:auto-text-indent="false"/></style:style>#{@br}} +            %{<style:style style:name="P18" style:family="paragraph" style:parent-style-name="Standard"><style:paragraph-properties  fo:margin-top="0.199cm" fo:margin-bottom="0.199cm" fo:line-height="150%" fo:margin-left="8cm" fo:margin-right="0cm" fo:text-align="justify" style:justify-single-word="false" fo:text-indent="0cm" style:auto-text-indent="false"/></style:style>#{@br}} +            %{<style:style style:name="P19" style:family="paragraph" style:parent-style-name="Standard"><style:paragraph-properties  fo:margin-top="0.199cm" fo:margin-bottom="0.199cm" fo:line-height="150%" fo:margin-left="8cm" fo:margin-right="0cm" fo:text-align="justify" style:justify-single-word="false" fo:text-indent="0cm" style:auto-text-indent="false"/></style:style>#{@br}} + - +          %{<style:style style:name="P20" style:family="paragraph" style:parent-style-name="Standard"><style:paragraph-properties fo:margin-top="0cm" fo:margin-bottom="0cm" fo:line-height="100%" fo:text-align="start" style:justify-single-word="false"/><style:text-properties style:font-name="DejaVu Sans Mono" fo:font-size="9pt" fo:font-weight="normal" fo:background-color="#e6e6e6"/></style:style>#{@br}} +            %{<style:style style:name="T1" style:family="text"><style:text-properties fo:font-weight="bold" style:font-weight-asian="bold" style:font-weight-complex="bold"/></style:style>#{@br}} +            %{<style:style style:name="T2" style:family="text"><style:text-properties fo:font-style="italic" style:font-style-asian="italic" style:font-style-complex="italic"/></style:style>#{@br}} +            %{<style:style style:name="T3" style:family="text"><style:text-properties style:text-underline-style="solid" style:text-underline-width="auto" style:text-underline-color="font-color"/></style:style>#{@br}} +            %{<style:style style:name="T4" style:family="text"><style:text-properties style:text-position="super 58%"/></style:style>#{@br}} +            %{<style:style style:name="T5" style:family="text"><style:text-properties style:text-position="sub 58%"/></style:style>#{@br}} +            %{<style:style style:name="T6" style:family="text"><style:text-properties style:font-name="Courier 10 Pitch" fo:font-size="12pt"/></style:style>#{@br}} + +          %{<style:style style:name="T7" style:family="text"><style:text-properties style:font-name="DejaVu Sans Mono" fo:font-size="10pt" fo:font-weight="normal" fo:background-color="#e6e6e6"/></style:style>#{@br}} +              %{<style:style style:name="fr1" style:family="graphic" style:parent-style-name="Graphics"><style:graphic-properties style:wrap="none" style:horizontal-pos="left" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="100%" draw:color-inversion="false" draw:image-opacity="100%" draw:color-mode="standard"/></style:style>#{@br}} +            %{<style:style style:name="gr1" style:family="graphic"><style:graphic-properties draw:stroke="none" draw:fill="none" draw:textarea-horizontal-align="center" draw:textarea-vertical-align="middle" draw:color-mode="standard" draw:luminance="0%" draw:contrast="0%" draw:gamma="100%" draw:red="0%" draw:green="0%" draw:blue="0%" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:image-opacity="100%" style:mirror="none" style:run-through="background" style:wrap="none" style:vertical-pos="top" style:vertical-rel="baseline" style:horizontal-pos="left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/></style:style>#{@br}} +            %{<style:style style:name="gr2" style:family="graphic"><style:graphic-properties draw:stroke="none" draw:fill="none" draw:textarea-horizontal-align="center" draw:textarea-vertical-align="middle" draw:color-mode="standard" draw:luminance="0%" draw:contrast="0%" draw:gamma="100%" draw:red="0%" draw:green="0%" draw:blue="0%" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:image-opacity="100%" style:mirror="none" style:run-through="background" style:wrap="none" style:vertical-pos="middle" style:vertical-rel="baseline" style:horizontal-pos="left" style:horizontal-rel="paragraph" draw:wrap-influence-on-position="once-concurrent" style:flow-with-text="false"/></style:style>#{@br}} + diff --git a/lib/sisu/v2/plaintext.rb b/lib/sisu/v2/plaintext.rb index 4acdec93..bc83702b 100644 --- a/lib/sisu/v2/plaintext.rb +++ b/lib/sisu/v2/plaintext.rb @@ -298,6 +298,8 @@ WOK              "#{Px[:cite_o]}\\1#{Px[:cite_c]}")            dob.obj.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,              "#{Px[:strike_o]}\\1#{Px[:strike_c]}") +          dob.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/, +            "#{Px[:monospace_o]}\\1#{Px[:monospace_c]}")            unless dob.is=='code'              dob.obj.gsub!(/#{Mx[:lnk_o]}(.+?)#{Mx[:lnk_c]}#{Mx[:rel_o]}\S+?#{Mx[:rel_c]}/,'\1')              dob.obj.gsub!(/#{Mx[:url_o]}_(\S+?)#{Mx[:url_c]}/,'\1') diff --git a/lib/sisu/v2/shared_html_lite.rb b/lib/sisu/v2/shared_html_lite.rb index bb27258c..02b4dcc2 100644 --- a/lib/sisu/v2/shared_html_lite.rb +++ b/lib/sisu/v2/shared_html_lite.rb @@ -147,6 +147,7 @@ module SiSU_Format_Shared        s=s.gsub(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strke_c]}/,'-{\1}-')        s=s.gsub(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/,'<sup>\1</sup>')        s=s.gsub(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/,'<sub>\1</sub>') +      s=s.gsub(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,'<tt>\1</tt>') # tt, kbd        s=s.gsub(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/i,'~')      end      def markup_object(t_o) @@ -225,6 +226,11 @@ GSUB        h={:txt =>txt,:class =>'norm',:type =>'substantive',:id =>@ocn}        tag_para(h)      end +    def code +      txt=markup_object(@t_o) +      h={:txt =>"<tt>#{txt}</tt>",:class =>'code',:type =>'substantive',:id =>@ocn} +      tag_para(h) +    end      def indent(t)        txt=markup_object(@t_o)        h={:txt =>txt,:class =>"indent#{t}",:type =>'substantive',:id =>@ocn} diff --git a/lib/sisu/v2/shared_xml.rb b/lib/sisu/v2/shared_xml.rb index 4d504882..2fcab17e 100644 --- a/lib/sisu/v2/shared_xml.rb +++ b/lib/sisu/v2/shared_xml.rb @@ -357,6 +357,7 @@ module SiSU_XML_munge        dob.obj.gsub!(/#{Mx[:fa_insert_o]}(.+?)#{Mx[:fa_insert_c]}/,'<ins>\1</ins>')        dob.obj.gsub!(/#{Mx[:fa_cite_o]}(.+?)#{Mx[:fa_cite_c]}/,'<cite>\1</cite>')        dob.obj.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'<del>\1</del>') +      dob.obj.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,'<tt>\1</tt>')        dob.obj.gsub!(/<:pb>\s*/,'') #Fix        dob.obj.gsub!(/<+[-~]#>+/,'')        if dob.is !~/^code/ diff --git a/lib/sisu/v2/sysenv.rb b/lib/sisu/v2/sysenv.rb index 1727e630..3a532d65 100644 --- a/lib/sisu/v2/sysenv.rb +++ b/lib/sisu/v2/sysenv.rb @@ -1352,7 +1352,11 @@ WOK              man_path=@@man_path=File.expand_path(@rc['webserv']['path'])            else nil            end -        else manpath=@@man_path +        else @@man_path +        end +        man_path_head=man_path.gsub(/(\S+)\/[^\/\s]+$/,'\1') +        unless FileTest.directory?(man_path) +          mkdir_p(man_path) if File.writable?("#{man_path_head}/.")          end          @webserv_path=if defined? man_path \          and File.writable?("#{man_path}/.") @@ -1977,7 +1981,7 @@ WOK          elsif defined? @rc['program_select']['epub_viewer'] \          and @rc['program_select']['epub_viewer'] =~/\S\S+/            @rc['program_select']['epub_viewer'] -        else 'calibre'                                                            #'calibre' 'fbreader' +        else 'ebook-viewer'                                                            #'calibre' 'fbreader'          end        end        def xml_viewer @@ -2665,10 +2669,10 @@ WOK      def get_version        @version={}        @pwd=ENV['PWD'] -      yst_etc="#{defaults[:sisu_etc]}/#{SiSU_version_dir}/version.yml" +      yst_ver="#{defaults[:sisu_share]}/#{SiSU_version_dir}/v/version.yml"        lib_path=@@lib_path ? @@lib_path : `echo $RUBYLIB`.split(':')        @@lib_path ||=lib_path -      if File.exist?(yst_etc); @version=YAML::load(File::open(yst_etc)) #unless @@noyaml +      if File.exist?(yst_ver); @version=YAML::load(File::open(yst_ver)) #unless @@noyaml        end        @version      end diff --git a/lib/sisu/v2/texpdf.rb b/lib/sisu/v2/texpdf.rb index b9d9e2c0..9aa82927 100644 --- a/lib/sisu/v2/texpdf.rb +++ b/lib/sisu/v2/texpdf.rb @@ -443,10 +443,10 @@ module SiSU_TeX              dob.tmp = ocn \              + @tex_ml.paraskip_small \              + "\n" \ -            + ' \\begin{scriptsize}' \ +            + ' \\begin{Codeblock}' \              + "\n" \              + dob.tmp \ -            + '\\end{scriptsize}' \ +            + ' \\end{Codeblock}' \              + "\n" \              + @tex_ml.paraskip_normal              dob @@ -502,7 +502,7 @@ module SiSU_TeX              and dob.obj=~/Metadata\b/                h=tst.level4                metadata=Metadata::TeX_metadata.new(@md).metadata_tex -              dob.tmp=h.tmp + ' ' + metadata.join(br) +              dob.tmp=h.tmp + ' ' + '\begin{scriptsize}' + metadata.join(br) + '\end{scriptsize}'              else dob.tmp='' # dob.tmp={:l =>'',:p =>''}              end            when 'para' @@ -566,6 +566,8 @@ module SiSU_TeX  \\makeatother  \\chardef\\txtbullet="2022  \\chardef\\tilde="7E +\\definecolor{Light}{gray}{.92} +\\newcommand{\\Codeblock}[1]{\\normaltext\\raggedright\\tiny\\ttfamily\\texbackslash#1}  % \\sloppy  \\begin{document}  WOK @@ -591,19 +593,19 @@ WOK            else "\n\\author{#{@copymark} \\textnormal{#{author}}}"            end          end -        @tex_file << unless @md.fnb =~/^mail\s*$/; "\n\\date{\\begin{footnotesize} copy @ #{@tex_ml.site} \\end{footnotesize} #{sisu_rc_footnote}}" +        @tex_file << unless @md.fnb =~/^mail\s*$/; "\n\\date{\\begin{footnotesize} copy @ #{@tex_ml.site} \\end{footnotesize}}"          else                                       "\\date"          end          @tex_file <<<<WOK  \\pagenumbering{roman}\\maketitle  \\pagestyle{fancy}  WOK -        @tex_file << "\\newpage\n" -        @tex_file << @@rights if defined? @md.rights.all and @md.rights.all #if @orientation =~/landscape/ -        @tex_file << @@prefix_b if defined? @md.creator.prefix_b and @md.creator.prefix_b -        @tex_file << @tex_ml.sisu_rights -        @tex_file << (@md.sc_info ? @tex_ml.doc_sc_info : @tex_ml.doc_no_sc_info) -        @tex_file << @tex_ml.manifest_info +        if defined? @md.rights.all \ +        and @md.rights.all +          @tex_file << "\\newpage\n" +          @tex_file << @@rights +          @tex_file << @@prefix_b if defined? @md.creator.prefix_b and @md.creator.prefix_b +        end          x={}          x[:l] =<<WOK  #{@tex_ml.newpage('landscape')} @@ -658,37 +660,6 @@ WOK            end            @tex_file << dob          end -        @tex_file << "\n\\newpage\n" # was \\pagebreak\n -        # kludge ... look again later -        @tex_file << if @md.doc_skin !~/skin_mail/; @tex_ml.doc_tail -        else                                        @tex_ml.mail_tail -        end -        if defined? @md.lnk \ -        and @md.lnk -          @md.lnk.each do |l| -            if l[:say] -              url=%<#{l[:url]}> -              url.gsub!(/(?:\\)*([$&~%_#}{^])/,"\\\\\\1")                         #latex special chars -              s_lnk=l[:say] -              s_lnk.gsub!(/\s*(#{Mx[:br_line]}|#{Mx[:br_nl]}|#{Mx[:br_paragraph]})\s*/,' \newline ') -              s_lnk.gsub!(/(?:\\)*([$&~%_#}{^])/,"\\\\\\1")                       #latex special chars -              if url !~/^\.(\.)?\// -                s_lnk_url=%<#{@brace_url.tex_open}\\begin{scriptsize}\\url{#{url}}\\end{scriptsize}#{@brace_url.tex_close}>  # note this bit of dereferencing magic -              else -                url.gsub!(/\.\.\//,'') -                s_lnk_url="(#{@tex_ml.site}) \\\\\n" + ' ' + -                  '\begin{scriptsize}' + -                  %<\\url\{#{@vz.url_root_http}/#{url}\}> + # note this bit of dereferencing magic -                  "\\end{scriptsize}" -              end -              @tex_file << " #{s_lnk} \\\\\n #{s_lnk_url} \n" unless  @md.doc_skin =~/skin_mail/ -              s_lnk=s_lnk_url=nil -            end -          end -        end -        @tex_file << " #{@tex_ml.sitename} home: \\\\ -\\begin{bfseries}#{@tex_ml.site}\\end{bfseries} -"          @st[:tex][:stmp]||=@md.stmpd          stamp=@st[:tex][:stmp] if @st[:tex][:stmp]          if stamp diff --git a/lib/sisu/v2/texpdf_format.rb b/lib/sisu/v2/texpdf_format.rb index ba615749..637271a0 100644 --- a/lib/sisu/v2/texpdf_format.rb +++ b/lib/sisu/v2/texpdf_format.rb @@ -213,12 +213,13 @@ module SiSU_TeX_Pdf        dob.tmp.gsub!(/(?:\\begin\{bfseries\}|\\begin\{itshape\})(.+?)(?:\\end\{bfseries\}|\\end\{itshape\})/m,'\1')        cont_ln=dob.tmp.dup        cont_ln.gsub!(@@tex_pattern_margin_number,'') +      clearp=(dob.lv =~/B/ && dob.obj =='Metadata') ? "\\clearpage\n" : ''        if dob.tmp =~/\\[Ff]ootnote/ #and dob =~/^[1-6]#{Tex[:tilde]}/ # removing footnotes from headings!          cont_ln.gsub!(/\s*\\footnote\[\d+\]\{%\n .+? \}\s*/,' ')          cont_ln.gsub!(/\s*\\Footnote[A]\{[*+]+\d*\}\{%\n .+? \}\s*/,' ')        end        dob.tmp.gsub!(/^(.*)\n?$/m, -        "\\part*{\\1} +        "#{clearp}\\part*{\\1}  \\addcontentsline{toc}{section}{#{cont_ln}}  \\markboth{#{title}}\n")        dob @@ -967,7 +968,10 @@ WOK            w.gsub!(/[#{Mx[:br_line]}#{Mx[:br_paragraph]}]/,' \newline ') #watch            w.gsub!(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/,'<=tilde>') #126 usual            w.gsub!(/\\?\||#{Mx[:gl_o]}#124#{Mx[:gl_c]}/,'<=pipe>') #unless is=='code' #unless w=~/<~\d+;(?:[ohmu]|[0-6]:)\d+;\w\d+>/ # | SiSU not really special sisu character but done, also LaTeX -          w.gsub!(/\#/,'<=hash>') unless w =~/#{Mx[:rel_o]}/ +          if w !~/#{Mx[:rel_o]}/ \ +          and w !~/#{Mx[:gl_o]}#/ +            w.gsub!(/\#/,'<=hash>') +          end            para_array << w          end          str=para_array.join(' ') @@ -1060,6 +1064,7 @@ WOK        str.gsub!(/#{Mx[:fa_strike_o]}(.+?)#{Mx[:fa_strike_c]}/,'\sout{\1}') # ulem        str.gsub!(/#{Mx[:fa_superscript_o]}(.+?)#{Mx[:fa_superscript_c]}/,"\$^{\\textrm{\\1}}\$")        str.gsub!(/#{Mx[:fa_subscript_o]}(.+?)#{Mx[:fa_subscript_c]}/,"\$_{\\textrm{\\1}}\$") +      str.gsub!(/#{Mx[:fa_monospace_o]}(.+?)#{Mx[:fa_monospace_c]}/,' \monosp{ \1 } ')        unless is=='code'          str.gsub!(/"(.+?)"/,'“\1”')  # quote marks / quotations open & close " need condition exclude for code          str.gsub!(/\s+"/,' “')                                # open " diff --git a/lib/sisu/v2/urls.rb b/lib/sisu/v2/urls.rb index 56b93a78..1011eda4 100644 --- a/lib/sisu/v2/urls.rb +++ b/lib/sisu/v2/urls.rb @@ -114,6 +114,7 @@ module SiSU_urls          'P (Ruby profiler)'=>'profile',          's (sisu markup)'=>source,          'S (sisupod)'=>@fn[:sisupod], +        't (Plain-text (endnotes))'=>@fn[:plain],          'x (XML sax type)'=>@fn[:sax],          'X (XML dom type)'=>@fn[:dom],          'y (Manifest, html)'=>@fn[:manifest], @@ -129,8 +130,8 @@ module SiSU_urls        end      end      def urls_maintenance(opt,x,y) -      if x=~/^([abcehHmNopwxXy])/ \ -      and opt.cmd =~/[abcehHmNopwxXy]/ \ +      if x=~/^([abcehHmNoptwxXy])/ \ +      and opt.cmd =~/[abcehHmNoptwxXy]/ \        and x=~/^[#{opt.cmd}]/ \        and opt.cmd =~/M/          m=$1 @@ -191,8 +192,8 @@ module SiSU_urls          @u.each do |x,y|            if @opt.fns =~ @m_regular              if @opt.cmd =~/[MVv]/ -              if x=~/^([abchHNopwxXyY])/ \ -              and @opt.cmd=~/[abchHNopwxXyY]/ \ +              if x=~/^([abchHNoptwxXyY])/ \ +              and @opt.cmd=~/[abchHNoptwxXyY]/ \                and x=~/^[#{@opt.cmd}]/                  m=$1                  SiSU_Screen::Ansi.new(@opt.cmd,"-#{x}","#{@prog.web_browser} #{@env.url.output_tell}/#{@fnb}/#{y}").result | 
