aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib/sisu/current/ao_syntax.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sisu/current/ao_syntax.rb')
-rw-r--r--lib/sisu/current/ao_syntax.rb22
1 files changed, 20 insertions, 2 deletions
diff --git a/lib/sisu/current/ao_syntax.rb b/lib/sisu/current/ao_syntax.rb
index 554daae5..c3108668 100644
--- a/lib/sisu/current/ao_syntax.rb
+++ b/lib/sisu/current/ao_syntax.rb
@@ -61,8 +61,8 @@ module SiSU_AO_Syntax
end
end
class Markup
- def initialize(md='',data='')
- @md,@data=md,data
+ def initialize(md='',data='',biblio=[])
+ @md,@data,@bibliography=md,data,biblio
@data_new=[]
url_and_stub=SiSU_Env::InfoEnv.new.url
@output_url="#{url_and_stub.remote}"
@@ -221,6 +221,24 @@ module SiSU_AO_Syntax
end
def substitutions(dob)
dob=dob.dup
+ dob=if @md.flag_auto_biblio \
+ and @bibliography.length > 0
+ dob=if dob.is !=:meta \
+ && dob.is !=:heading_insert \
+ && dob.is !=:code \
+ && dob.is !=:comment \
+ && dob.is !=:table
+ @bibliography.each do |c|
+ if c[:id] and not c[:id].nil? and not c[:id].empty?
+ dob.obj=dob.obj.gsub(/#{c[:id]}/mi,c[:short_name])
+ end
+ end
+ dob
+ else dob
+ end
+ dob
+ else dob
+ end
dob=if defined? @md.substitution_match_list[:match_and_replace] \
and @md.substitution_match_list[:match_and_replace].is_a?(Array)
dob=if dob.is !=:meta \