OLD | NEW |
(Empty) | |
| 1 # Highlight.js |
| 2 |
| 3 [
](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 trying 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, that 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#inithighlightingonloa
d |
| 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 |
OLD | NEW |