aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2011-12-02 04:08:26 -0500
committerRalph Amissah <ralph@amissah.com>2011-12-02 04:08:26 -0500
commit13038021f95ffbf38870354ad5ea04ad1b1d8b2d (patch)
tree22070360dd7dea93e864141b07048e8611693c79 /lib
parentdebian/changelog (3.1.5-1) (diff)
parentv3: texpdf, use boites for box round codeblocks (diff)
Merge commit 'sisu_3.1.6' into debian/sid
Diffstat (limited to 'lib')
-rw-r--r--lib/sisu/v3/dal_character_check.rb1
-rw-r--r--lib/sisu/v3/dal_doc_str.rb2
-rw-r--r--lib/sisu/v3/dal_syntax.rb5
-rw-r--r--lib/sisu/v3/shared_xml.rb4
-rw-r--r--lib/sisu/v3/sst_do_inline_footnotes.rb1
-rw-r--r--lib/sisu/v3/texpdf.rb25
-rw-r--r--lib/sisu/v3/texpdf_format.rb4
7 files changed, 30 insertions, 12 deletions
diff --git a/lib/sisu/v3/dal_character_check.rb b/lib/sisu/v3/dal_character_check.rb
index bf393b76..c2109b9a 100644
--- a/lib/sisu/v3/dal_character_check.rb
+++ b/lib/sisu/v3/dal_character_check.rb
@@ -64,7 +64,6 @@ module SiSU_character_check
@endnote_array=[]
end
def character_check_and_oldstyle_endnote_array
- require 'iconv'
data=@data
@tuned_file,@endnote_array=[],[]
endnote_no=1
diff --git a/lib/sisu/v3/dal_doc_str.rb b/lib/sisu/v3/dal_doc_str.rb
index 52425437..2bf0305e 100644
--- a/lib/sisu/v3/dal_doc_str.rb
+++ b/lib/sisu/v3/dal_doc_str.rb
@@ -863,7 +863,7 @@ module SiSU_document_structure_extract
parent=node1=node2=node3=node4=node5=node6=nil
data.each do |dob|
h={}
- if dob.obj !~ regex_exclude_ocn_and_node \
+ if (dob.obj !~ regex_exclude_ocn_and_node || dob.is =='code') \
and dob.of !~/(?:comment|layout|meta)/ \
and dob.obj !~/#{Mx[:pa_non_object_no_heading]}|#{Mx[:pa_non_object_dummy_heading]}/ \
and dob.ocn_
diff --git a/lib/sisu/v3/dal_syntax.rb b/lib/sisu/v3/dal_syntax.rb
index e51316ed..6d56e4aa 100644
--- a/lib/sisu/v3/dal_syntax.rb
+++ b/lib/sisu/v3/dal_syntax.rb
@@ -443,7 +443,7 @@ module SiSU_Syntax
unless i == 0
cl.gsub!(Mx[:br_nl],'')
w=3-ln.to_s.length
- cl = "#{ln}#{Mx[:nbsp]*w}#{Mx[:vline]}#{Mx[:nbsp]}#{Mx[:nbsp]}#{cl}#{Mx[:br_nl]}"
+ cl = "#{ln}#{Mx[:nbsp]*w}#{Mx[:vline]}#{cl}#{Mx[:br_nl]}"
ln +=1
end
codeline << cl
@@ -451,8 +451,7 @@ module SiSU_Syntax
codeline= codeline.join("")
dob.obj=codeline
else
- dob.obj.gsub!(/#{Mx[:gr_o]}codeline#{Mx[:gr_c]}/,
- "\n#{Mx[:nbsp]}#{Mx[:nbsp]}") #temporary fix, prefer: #line.gsub!(/<:codeline>/,"\n")
+ dob.obj.gsub!(/#{Mx[:gr_o]}codeline#{Mx[:gr_c]}/,"\n")
end
dob
else # @\S+?:
diff --git a/lib/sisu/v3/shared_xml.rb b/lib/sisu/v3/shared_xml.rb
index a1a68593..f6cd6598 100644
--- a/lib/sisu/v3/shared_xml.rb
+++ b/lib/sisu/v3/shared_xml.rb
@@ -109,7 +109,7 @@ module SiSU_XML_munge
end
def char_enc #character encode
def utf8(dob='')
- if @sys.locale =~/utf-?8/i # instead ucs for utf8 #require 'iconv' ? Iñtërnâtiônàlizætiøn
+ if @sys.locale =~/utf-?8/i # instead ucs for utf8 # String#encode Iñtërnâtiônàlizætiøn
str=if defined? dob.obj; dob.obj
elsif dob.class==String; dob
end
@@ -224,7 +224,7 @@ module SiSU_XML_munge
end
end
def html(dob='')
- if @sys.locale =~/utf-?8/i # instead ucs for utf8 #require 'iconv' ? Iñtërnâtiônàlizætiøn
+ if @sys.locale =~/utf-?8/i # instead ucs for utf8 # String#encode Iñtërnâtiônàlizætiøn
dob.obj.gsub!(/ /u,' ') # space identify
dob.obj.gsub!(/ /u,' ') # space identify
else
diff --git a/lib/sisu/v3/sst_do_inline_footnotes.rb b/lib/sisu/v3/sst_do_inline_footnotes.rb
index 60247060..14d60ea0 100644
--- a/lib/sisu/v3/sst_do_inline_footnotes.rb
+++ b/lib/sisu/v3/sst_do_inline_footnotes.rb
@@ -217,7 +217,6 @@ module SiSU_Convert_footnotes
tuned_file
end
def character_check
- require 'iconv'
reset
data=@data
@tuned_file=[]
diff --git a/lib/sisu/v3/texpdf.rb b/lib/sisu/v3/texpdf.rb
index 96e51ed9..d36344cd 100644
--- a/lib/sisu/v3/texpdf.rb
+++ b/lib/sisu/v3/texpdf.rb
@@ -446,7 +446,8 @@ module SiSU_TeX
when /code/
sp_char=SiSU_TeX_Pdf::Special_characters.new(@md,dob.tmp,dob.is)
dob.tmp=sp_char.special_characters_safe
- dob.tmp.gsub!(/#{Mx[:nbsp]}/,'{~}') #dob.tmp.gsub!(/#{Mx[:nbsp]}\s*/,'{~}')
+ dob.tmp.gsub!(/(#{Mx[:nbsp]})/m,'{\color{mywhite}\1}')
+ #dob.tmp.gsub!(/#{Mx[:nbsp]}/m,'{~}') # dob.tmp.gsub!(/#{Mx[:nbsp]}\s*/m,'{~}')
dob.tmp.gsub!(/#{Mx[:vline]}/m,'\vline')
dob.tmp.gsub!(/ \\( |#{Mx[:br_nl]})/,' {\textbackslash}\1')
dob.tmp.gsub!(/#{Mx[:br_nl]}\s*\Z/m,'')
@@ -457,8 +458,10 @@ module SiSU_TeX
dob.tmp = ocn \
+ @tex_ml.paraskip_small \
+ '\begin{Codeblock}' \
+ + '\begin{codeblockboitebox} \hardspace \newline ' \
+ dob.tmp \
- + ' \end{Codeblock}' \
+ + '\end{codeblockboitebox}' \
+ + '\end{Codeblock}' \
+ "\n" \
+ @tex_ml.paraskip_normal
dob
@@ -595,6 +598,24 @@ module SiSU_TeX
\\newcommand{\\slash}{{/}}
\\newcommand{\\underscore}{\\_}
\\newcommand{\\exclaim}{\\Verbatim{!}}
+\\def\\codeblockboitebox{%
+ \\def\\bkvz@before@breakbox{\\ifhmode\\par\\fi\\vskip\\breakboxskip\\relax}%
+ \\def\\bkvz@set@linewidth{\\advance\\linewidth -2\\fboxrule
+ \\advance\\linewidth -2\\fboxsep} %
+ \\def\\bk@line{\\hbox to \\linewidth{%
+ \\ifbkcount\\smash{\\llap{\\the\\bk@lcnt\\ }}\\fi
+ \\psframebox*[framesep=0pt,linewidth=0pt]{%
+ \\vrule\\@width\\fboxrule \\hskip\\fboxsep
+ \\box\\bk@bxa
+ \\hskip\\fboxsep \\vrule\\@width\\fboxrule
+ }%
+ }}%
+ %\\def\\bkvz@top{\\hrule\\@height\\fboxrule}
+ \\def\\bkvz@top{\\hrule height .6pt}%
+ \\def\\bkvz@bottom{\\hrule\\@height\\fboxrule}%
+ \\breakbox}
+\\def\\endcodeblockboitebox{\\endbreakbox}
+
% (tilde hash amp affected by http)
% \\sloppy
\\begin{document}
diff --git a/lib/sisu/v3/texpdf_format.rb b/lib/sisu/v3/texpdf_format.rb
index 34169892..e65f9729 100644
--- a/lib/sisu/v3/texpdf_format.rb
+++ b/lib/sisu/v3/texpdf_format.rb
@@ -80,7 +80,6 @@ module SiSU_TeX_Pdf
end
end
class Format_text_object
- require 'iconv'
require_relative 'defaults' # defaults.rb
attr_accessor :string,:string1,:orientation,:url,:dir,:tex
@@sys=SiSU_Env::System_call.new
@@ -1049,6 +1048,7 @@ WOK
\\usepackage{textcomp}
\\usepackage[parfill]{parskip}
\\usepackage[normalem]{ulem}
+\\usepackage{boites}
\\usepackage{soul}
\\usepackage{longtable}
\\usepackage{graphicx}
@@ -1150,7 +1150,7 @@ WOK
@tex2pdf=@@tex3pdf ||=SiSU_Env::System_call.new.tex2pdf_engine
end
def xetex_special_characters_1(str,is='') # ~ ^ $ & % _ { } #LaTeX special characters - KEEP list
- #str=Iconv.conv('ISO-8859-1', 'UTF-8', @txt)
+ #str=Iconv.conv('ISO-8859-1', 'UTF-8', @txt) # `require': iconv will be deprecated in the future, use String#encode instead.
word=str.scan(/\S+|\n/) #unless line =~/^(?:@\S|%+\s)/
para_array=[]
str=if word