4

I just installed Jekyll on Windows and I'm trying to make the syntax highlight work with rouge.

I have set highlighter: rouge on _config.yml.

In the file _posts\2015-08-13-my-first-post.md I got:

{% highlight javascript linenos %}
var s = "JavaScript syntax highlighting";
alert(s);
{% endhighlight %}

When I run bundle exec jekyll serve it outputs:

C:\Users\Fred\Documents\Projects\GithubPage>bundle exec jekyll serve
Configuration file: C:/Users/Fred/Documents/Projects/GithubPage/_config.yml
            Source: C:/Users/Fred/Documents/Projects/GithubPage
       Destination: C:/Users/Fred/Documents/Projects/GithubPage/_site
      Generating...
  Liquid Exception: cannot load such file -- rouge in _posts/2015-08-13-my-first-post.md
C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/tags/highlight.rb:103:in `require': cannot load such file -- rouge (LoadError)
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/tags/highlight.rb:103:in `render_rouge'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/tags/highlight.rb:54:in `render'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/liquid-2.6.3/lib/liquid/block.rb:109:in `block in render_all'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/liquid-2.6.3/lib/liquid/block.rb:96:in `each'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/liquid-2.6.3/lib/liquid/block.rb:96:in `render_all'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/liquid-2.6.3/lib/liquid/block.rb:82:in `render'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/liquid-2.6.3/lib/liquid/template.rb:128:in `render'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/liquid-2.6.3/lib/liquid/template.rb:138:in `render!'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/convertible.rb:106:in `render_liquid'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/convertible.rb:233:in `do_layout'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/post.rb:261:in `render'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/site.rb:298:in `block in render'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/site.rb:297:in `each'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/site.rb:297:in `render'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/site.rb:51:in `process'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/command.rb:28:in `process_site'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/commands/build.rb:56:in `build'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/commands/build.rb:34:in `process'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/lib/jekyll/commands/serve.rb:26:in `block (2 levels) in init_with_program'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `call'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `block in execute'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `each'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `execute'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/mercenary-0.3.5/lib/mercenary/program.rb:42:in `go'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/mercenary-0.3.5/lib/mercenary.rb:19:in `program'
        from C:/Ruby21-x64/lib/ruby/gems/2.1.0/gems/jekyll-2.5.3/bin/jekyll:20:in `<top (required)>'
        from C:/Ruby21-x64/bin/jekyll:23:in `load'
        from C:/Ruby21-x64/bin/jekyll:23:in `<main>'

The gems that I have installed are:

C:\Users\Fred\Documents\Projects\GithubPage>gem list --local

*** LOCAL GEMS ***

bigdecimal (1.2.4)
blankslate (2.1.2.4)
bundler (1.10.6)
celluloid (0.16.1)
classifier-reborn (2.0.3)
coffee-script (2.4.1)
coffee-script-source (1.9.1.1)
colorator (0.1)
execjs (2.5.2)
fast-stemmer (1.0.2)
ffi (1.9.10 x64-mingw32)
hitimes (1.2.2)
io-console (0.4.3)
jekyll (2.5.3)
jekyll-coffeescript (1.0.1)
jekyll-gist (1.3.0)
jekyll-paginate (1.1.0)
jekyll-sass-converter (1.3.0)
jekyll-watch (1.2.1)
json (1.8.1)
kramdown (1.8.0)
liquid (2.6.3)
listen (2.10.1)
mercenary (0.3.5)
minitest (4.7.5)
parslet (1.5.0)
posix-spawn (0.3.11)
psych (2.0.5)
pygments.rb (0.6.3)
rake (10.1.0)
rb-fsevent (0.9.5)
rb-inotify (0.9.5)
rdoc (4.1.0)
redcarpet (3.3.2)
rouge (1.9.1)
safe_yaml (1.0.4)
sass (3.4.16)
test-unit (2.1.6.0)
timers (4.0.1)
toml (0.1.2)
yajl-ruby (1.2.1)
fredzvt
  • 331
  • 2
  • 8
  • I just received an automatic e-mail from GitHub saying that rouge is not supported in GitHub Pages. It seems that this could be the problem and I have no alternative other than installing Python and pygments. Anyways, can anyone tell me if this is the reason of rouge not working on my development machine? Maybe because I'm using GitHub bundle. Can anyone confirm that? – fredzvt Aug 14 '15 at 03:15
  • For future readers: See [this issue](https://github.com/github/pages-gem/pull/79). – Jesse Good Oct 11 '15 at 09:21

2 Answers2

4

I had the same problem. I added the line

gem 'rouge'

to my Gemfile, then ran

bundle install

Then I could run

bundle exec jekyll build

without the error.

0

Github Pages work only with these plugins for security reasons.

Have you installed rouge in your Jekyll directory?

Here is a guide for syntax highlighting in Jekyll and installing Jekyll on a Windows machine that might help you.

codegaze
  • 755
  • 7
  • 15