Overview
We use PrismJs to syntax highlight code snippets. You have to put your code inside <pre><code class="language-xxxx">
which xxxx
is the name of language.
<p>Something to show in <strong>bold</strong> text.</p>
...
<i>Italic text</i>
If you need to include line numbers, add class .line-numbers
to the <pre>
tag.
<p>Something to show in <strong>bold</strong> text.</p>
...
<i>Italic text</i>
If you want to show language name, wrap your <pre>
by a .code.show-language
div.
<p>Something to show in <strong>bold</strong> text.</p>
...
<i>Italic text</i>
If you want to remove the copy-to-clipboard button, just add a .no-copy
to <pre>
tag.
<p>Something to show in <strong>bold</strong> text.</p>
...
<i>Italic text</i>
Supported languages
This is the list of all languages currently supported by Prism, with their corresponding alias, to use in place of xxxx
in the language-xxxx
class:
- HTML/XML
markup
- CSS
css
- C-like
clike
- JavaScript
javascript
- ActionScript
actionscript
- ASP.NET (C#)
aspnet
- Bash
bash
- BASIC
basic
- C
c
- C#
csharp
- C++
cpp
- CoffeeScript
coffeescript
- F#
fsharp
- Git
git
- Go
go
- Groovy
groovy
- Haml
haml
- Haskell
haskell
- HTTP
http
- Ini
ini
- Jade
jade
- Java
java
- JSON
json
- LaTeX
latex
- Less
less
- Makefile
makefile
- Markdown
markdown
- MATLAB
matlab
- Objective-C
objectivec
- Pascal
pascal
- Perl
perl
- PHP
php
- Prolog
prolog
- Python
python
- R
r
- React JSX
jsx
- Ruby
ruby
- Sass (Sass)
sass
- Sass (Scss)
scss
- Scala
scala
- SQL
sql
- Swift
swift
- TypeScript
typescript
- Wiki markup
wiki
- YAML
yaml
Line highlight
You specify the lines to be highlighted through the data-line
attribute on the <pre>
element, in the following simple format:
- A single number refers to the line with that number
- Ranges are denoted by two numbers, separated with a hyphen (-)
- Multiple line numbers or ranges are separated by commas.
- Whitespace is allowed anywhere and will be stripped off.
Examples:
data-line="5"
The 5th linedata-line="1-5"
Lines 1 through 5data-line="1,4"
Line 1 and line 4data-line="1-2, 5, 9-20"
Lines 1 through 2, line 5, lines 9 through 20
You can also link to specific lines on any code snippet, by using the following as a url hash: #{element-id}.{lines}
where {element-id}
is the id of the <pre>
element and {lines}
is one or more lines or line ranges that follow the format outlined above. For example, if there is an element with id="highlighter"
on the page, you can link to lines 7-8 by linking to #highlighter.7-8
<p>This is a normal paragraph without any contextual classes.</p>
<p class="text-primary">A paragraph with .text-primary class.</p>
<p class="text-success">A paragraph with .text-success class.</p>
<p class="text-info">A paragraph with .text-info class.</p>
<p class="text-warning">A paragraph with .text-warning class.</p>
<p class="text-danger">A paragraph with .text-danger class.</p>
<p class="text-purple">A paragraph with .text-purple class.</p>
<p class="text-teal">A paragraph with .text-teal class.</p>
<p class="text-gray">A paragraph with .text-gray class.</p>
<p class="text-dark">A paragraph with .text-dark class.</p>
Code wrapper
Wrap your sample preview inside a .code-preview
and place it right before the <pre>
. You even can have a .code-title
to write some description about the code.
When your <pre>
comes with .code-title
and/or .code-preview
, you should wrap them inside a .code
. So you'll have a structure as follow:
<div class="code show-language">
<div class="code-title"></div>
<div class="code-preview"></div>
<pre><code class="language-markup"></code></pre>
</div>
Here's an example:
Code title
Some description about the below code and preview
Something to show in bold text.
A paragraph with .text-danger class.
Italic text<p>Something to show in <strong>bold</strong> text.</p>
<p class="text-danger">A paragraph with .text-danger class.</p>
<i>Italic text</i>
Code toggler
Following code instruct you on how to add a button to toggle your code area.
<div class="code code-fold show-language">
<div class="code-title"></div>
<div class="code-preview"></div>
<pre><code class="language-markup"></code></pre>
<div class="code-toggler">
<button class="btn btn-square"><i class="ion-code"></i></button>
</div>
</div>
Here's an example:
Code title
Some description about the below code and preview
Something to show in bold text.
A paragraph with .text-danger class.
Italic text<p>Something to show in <strong>bold</strong> text.</p>
<p class="text-danger">A paragraph with .text-danger class.</p>
<i>Italic text</i>