many small updates
[pharext/pharext.org] / public / highlight / README.md
1 # Highlight.js
2
3 [![Build Status](https://travis-ci.org/isagalaev/highlight.js.svg?branch=master)](https://travis-ci.org/isagalaev/highlight.js)
4
5 Highlight.js is a syntax highlighter written in JavaScript. It works in the
6 browser as well as on the server. It works with pretty much any markup,
7 doesn’t depend on any framework and has automatic language detection.
8
9
10 ## Getting Started
11
12 The bare minimum for using highlight.js on a web page is linking to the library
13 along with one of the styles and calling [`initHighlightingOnLoad`][1]:
14
15 ```html
16 <link rel="stylesheet" href="/path/to/styles/default.css">
17 <script src="/path/to/highlight.pack.js"></script>
18 <script>hljs.initHighlightingOnLoad();</script>
19 ```
20
21 This will find and highlight code inside of `<pre><code>` tags; it tries to detect
22 the language automatically. If automatic detection doesn’t work for you, you can
23 specify the language in the `class` attribute:
24
25 ```html
26 <pre><code class="html">...</code></pre>
27 ```
28
29 The list of supported language classes is available in the [class reference][8].
30 Classes can also be prefixed with either `language-` or `lang-`.
31
32 To disable highlighting altogether use the `nohighlight` class:
33
34 ```html
35 <pre><code class="nohighlight">...</code></pre>
36 ```
37
38 ## Custom Initialization
39
40 When you need a bit more control over the initialization of
41 highlight.js, you can use the [`highlightBlock`][2] and [`configure`][3]
42 functions. This allows you to control *what* to highlight and *when*.
43
44 Here’s an equivalent way to calling [`initHighlightingOnLoad`][1] using jQuery:
45
46 ```javascript
47 $(document).ready(function() {
48 $('pre code').each(function(i, block) {
49 hljs.highlightBlock(block);
50 });
51 });
52 ```
53
54 You can use any tags instead of `<pre><code>` to mark up your code. If you don't
55 use a container that preserve line breaks you will need to configure
56 highlight.js to use the `<br>` tag:
57
58 ```javascript
59 hljs.configure({useBR: true});
60
61 $('div.code').each(function(i, block) {
62 hljs.highlightBlock(block);
63 });
64 ```
65
66 For other options refer to the documentation for [`configure`][3].
67
68
69 ## Getting the Library
70
71 You can get highlight.js as a hosted or custom-build browser script or as a
72 server module. Head over to the [download page][4] for all the options.
73
74 **Note:** the library is not supposed to work straight from the source on
75 GitHub; it requires building. If none of the pre-packaged options work for you
76 refer to the [building documentation][5].
77
78
79 ## License
80
81 Highlight.js is released under the BSD License. See [LICENSE][10] file for
82 details.
83
84
85 ## Links
86
87 The official site for the library is at <https://highlightjs.org/>.
88
89 Further in-depth documentation for the API and other topics is at
90 <http://highlightjs.readthedocs.org/>.
91
92 Authors and contributors are listed in the [AUTHORS.en.txt][9] file.
93
94 [1]: http://highlightjs.readthedocs.org/en/latest/api.html#inithighlightingonload
95 [2]: http://highlightjs.readthedocs.org/en/latest/api.html#highlightblock-block
96 [3]: http://highlightjs.readthedocs.org/en/latest/api.html#configure-options
97 [4]: https://highlightjs.org/download/
98 [5]: http://highlightjs.readthedocs.org/en/latest/building-testing.html
99 [8]: http://highlightjs.readthedocs.org/en/latest/css-classes-reference.html
100 [9]: https://github.com/isagalaev/highlight.js/blob/master/AUTHORS.en.txt
101 [10]: https://github.com/isagalaev/highlight.js/blob/master/LICENSE