aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/v2/param.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/v2/param.rb')
-rw-r--r--lib/sisu/v2/param.rb21
1 files changed, 20 insertions, 1 deletions
diff --git a/lib/sisu/v2/param.rb b/lib/sisu/v2/param.rb
index 87dd9aab..bf32fc59 100644
--- a/lib/sisu/v2/param.rb
+++ b/lib/sisu/v2/param.rb
@@ -514,6 +514,11 @@ module SiSU_Param
l,n=Db[:col_classify_library],'classify.dewey'
validate_length(s,l,n)
end
+ def oclc
+ s=@h['oclc']
+ l,n=Db[:col_classify_library],'classify.oclc'
+ validate_length(s,l,n)
+ end
def pg
s=@h['pg']
l,n=Db[:col_classify_small],'classify.pg'
@@ -927,7 +932,7 @@ module SiSU_Param
l=determine_papersize(l.dup)
@papersize=l
end
- when /^@make:(.+)/m #% metainfo DC
+ when /^@make:(.+)/m #% metainfo DC
@make=Md.new($1.strip,@opt).make
if defined? @make.breaks \
and @make.breaks[:page_new] #clearpage
@@ -1097,6 +1102,20 @@ module SiSU_Param
@rights=Md_default.new.rights("[#{@creator.author}]",'')
end
end
+ if defined? @classify.topic_register \
+ and @classify.topic_register.length >3
+ topic_register=@classify.topic_register
+ u=topic_register.scan(/[^;]+/)
+ v=[]
+ u.each do |l|
+ v << l.scan(/[^:]+/)
+ end
+ v.each do |m|
+ m[-1]=m[-1].scan(/[^|]+/) if m[-1] =~/[|]/
+ @topic_register_array << m
+ end
+ @topic_register_array.sort!
+ end
if @markup_version.to_f >= 0.38 #convert values in headers to internal representation
translated=[]
translate_list=[@pagenew,@pagebreak,@num_top,@toc_lev_limit]