# File mk, line 590 def parse_aux(basename) aux = "#{basename}.aux" bibs = [] File.exist?(aux) or return [] open(aux).readlines.each do |l| k,*x = l.scan(/\w+/) bibs += x if k == 'bibdata' end bibs.uniq! bibs.map! do |b| bbib = b + '.bib' bbib = kpsewhich(bbib) or quit("bib file #{bbib} not found",1) # following is needed because texi2dvi does not detect changes in # .bib files - if any included .bib file is newer than the .log # file, remove the .bbl file: File.exist?("#{b}.bbl") && File.mtime(bbib) < File.mtime("#{basename}.log") and File.delete("#{basename}.bbl") bbib # add .bib extension to array elements end return bibs end