No release in over a year
Swap in really accurate citations using a wide variety of citation styles to your Blacklight app
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.29

Runtime

>= 4.4.6, < 7
 Project Readme

Blacklight::Citeproc

Swap in really accurate citations using a wide variety of citation styles to your Blacklight app.

Installation

Add this line to your application's Gemfile:

gem 'blacklight-citeproc'

And then execute:

$ bundle

And then run the install generator:

$ rails generate blacklight:citeproc:install

Go into your application's catalog controller, and set the correct fields:

config.citeproc = {
  bibtex_field: 'bibtex_s' # Optional. If you are already indexing BibTeX into solr, this will be the preferred way to get bibliographic data
  # If no bibtex_field defined, or if it is not found in the solr document, use these fields instead:
  fields: {
    address: 'published_ssm',
    annote: 'annotation_tsim',
    author: 'author_tsim',
    booktitle: 'booktitle_tsim',
    chapter: 'chapter_tsim',
    doi: 'doi_tsim',
    edition: 'edition_tsim',
    editor: 'editor_tsim',
    how_published: 'how_published_tsim',
    institution: 'institution_tsim',
    journal: 'journal_tsim',
    key: 'id',
    month: 'month_tsim',
    note: 'note_tsim',
    number: 'number_tsim',
    organization: 'organization_tsim',
    pages: 'pages_tsim',
    publisher: 'publisher_tsim',
    school: 'school_tsim',
    series: 'series_tsim',
    title: 'title_tsim',
    type: 'type_tsim',
    url: 'url_tsim',
    volume: 'number_tsim',
    year: 'pub_date_ssim'
  },
  styles: %w(apa chicago-fullnote-bibliography modern-language-association ieee council-of-science-editors),
  format: {
    field: format
    default_format: :book
    mappings: {
      article: [],
      book: ['Book', 'Musical Score', 'Ebook'],
      booklet: [],
      conference: [],
      inbook: [],
      incollection: [],
      inproceedings: [],
      manual: [],
      mastersthesis: [],
      misc: ['Map/Globe', 'Non-musical Recording', 'Musical Recording', 'Image', 'Software/Data', 'Video/Film'],
     phdthesis: [],
     proceedings: [],
     techreport: [],
     unpublished: []
    }
  }
}

Finally, go into your locale files and make sure to add friendly versions of the citations styles you are using for each locale your app uses.

en:
  blacklight:
    citeproc:
      styles:
        apa: APA 6th Edition

Development

You can get a very simple blacklight app that uses this gem by running docker-compose up -d.