Sha256: d1e8983fda83f12b28673ad9eb630d0d49c54b47b315c33976a37a2a32f6a789

Contents?: true

Size: 1.37 KB

Versions: 6

Compression:

Stored size: 1.37 KB

Contents

# coding: utf-8

require "asciidoctor-bibliography"

TEST_BIBTEX_DATABASE = <<~BIBTEX.freeze
  @article{Erdos65,
    title = {Some very hard sums},
    journal={Difficult Maths Today},
    author={Paul Erdős and Arend Heyting and Luitzen Egbertus Brouwer},
    year={1965},
    pages={30}
  }

  @article{Einstein35,
    title={Can quantum-mechanical description of physical reality be considered complete?},
    author={Einstein, Albert and Podolsky, Boris and Rosen, Nathan},
    journal={Physical review},
    volume={47},
    number={10},
    pages={777},
    year={1935},
    publisher={APS}
  }
BIBTEX

def init_bibliographer(bibtex_db:, options: {})
  bibliographer = AsciidoctorBibliography::Bibliographer.new

  bibliographer.options = AsciidoctorBibliography::Options.new.
    merge("bibliography-hyperlinks" => "false").merge(options)

  bibliographer.database = AsciidoctorBibliography::Database.new.
    concat(::BibTeX.parse(bibtex_db).to_citeproc)

  bibliographer
end

def formatted_citation(macro, options: {})
  bibliographer = init_bibliographer bibtex_db: TEST_BIBTEX_DATABASE,
                                     options: options

  macro.gsub(AsciidoctorBibliography::Citation::REGEXP) do
    citation = AsciidoctorBibliography::Citation.new(*Regexp.last_match.captures)
    bibliographer.add_citation(citation)
    citation.render bibliographer
  end.gsub(/^{empty}/, "")
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
asciidoctor-bibliography-0.5.0 spec/citation_helper.rb
asciidoctor-bibliography-0.5.1 spec/citation_helper.rb
asciidoctor-bibliography-0.4.4 spec/citation_helper.rb
asciidoctor-bibliography-0.4.3 spec/citation_helper.rb
asciidoctor-bibliography-0.4.2 spec/citation_helper.rb
asciidoctor-bibliography-0.4.1 spec/citation_helper.rb