<div class="entry">
  {{!-- only show if author exists --}}
  {{#if author}}
    <h1>{{firstName}} {{lastName}}</h1>
  {{/if}}
</div>

language: ...

style: atom-one-dark

Get version 9.6.0

Usage

Contribute

@highlightjs

News

  1. *** 10 years! ***

    Highlight.js turned 10 years a few days ago! Thanks for being with us :-)

  2. Version 9.6.0

    New languages:

    New styles:

    Plus, a few smaller updates for Lasso, Elixir, C++ and SQL.

  3. Version 9.5.0

    New languages:

    New styles:

    Notable changes:

    • Minh Nguyễn added more built-ins to Objective C.
    • Jeremy Hull fixed corner cases in C++ preprocessor directives and Diff comments.
    • Victor Zhou added support for digit separators in C++ numbers.
  4. Version 9.4.0

    New languages:

    New styles:

    Improvements to existing languages and styles:

    • We now highlight function declarations in Go.
    • Taisuke Fujimoto contributed very convoluted rules for raw and interpolated strings in C#.
    • Boone Severson updated Verilog to comply with IEEE 1800-2012 SystemVerilog.
    • Victor Zhou improved rules for comments and strings in PowerShell files.
    • Janis Voigtländer updated the definition of Elm to version 0.17 of the languages. Elm is now featured on the front page of https://highlightjs.org.
    • Special variable $this is highlighted as a keyword in PHP.
    • usize and isize are now highlighted in Rust.
    • Fixed labels and directives in x86 assembler.
  5. Version 9.3.0

    New languages:

    New styles:

    Improvements to existing languages and styles:

    • More robust handling of unquoted HTML tag attributes
    • Relevance tuning for QML which was unnecessary eager at seizing other languages' code
    • Improve GAMS language parsing
    • Fixed a bunch of bugs around selectors in Less
    • Kotlin's got a new definition for annotations, updated keywords and other minor improvements
    • Added move to Rust keywords
    • Markdown now recognizes ```-fenced code blocks
    • Improved detection of function declarations in C++ and C#
  6. Version 9.2.0

    New languages:

    New styles:

    Improvements to existing languages and styles:

    • We now correctly handle JSX with arbitrary node tree depth.
    • Argument list for (lambda) in Scheme is no longer highlighted as a function call.
    • Stylus syntax doesn't break on valid CSS.
    • More correct handling of comments and strings and other improvements for VimScript.
    • More subtle work on the default style.
    • We now use anonymous modules for AMD.
    • macro_rules! is now recognized as a built-in in Rust.
  7. Version 9.1.0

    New languages:

    New Styles:

    Improvements to existing languages and styles:

    • Handle return type annotations in Python
    • Allow shebang headers in Javascript
    • Support strings in Rust meta
    • Recognize struct as a class-level definition in Rust
    • Recognize b-prefixed chars and strings in Rust
    • Better numbers handling in Verilog
  8. Version 9.0.0

    The new major version brings a reworked styling system. Highlight.js now defines a limited set of highlightable classes giving a consistent result across all the styles and languages. You can read a more detailed explanation and background in the tracking issue that started this long process back in May.

    This change is backwards incompatible for those who uses highlight.js with a custom stylesheet. The new style guide explains how to write styles in this new world.

    Bundled themes have also suffered a significant amount of improvements and may look different in places, but all the things now consistent and make more sense. Among others, the Default style has got a refresh and will probably be tweaked some more in next releases. Please do give your feedback in our issue tracker.

    New languages in this release:

    Improvements to existing languages and styles:

    • ECMAScript 6 modules import now do not require closing semicolon.
    • ECMAScript 6 classes constructors now highlighted.
    • Template string support for Typescript, as for ECMAScript 6.
    • Scala case classes params highlight fixed.
    • Built-in names introduced in Julia v0.4 added by Kenta Sato.
    • Refreshed Default style.

    Other notable changes:

    • Web workers support added bu Jan Kühle.
    • We now have tests for compressed browser builds as well.
    • The building tool chain has been switched to node.js 4.x. and is now shamelessly uses ES6 features all over the place, courtesy of Jeremy Hull.
    • License added to non-compressed browser build.
  9. Version 8.9.1

    Some last-minute changes reverted due to strange bug with minified browser build:

    • Scala case classes params highlight fixed
    • ECMAScript 6 modules import now do not require closing semicolon
    • ECMAScript 6 classes constructors now highlighted
    • Template string support for Typescript, as for ECMAScript 6
    • License added to not minified browser build
  10. Version 8.9.0

    New languages:

    Notable fixes and improvements to existing languages:

    • Added abstract and namespace keywords to TypeScript by Daniel Rosenwasser
    • Added label support to Dockerfile by Ladislav Prskavec
    • Crystal highlighting improved by Tsuyusato Kitsune
    • Missing Swift keywords added by Nate Cook
    • Improve detection of C block comments
    • Scala case classes params highlight fixed
    • ECMAScript 6 modules import now do not require closing semicolon
    • ECMAScript 6 classes constructors now highlighted
    • Template string support for Typescript, as for ECMAScript 6

    Other notable changes:

    • License added to not minified browser build