Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to support scrolling when using pygments with Jekyll

Is it possible to use horizontal scrolling rather than text wrapping in a code section highlughted with pygments when working in Jekyll.

Source of document:

{% highlight bash %}

Full thread dump OpenJDK Client VM (19.0-b09 mixed mode, sharing):

"Attach Listener" daemon prio=10 tid=0x0a482400 nid=0x5105 waiting on condition [0x00000000]
java.lang.Thread.State: RUNNABLE
....
{% endhighlight %}

Generated page (Notice the hex address being wrapped rather than scrolled): enter image description here

like image 772
Usman Ismail Avatar asked Jun 19 '12 01:06

Usman Ismail


4 Answers

Find your highlight.css at: /PROJECT_ROOT/assets/themes/THEME_NAME/css/highlight.css

and add this line at the end:

pre { white-space: pre; overflow: auto; }

Thanks @manatwork for the solution.

like image 153
Usman Ismail Avatar answered Oct 30 '22 09:10

Usman Ismail


this answer deals specifically with using pygments and jekyll on github pages

the highlighting is generated thusly:

<div class="highlight">
  <pre>
    <code>
      ... pygments highlighting spans ...
    </code>
  </pre>
</div>

the css that will get you where you want is:

// -- selector prefixed to the wrapper div for collision prevention

.highlight pre code * {
  white-space: nowrap;    // this sets all children inside to nowrap
}

.highlight pre {
  overflow-x: auto;       // this sets the scrolling in x
}

.highlight pre code {
  white-space: pre;       // forces <code> to respect <pre> formatting
}
like image 30
Doug Lee Avatar answered Oct 30 '22 10:10

Doug Lee


I was using Jekyll and Twitter Bootstrap, and the following is what worked for me in the end:

.highlight pre {
    word-wrap: normal;
}

.highlight pre code {
    white-space: pre;
}
like image 25
Hady Avatar answered Oct 30 '22 09:10

Hady


As for me, using the latest and greates Jekyll & highlighter releases, this nailed the issue:

/* Make code block overflow */
.highlight pre {
  display: inline-block;
}
like image 27
Mazyod Avatar answered Oct 30 '22 10:10

Mazyod