aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2007-09-05 20:57:59 +0100
committerRalph Amissah <ralph@amissah.com>2007-09-05 20:57:59 +0100
commit459119df8d101ca0cf21c9cfede5ce502ff402ba (patch)
treebd126c4a0409762dd7f05e421e594517489d596e
parentsisu-0.58.1 + md5s (diff)
code-block exceptions for composite documents sisu-0.58.2
-rw-r--r--CHANGELOG8
-rw-r--r--lib/sisu/v0/composite.rb17
-rw-r--r--lib/sisu/v0/texinfo.rb25
3 files changed, 35 insertions, 15 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 1ec36c32..06edce7d 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -3,6 +3,14 @@ Reverse Chronological:
%% STABLE MANIFEST
+%% sisu_0.58.2.orig.tar.gz (2007-09-05:36/3)
+http://www.jus.uio.no/sisu/pkg/src/sisu_0.58.2.orig.tar.gz
+ sisu_0.58.2.orig.tar.gz
+ sisu_0.58.2-1.dsc
+ sisu_0.58.2-1.diff.gz
+
+ * code-block exceptions for composite documents
+
%% sisu_0.58.1.orig.tar.gz (2007-09-04:36/2)
http://www.jus.uio.no/sisu/pkg/src/sisu_0.58.1.orig.tar.gz
2b46ddfcfd9985c13535733eb822cdbd 1277392 sisu_0.58.1.orig.tar.gz
diff --git a/lib/sisu/v0/composite.rb b/lib/sisu/v0/composite.rb
index 2569474b..6223743c 100644
--- a/lib/sisu/v0/composite.rb
+++ b/lib/sisu/v0/composite.rb
@@ -151,12 +151,19 @@ module SiSU_Assemble
rgx_image=/([a-zA-Z0-9._-]+?\.(?:png|jpg|gif))/
#file[:prepared] << "#% Date " << "\n"
file[:prepared] << "\n% |#{fni}|@|^|>>ok\n"
+ @code_flag=false
insert_array.each do |i|
- i.gsub!(/^([12]|:?[AB])~\? /,'% [conditional heading:] \1~ ') #off conditional heading (consider syntax)
- if i =~/^0~|^@\S+?:/
- i.gsub!(/\n/m,"\n% ")
- i.gsub!(/\n%\s+$/m,'')
- i.gsub!(/^0~|^@\S+?:/m,"\n% [imported header:] ") #off imported headers
+ @code_flag=if i =~/^code\{/; true
+ elsif i =~/^\}code/; false
+ else @code_flag
+ end
+ unless @code_flag
+ i.gsub!(/^([12]|:?[AB])~\? /,'% [conditional heading:] \1~ ') #off conditional heading (consider syntax)
+ if i =~/^0~|^@\S+?:/
+ i.gsub!(/\n/m,"\n% ")
+ i.gsub!(/\n%\s+$/m,'')
+ i.gsub!(/^0~|^@\S+?:/m,"\n% [imported header:] ") #off imported headers
+ end
end
file[:prepared] << i
file[:images] << i.scan(rgx_image).uniq if i =~rgx_image #flag
diff --git a/lib/sisu/v0/texinfo.rb b/lib/sisu/v0/texinfo.rb
index c46f81ba..6c47ae4c 100644
--- a/lib/sisu/v0/texinfo.rb
+++ b/lib/sisu/v0/texinfo.rb
@@ -191,17 +191,17 @@ module SiSU_TexInfo
@@counting=0
data.each do |para|
if para =~ /<:code>/
- @@flag['code']=1
+ @@flag['code']=true
@@counting=1
end
if para =~ /<:verse>/
@@flag['poem']=1
end
- if @@flag['code']==1
- if @@flag['code']==1 and para =~ /<:code[-_](?:end|close)>/ #watch change not tested 200501
- @@flag['code']=0
+ if @@flag['code']
+ if @@flag['code'] and para =~ /<:code[-_](?:end|close)>/ #watch change not tested 200501
+ @@flag['code']=false
end
- if @@flag['code']==1 and para =~ /\S/
+ if @@flag['code'] and para =~ /\S/
sub_array=para.dup
@@line_mode=sub_array.scan(/.+/)
Tune.code_lines(@@line_mode)
@@ -225,9 +225,9 @@ module SiSU_TexInfo
data=@data
data.each do |line|
if line =~ /\S/ and line !~ /<:(code|verse).+/
- if @@flag['code']==1
+ if @@flag['code']
line.gsub!(/^\s*(.+)/m, "\\noindent \\marginpar\[left-text\]{\\begin{tiny}#{@@counting}\\end{tiny}}\\1\\")
- @@counting+=1 if @@flag['code']==1
+ @@counting+=1 if @@flag['code']
else line.gsub!(/(.+)/m,'\noindent\1')
end
end
@@ -248,6 +248,8 @@ module SiSU_TexInfo
def markup
data=@data
@tex_file=[]
+ @row_break='\\\\\\'
+ @break_page="#@row_break\n#@row_break \n"
md={}
@tex_file << TexInfoFormat::Texinfo.new('',@md).head
mono=TexInfoFormat::Texinfo.new(@md.title,@md)
@@ -256,11 +258,11 @@ module SiSU_TexInfo
n_menu,n_submenu=0,0
@submenu,@subsubmenu={},{}
data.each do |para|
+ para.gsub!(/\s*<:name#example>\s*/,' ')
if para =~ /^[1-3]\\+~\S*(.+?)\s*$/
toc=TexInfoFormat::Texinfo.new($1,@md)
texinfo_menu << toc.menu
- end
- if para =~ /^[4-6]\\+~(?:\S+)?\s+(.+?)\s*$/
+ elsif para =~ /^[4-6]\\+~(?:\S+)?\s+(.+?)\s*$/
toc=TexInfoFormat::Texinfo.new($1,@md)
texinfo_menu << toc.menu
case para
@@ -276,6 +278,9 @@ module SiSU_TexInfo
@subsubmenu[n_submenu]=[]
@subsubmenu[n_submenu] << toc.menu
end
+ else
+ #para.gsub!(/\s*(?:<:?br>|<br \/>)\s*/,"\n#@row_break ")
+ para.gsub!(/\s*(?:<:?br>|<br \/>)\s*/,"\n\n")
end
end
texinfo_menu.compact!
@@ -332,7 +337,7 @@ module SiSU_TexInfo
para.gsub!(/<\\~(\d+);(?:\w|[0-6]:)\d+;\w\d+><#@dp:#@dp>$/,'<\1>')
#para.gsub!(/<\\~(\d+);\w\d+;\w\d+><#@dp:#@dp>/,'<\1>')
#para.gsub!(/<\\~(\d+);\w\d+;\w\d+><#@dp:#@dp>/,'<\1>')
- para=para
+ para
end
end
#%case with endnotes