gollum: Unable to Create Citations via YAML Frontmatter

Currently, I have a .md that I am trying to render a citation in via YAML front matter and the instructions you gave here: github.com/gollum/gollum/wiki/BibTeX-and-Citations

So far, I am having no luck with doing this as it seems to ignore that I have installed the ruby gems for rendering the citations.

Here is an example of my markdown file:

---
bibliography: reference.bib
---

Hello world!

[@clearZettelkastenHowOne2020]

Here is my .bib file for reference:

@online{clearZettelkastenHowOne2020,
  title = {Zettelkasten — {{How One German Scholar Was So Freakishly Productive}}},
  author = {Clear, David B.},
  date = {2020-01-06T19:34:37.216Z},
  journaltitle = {Medium},
  url = {https://writingcooperative.com/zettelkasten-how-one-german-scholar-was-so-freakishly-productive-997e4e0ca125},
  urldate = {2020-03-08},
  abstract = {Luhmann wrote over 70 books and more than 400 scholarly articles using the Zettelkasten notetaking method.},
  file = {/home/cedarprince/Zotero/storage/35M92CSF/zettelkasten-how-one-german-scholar-was-so-freakishly-productive-997e4e0ca125.html},
  langid = {english},
  note = {Library Catalog: writingcooperative.com}
}

Instead, the frontmatter is getting rendered at the top like this:

image


Here is the output of my gollum versions:

$ bundle exec bin/gollum --versions

Gollum 5.0.1b
Running on: x86_64-linux with Ruby version 2.6.5
Using:
gollum-grit_adapter 1.0.1
gollum-lib 5.0.a.4
rugged 0.28.4.1
gollum-rugged_adapter 0.4.4
With the following renderers:
kramdown 2.1.0

Any thoughts on what I am doing wrong? Am I using the YAML incorrectly? Thanks for the assistance!

About this issue

  • Original URL
  • State: closed
  • Created 4 years ago
  • Comments: 24 (24 by maintainers)

Most upvoted comments

Perfect! Thanks for all the help @dometto ! 😄

@TheCedarPrince I was to quick in answering and had to update my answer above. Just wanted to let you know in case you were already trying it.

That fixed it! Thanks @bartkamphorst and @dometto !

👍 I’m going to assume that solves the issue then, but feel free to post here if you require more assistance, @TheCedarPrince

I’ve opened a separate issue for the difficulties with h1 title: #1484

Perhaps an old Gemfile.lock was preventing you from installing the newest gollum-lib?

This was my issue. To resolve, I took the following steps:

  • bundle exec gem uninstall gollum-grit_adapter
  • bundle update

(This reported “Using gollum-lib 5.0.a.4 from https://github.com/gollum/gollum-lib.git (at gollum-lib-5.x@603f08e)”)

Then bundle exec gollum --versions showed this:

$ bundle exec gollum --adapter rugged --versions
Gollum 5.0.1b
Running on: [...] with Ruby version 2.6.3
Using:
rugged 0.99.0
gollum-rugged_adapter 0.99.4
gollum-lib 5.0.a.4
Markdown rendering gem: kramdown
Other renderering gems:
none

Then I was able to start gollum with bundle exec gollum ../gollum-wiki.

(Note that my Gemfile did not reference the rugged adapter in this setup.)

Gollum shows the YAML front matter for a page by default. You can disable this, though, as follows (from the wiki):

If you do not wish front matter to be displayed in this way, there are two options:

  • disable globally by running gollum with the --no-display-metadata command line option
    • or equivalently, by setting the wiki option :display_metadata in your config.rb to false
  • disable on a per-page basis:
    • simply set display_metadata: false in your front matter!

The fix has been merged. Try to:

  • Freshly clone gollum
  • fetch/checkout the 5.x branch
  • Add to your Gemfile:
gem 'bibtex-ruby'
gem 'citeproc-ruby'
gem 'csl-styles'
  • run bundle install
  • Profit

😃

If this problem persists, can you point me to an example repo?

If you have the fix from https://github.com/gollum/gollum-lib/pull/356 that’s puzzling! It’s working well for me locally. Just to make sure: you’ve committed the .bib file to the repository?

@TheCedarPrince yes you’re right, you should add the gems to the Gemfile (as long as you’re running gollum through bundle exec – after we release 5.0, this won’t be necessary anymore). Sorry, should have mentioned that!

When I modify the GEMFILE to this, it does not throw an error but can find the gem

Have you tried running bundle install?

When the fix is merged (probably today/Monday), running bundle install should update gollum-lib and make everything work again 👍

@TheCedarPrince thanks for reporting this, that’s a bug. Turns out github-markup is encountering the kramdown gem before it encounters pandoc-ruby, and hence uses the former. This is because you can’t enforce the order of keys in ruby Hashes – in previous rubies, it was encountering pandoc-ruby before kramdown by chance. Fix in https://github.com/gollum/gollum-lib/pull/356

(I’m assuming you have pandoc-ruby and citeproc-ruby installed, they unfortunately don’t show up in the output of --versions.)