All Versions
Latest Version
Avg Release Cycle
32 days
Latest Release

Changelog History
Page 9

  • v7.4 Changes

    This long overdue version is a snapshot of the current source tree with all the πŸ”„ changes that happened during the past year. Sorry for taking so long!

    Along with the changes in code highlight.js has finally got its new home at, moving from its cradle on Software Maniacs which it outgrew a long time ago. Be sure to report any bugs about the site to [email protected].

    On to what's new…

    πŸ†• New languages:

    🐧 [Dan Allen]:

    πŸ†• New style themes:

    Other notable changes:

    • Corrected many corner cases in CSS.
    • ⬇️ Dropped Python 2 version of the build tool.
    • πŸ— Implemented building for the AMD format.
    • ⚑️ Updated Rust keywords (thanks to Dmitry Medvinsky).
    • Literal regexes can now be used in language definitions.
    • CoffeeScript highlighting is now significantly more robust and rich due to input from CΓ©dric NΓ©hΓ©mie.
  • v7.3 Changes

    • Since this version highlight.js no longer works in IE version 8 and older. It's made it possible to reduce the library size and dramatically improve code readability and made it easier to maintain. Time to go forward!

    • πŸ†• New languages: AppleScript (by Nathan Grigg and Dr. Drang) and Brainfuck (by Evgeny Stepanischev).

    • πŸ‘Œ Improvements to existing languages:

      • interpreter prompt in Python (>>> and ...)
      • @-properties and classes in CoffeeScript
      • E4X in JavaScript (by Oleg Efimov)
      • new keywords in Perl (by Kirk Kimmel)
      • big Ruby syntax update (by Vasily Polovnyov)
      • small fixes in Bash
    • πŸ’… Also Oleg Efimov did a great job of moving all the docs for language and style developers and contributors from the old wiki under the source code in the "docs" directory. Now these docs are nicely presented at

  • v7.2 Changes

    πŸš€ A regular bug-fix release without any significant new features. Enjoy!

  • v7.1 Changes

    A Summer crop:

    • Marc Fornos made the definition for Clojure along with the matching style Rainbow (which, of course, works for other languages too).
    • πŸ‘ CoffeeScript support continues to improve getting support for regular expressions.
    • πŸ’… Yoshihide Jimbo ported to highlight.js five Tomorrow styles from the project by Chris Kempson.
    • Thanks to Casey Duncun the library can now be built in the popular [AMD format][amd].
    • And last but not least, we've got a fair number of correctness and consistency fixes, including a pretty significant refactoring of Ruby.

    πŸ“„ [amd]:

  • v7.0 Changes

    ⚑️ The reason for the new major version update is a global change of keyword syntax which resulted in the library getting smaller once again. For example, the πŸ— hosted build is 2K less than at the previous version while supporting two new languages.

    Notable changes:

    • πŸ’» The library now works not only in a browser but also with node.js. It is installable with npm install highlight.js. API docs are available on our wiki.

    • The new unique feature (apparently) among syntax highlighters is highlighting HTTP headers and an arbitrary language in the request body. The most useful languages here are XML and JSON both of which highlight.js does support. Here's the detailed post about the feature.

    • Two new style themes: a dark "south" [Pojoaque][] by Jason Tate and an emulation of*XCode* IDE by Angel Olloqui.

    • Three new languages: D by Aleksandar RuΕΎičiΔ‡, R by Joe Cheng and GLSL by Sergey Tikhomirov.

    • Nginx syntax has become a million times smaller and more universal thanks to remaking it in a more generic manner that doesn't require listing all the directives in the known universe.

    • Function titles are now highlighted in PHP.

    • Haskell and VHDL were significantly reworked to be more rich and correct by their respective maintainers Jeremy Hull and Igor Kalnitsky.

    πŸ›  And last but not least, many bugs have been fixed around correctness and language detection.

    πŸ’… Overall highlight.js currently supports 51 languages and 20 style themes.

    πŸ’… [pojoaque]:

  • v6.2 Changes

    A lot of things happened in highlight.js since the last version! We've got nine πŸ†• new contributors, the discussion group came alive, and the main branch on GitHub now counts more than 350 followers. Here are most significant results coming from all this activity:

    πŸ‘€ [jc]:

    🌲 [log]:

  • v6.1 Changes

    Jeremy Hull has implemented my dream feature β€” a port of Solarized πŸ’… style theme famous for being based on the intricate color theory to achieve correct contrast and color perception. It is now available for highlight.js in both variants β€” light and dark.

    πŸ’… This version also adds a new original style Arta. Its author pumbur maintains a heavily modified fork of highlight.js on GitHub.

  • v6.0 Changes

    πŸ†• New major version of the highlighter has been built on a significantly πŸ”¨ refactored syntax. Due to this it's even smaller than the previous one while πŸ‘Œ supporting more languages!

    πŸ†• New languages are:

    πŸ›  Also this version is marginally faster and fixes a number of small long-standing πŸ› bugs.

    Developer overview of the new language syntax is available in a blog post about πŸš€ recent beta release.

    P.S. New version is not yet available on a Yandex CDN, so for now you have to download your own copy.

  • v5.14 Changes

    πŸ›  Fixed bugs in HTML/XML detection and relevance introduced in previous πŸ”¨ refactoring.

    βœ… Also test.html now shows the second best result of language detection by relevance.

  • v5.13 Changes

    Past weekend began with a couple of simple additions for existing languages but πŸ”¨ ended up in a big code refactoring bringing along nice improvements for language developers.

    For users

    • Description of C++ has got new keywords from the upcoming C++ 0x standard.
    • Description of HTML has got new tags from HTML 5.
    • πŸ’… CSS-styles have been unified to use consistent padding and also have lost pop-outs with names of detected languages.
    • Igor Kalnitsky has sent two new language descriptions: CMake & VHDL.

    πŸ‘ This makes total number of languages supported by highlight.js to reach 35.

    πŸ› Bug fixes:

    • Custom classes on <pre> tags are not being overridden anymore
    • More correct highlighting of code blocks inside non-<pre> containers: highlighter now doesn't insist on replacing them with its own container and just replaces the contents.
    • πŸ’» Small fixes in browser compatibility and heuristics.

    For developers

    The most significant change is the ability to include language submodes right under contains instead of defining explicit named submodes in the main array:

    contains: [
      {begin: '\\n', end: hljs.IMMEDIATE_RE}

    πŸ“œ This is useful for auxiliary modes needed only in one place to define parsing. Note that such modes often don't have className and hence won't generate a separate <span> in the resulting markup. This is similar in effect to πŸ”¨ noMarkup: true. All existing languages have been refactored accordingly.

    βœ… Test file test.html has at last become a real test. Now it not only puts the βœ… detected language name under the code snippet but also tests if it matches the βœ… expected one. Test summary is displayed right above all language snippets.