August 23, 2018

Blogging using GNU Emacs, Org-Mode and Jekyll

  —Remedies for gotcha's with GNU Emacs, Org-Mode and Jekyll.

Remedies for gotcha’s encountered while setting up Org-Mode and Jekyll.

Performed on a Mid-2013 MacBook Pro (OS X El Captain 10.11.6).

Steps

  1. Install RVM.

    Install script obtained from Secure Installation.

    Validate RVM installation.

    Error: shell_session_update: command not found

    Remedy: Install RVM from HEAD. See /bin/bash: shell_session_update: command not found #210.

  2. Install Jekyll.

    https://jekyllrb.com/docs/installation/

    Install Ruby Gems after using RVM to set up Ruby blogging environment. Doing so ensures that gem update --system does not affect the Ruby installation installed by Apple.

  3. Install MacPorts nodejs6.

  4. Setup a Python Virtual Environment for the blog.

    Not necessary, but I like to keep my Python environments separate.

  5. Install Jekyll.

    Used ‘gem install jekyll’.

  6. Using org to Blog with Jekyll

    Error: org-publish-org-to-html is nil

    Remedy: Change org-publish-org-to-html to org-html-publish-to-html.

  7. In Emacs, type C-c C-e P x. Prepares my blog entries for use by Jekyll.

  8. Install a theme. I choose the Jekyll-Clean theme.

  9. Run

    jekyll serve –baseurl=’’

Tool Chain

  • RVM rvm 1.27.0 (master)
  • Ruby ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]
  • Ruby Gems:
    • bigdecimal (default: 1.2.8)
    • bundler-unload (1.0.2)
    • colorator (1.1.0)
    • did_you_mean (1.0.0)
    • executable-hooks (1.3.2)
    • ffi (1.9.14)
    • forwardable-extended (2.6.0)
    • gem-wrappers (1.2.7)
    • io-console (default: 0.4.5)
    • jekyll (3.2.1)
    • jekyll-sass-converter (1.4.0)
    • jekyll-watch (1.5.0)
    • json (default: 1.8.3)
    • kramdown (1.12.0)
    • liquid (3.0.6)
    • listen (3.0.8)
    • mercenary (0.3.6)
    • minitest (5.8.3)
    • net-telnet (0.1.1)
    • pathutil (0.14.0)
    • power_assert (0.2.6)
    • psych (default: 2.0.17)
    • rake (10.4.2)
    • rb-fsevent (0.9.7)
    • rb-inotify (0.9.7)
    • rdoc (default: 4.2.1)
    • rouge (1.11.1)
    • rubygems-bundler (1.4.4)
    • rubygems-update (2.6.6)
    • rvm (1.11.3.9)
    • safe_yaml (1.0.4)
    • sass (3.4.22)
    • test-unit (3.1.5)
  • Node.js 6.5.0
  • GNU Emacs 24.5
  • GNU Emacs’ Org-Mode 20160905
comments powered by Disqus