I adding new features into my weblog that makes it possible to add block-styled side content. I don’t know if there is any terms for this but the gems plugin that I use named as “Premonition” develop by Mr lazee.

Actually, I accidently found this plugin when looking solution for my custom plantUML base64 plugin. I tried but got error.. nevertheless , this morning I install the plugin again and check what is wrong.

C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/premonition-4.0.0/lib/premonition/processor.rb:55:in block in load_references’: undefined method match' for nil:NilClass (NoMethodError)

The error message as show above is what I get after bundle exec jekyll serve --trace executed.

As n00b ruby developer and jekyll script kiddie, I encounter same error for my previous project. There is some where that maybe cause by variable or method that got ==null== or ==zero== value and unable to complete the job.

I already created issue #29 and submit pull request #30 to origin project for solution on error that been mentioned. You may check there since I also dont know when original developer will check and I don’t know possibility to be merge with master branch. if you still interested to use my repo directly then add gem "premonition", git: 'https://github.com/RobbiNespu/premonition.git', branch: 'dev' , ref: 'ab54d0e' on your gemfile and add premonition as plugin (as per usual) and run bundle install.

Some beautiful example using premonition plugin

Citation

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

-- Mark Twain
 > citation "-- Mark Twain" [ cite = "twain" ]
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Note with title

My note

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

 > notes "My note"
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Note without title

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

 > notes ""
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Info box

The information header

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

 > info "The information header"
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Warning box

The information header

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

 > warning "The information header"
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Error box

The information header

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

 > error "The information header"
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Custom box

A custom box with a Font Awesome icon

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor. Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

 > custom "A custom box with a Font Awesome icon"
 > Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean interdum, ligula in
 > ultrices sodales, ante enim scelerisque diam, nec molestie lorem nulla sit amet dolor.
 > Aenean id augue ante. Duis ut mi faucibus, pellentesque sem quis, gravida nisi. Nam cursus.

Error box with Markdown

The information header

Premonition allows you to add

  • Lists
  • like this

Use formatting and add code blocks.

Isn't that sweet?

Anything you can do in Markdown, you can do here.

 > error "The information header"
 > [Premonition](https://github.com/lazee/premonition) allows you to add
 >
 > * Lists
 > * like this
 >
 > Use *formatting* and add code blocks.
 >
 > ~~~~
 > Isn't that sweet?
 > ~~~~~
 > Anything you can do in Markdown, you can do here. Expect from embeds Premonition boxes ;)

Render error

If an unknown type is used, this error will appear:

PREMONITION ERROR: Invalid box type

You have specified an invalid box type "foo". You can customize your own box types in `_config.yml`. See documentation for more help.
> foo "Linked"
> Unknown type

Satisfaction

My current template have built-in feature to make info box (I added by myself using css trick) like this msg now but I think this premonition gem plugin do the job much better in appearance. I am happy and thank you so much for this awesome gem. It sure does look beautiful. Thank you so much!

Edit