highlight plugin updates; support for line numbers and highlighting specific lines

main
Hakim El Hattab 4 years ago
parent b6e136776a
commit cef864a7be
  1. 17
      css/reveal.css
  2. 24
      css/reveal.scss
  3. 38
      demo.html
  4. 83
      plugin/highlight/highlight.js

@ -1436,6 +1436,23 @@ body {
opacity: 0;
visibility: hidden; }
/*********************************************
* CODE HIGHLGIHTING
*********************************************/
.reveal .hljs table {
margin: initial; }
.reveal .hljs.highlight-lines tr:not(.highlight-line) {
opacity: 0.25; }
.reveal .hljs-ln-code,
.reveal .hljs-ln-numbers {
padding: 0;
border: 0; }
.reveal .hljs-ln-numbers {
padding-right: 10px; }
/*********************************************
* ROLLING LINKS
*********************************************/

@ -1549,7 +1549,6 @@ $controlsArrowAngleActive: 36deg;
}
/*********************************************
* PLAYBACK COMPONENT
*********************************************/
@ -1570,6 +1569,29 @@ $controlsArrowAngleActive: 36deg;
}
/*********************************************
* CODE HIGHLGIHTING
*********************************************/
.reveal .hljs table {
margin: initial;
}
.reveal .hljs.highlight-lines tr:not(.highlight-line) {
opacity: 0.25;
}
.reveal .hljs-ln-code,
.reveal .hljs-ln-numbers {
padding: 0;
border: 0;
}
.reveal .hljs-ln-numbers {
padding-right: 10px;
}
/*********************************************
* ROLLING LINKS
*********************************************/

@ -199,16 +199,16 @@
</section>
<section data-background="https://s3.amazonaws.com/hakim-static/reveal-js/image-placeholder.png">
<h2>Image Backgrounds</h2>
<pre><code class="hljs">&lt;section data-background="image.png"&gt;</code></pre>
<pre><code class="hljs html">&lt;section data-background="image.png"&gt;</code></pre>
</section>
<section data-background="https://s3.amazonaws.com/hakim-static/reveal-js/image-placeholder.png" data-background-repeat="repeat" data-background-size="100px">
<h2>Tiled Backgrounds</h2>
<pre><code class="hljs" style="word-wrap: break-word;">&lt;section data-background="image.png" data-background-repeat="repeat" data-background-size="100px"&gt;</code></pre>
<pre><code class="hljs html" style="word-wrap: break-word;">&lt;section data-background="image.png" data-background-repeat="repeat" data-background-size="100px"&gt;</code></pre>
</section>
<section data-background-video="https://s3.amazonaws.com/static.slid.es/site/homepage/v1/homepage-video-editor.mp4,https://s3.amazonaws.com/static.slid.es/site/homepage/v1/homepage-video-editor.webm" data-background-color="#000000">
<div style="background-color: rgba(0, 0, 0, 0.9); color: #fff; padding: 20px;">
<h2>Video Backgrounds</h2>
<pre><code class="hljs" style="word-wrap: break-word;">&lt;section data-background-video="video.mp4,video.webm"&gt;</code></pre>
<pre><code class="hljs html" style="word-wrap: break-word;">&lt;section data-background-video="video.mp4,video.webm"&gt;</code></pre>
</div>
</section>
<section data-background="http://i.giphy.com/90F8aUepslB84.gif">
@ -221,7 +221,7 @@
<p>
Different background transitions are available via the backgroundTransition option. This one's called "zoom".
</p>
<pre><code class="hljs">Reveal.configure({ backgroundTransition: 'zoom' })</code></pre>
<pre><code class="hljs javascript">Reveal.configure({ backgroundTransition: 'zoom' })</code></pre>
</section>
<section data-transition="slide" data-background="#b5533c" data-background-transition="zoom">
@ -229,25 +229,25 @@
<p>
You can override background transitions per-slide.
</p>
<pre><code class="hljs" style="word-wrap: break-word;">&lt;section data-background-transition="zoom"&gt;</code></pre>
<pre><code class="hljs html" style="word-wrap: break-word;">&lt;section data-background-transition="zoom"&gt;</code></pre>
</section>
<section>
<h2>Pretty Code</h2>
<pre><code class="hljs" data-trim contenteditable>
function linkify( selector ) {
if( supports3DTransforms ) {
var nodes = document.querySelectorAll( selector );
for( var i = 0, len = nodes.length; i &lt; len; i++ ) {
var node = nodes[i];
if( !node.className ) {
node.className += ' roll';
}
}
}
<pre><code class="hljs line-numbers" data-trim data-highlight-lines="4,8-9">
import React, { useState } from 'react';
function Example() {
const [count, setCount] = useState(0);
return (
&lt;div&gt;
&lt;p&gt;You clicked {count} times&lt;/p&gt;
&lt;button onClick={() =&gt; setCount(count + 1)}&gt;
Click me
&lt;/button&gt;
&lt;/div&gt;
);
}
</code></pre>
<p>Code syntax highlighting courtesy of <a href="http://softwaremaniacs.org/soft/highlight/en/description/">highlight.js</a>.</p>

File diff suppressed because one or more lines are too long
Loading…
Cancel
Save