diff --git a/src/ui/js/diff2html-ui-base.ts b/src/ui/js/diff2html-ui-base.ts
index 6167aed..031d008 100644
--- a/src/ui/js/diff2html-ui-base.ts
+++ b/src/ui/js/diff2html-ui-base.ts
@@ -1,4 +1,4 @@
-import { HighlightJS } from 'highlight.js/lib/highlight.js';
+import * as HighlightJS from 'highlight.js/lib/highlight.js';
import { ICompiledMode, IHighlightResult, IAutoHighlightResult } from 'highlight.js';
import { nodeStream, mergeStreams } from './highlight.js-helpers';
@@ -26,7 +26,7 @@ export class Diff2HtmlUI {
readonly config: typeof defaultDiff2HtmlUIConfig;
readonly diffHtml: string;
readonly targetElement: HTMLElement;
- readonly hljs: HighlightJS | null = null;
+ readonly hljs: typeof HighlightJS | null = null;
currentSelectionColumnId = -1;
@@ -34,7 +34,7 @@ export class Diff2HtmlUI {
target: HTMLElement,
diffInput?: string | DiffFile[],
config: Diff2HtmlUIConfig = {},
- hljs?: HighlightJS,
+ hljs?: typeof HighlightJS,
) {
this.config = { ...defaultDiff2HtmlUIConfig, ...config };
this.diffHtml = diffInput !== undefined ? html(diffInput, this.config) : target.innerHTML;
diff --git a/src/ui/js/highlight.js-slim.ts b/src/ui/js/highlight.js-slim.ts
index e1461d4..32ccb30 100644
--- a/src/ui/js/highlight.js-slim.ts
+++ b/src/ui/js/highlight.js-slim.ts
@@ -1,193 +1,385 @@
-/* eslint-disable @typescript-eslint/no-var-requires */
-
// Require the highlight.js library without languages
import highlightJS from 'highlight.js/lib/highlight.js';
+// Convert to imports
+// ^highlightJS\.registerLanguage\('(.+)', require\('highlight.js\/lib\/languages\/(.+)'\)\);$
+// import $1 from 'highlight.js/lib/languages/$2';
+
+// import 1c from 'highlight.js/lib/languages/1c';
+// import abnf from 'highlight.js/lib/languages/abnf';
+// import accesslog from 'highlight.js/lib/languages/accesslog';
+// import actionscript from 'highlight.js/lib/languages/actionscript';
+// import ada from 'highlight.js/lib/languages/ada';
+// import angelscript from 'highlight.js/lib/languages/angelscript';
+// import apache from 'highlight.js/lib/languages/apache';
+// import applescript from 'highlight.js/lib/languages/applescript';
+// import arcade from 'highlight.js/lib/languages/arcade';
+import cpp from 'highlight.js/lib/languages/cpp';
+// import arduino from 'highlight.js/lib/languages/arduino';
+// import armasm from 'highlight.js/lib/languages/armasm';
+import xml from 'highlight.js/lib/languages/xml';
+// import asciidoc from 'highlight.js/lib/languages/asciidoc';
+// import aspectj from 'highlight.js/lib/languages/aspectj';
+// import autohotkey from 'highlight.js/lib/languages/autohotkey';
+// import autoit from 'highlight.js/lib/languages/autoit';
+// import avrasm from 'highlight.js/lib/languages/avrasm';
+import awk from 'highlight.js/lib/languages/awk';
+// import axapta from 'highlight.js/lib/languages/axapta';
+import bash from 'highlight.js/lib/languages/bash';
+// import basic from 'highlight.js/lib/languages/basic';
+// import bnf from 'highlight.js/lib/languages/bnf';
+// import brainfuck from 'highlight.js/lib/languages/brainfuck';
+// import cal from 'highlight.js/lib/languages/cal';
+// import capnproto from 'highlight.js/lib/languages/capnproto';
+// import ceylon from 'highlight.js/lib/languages/ceylon';
+// import clean from 'highlight.js/lib/languages/clean';
+import clojure from 'highlight.js/lib/languages/clojure';
+import clojureRepl from 'highlight.js/lib/languages/clojure-repl';
+import cmake from 'highlight.js/lib/languages/cmake';
+import coffeescript from 'highlight.js/lib/languages/coffeescript';
+// import coq from 'highlight.js/lib/languages/coq';
+// import cos from 'highlight.js/lib/languages/cos';
+// import crmsh from 'highlight.js/lib/languages/crmsh';
+import crystal from 'highlight.js/lib/languages/crystal';
+import cs from 'highlight.js/lib/languages/cs';
+import csp from 'highlight.js/lib/languages/csp';
+import css from 'highlight.js/lib/languages/css';
+import d from 'highlight.js/lib/languages/d';
+import markdown from 'highlight.js/lib/languages/markdown';
+import dart from 'highlight.js/lib/languages/dart';
+// import delphi from 'highlight.js/lib/languages/delphi';
+import diff from 'highlight.js/lib/languages/diff';
+import django from 'highlight.js/lib/languages/django';
+// import dns from 'highlight.js/lib/languages/dns';
+import dockerfile from 'highlight.js/lib/languages/dockerfile';
+// import dos from 'highlight.js/lib/languages/dos';
+// import dsconfig from 'highlight.js/lib/languages/dsconfig';
+// import dts from 'highlight.js/lib/languages/dts';
+// import dust from 'highlight.js/lib/languages/dust';
+// import ebnf from 'highlight.js/lib/languages/ebnf';
+import elixir from 'highlight.js/lib/languages/elixir';
+import elm from 'highlight.js/lib/languages/elm';
+import ruby from 'highlight.js/lib/languages/ruby';
+import erb from 'highlight.js/lib/languages/erb';
+import erlangRepl from 'highlight.js/lib/languages/erlang-repl';
+import erlang from 'highlight.js/lib/languages/erlang';
+import excel from 'highlight.js/lib/languages/excel';
+// import fix from 'highlight.js/lib/languages/fix';
+// import flix from 'highlight.js/lib/languages/flix';
+// import fortran from 'highlight.js/lib/languages/fortran';
+import fsharp from 'highlight.js/lib/languages/fsharp';
+// import gams from 'highlight.js/lib/languages/gams';
+// import gauss from 'highlight.js/lib/languages/gauss';
+// import gcode from 'highlight.js/lib/languages/gcode';
+// import gherkin from 'highlight.js/lib/languages/gherkin';
+// import glsl from 'highlight.js/lib/languages/glsl';
+// import gml from 'highlight.js/lib/languages/gml';
+import go from 'highlight.js/lib/languages/go';
+// import golo from 'highlight.js/lib/languages/golo';
+import gradle from 'highlight.js/lib/languages/gradle';
+import groovy from 'highlight.js/lib/languages/groovy';
+// import haml from 'highlight.js/lib/languages/haml';
+import handlebars from 'highlight.js/lib/languages/handlebars';
+import haskell from 'highlight.js/lib/languages/haskell';
+// import haxe from 'highlight.js/lib/languages/haxe';
+// import hsp from 'highlight.js/lib/languages/hsp';
+import htmlbars from 'highlight.js/lib/languages/htmlbars';
+import http from 'highlight.js/lib/languages/http';
+// import hy from 'highlight.js/lib/languages/hy';
+// import inform7 from 'highlight.js/lib/languages/inform7';
+import ini from 'highlight.js/lib/languages/ini';
+// import irpf90 from 'highlight.js/lib/languages/irpf90';
+// import isbl from 'highlight.js/lib/languages/isbl';
+import java from 'highlight.js/lib/languages/java';
+import javascript from 'highlight.js/lib/languages/javascript';
+// import jboss-cli from 'highlight.js/lib/languages/jboss-cli';
+import json from 'highlight.js/lib/languages/json';
+import julia from 'highlight.js/lib/languages/julia';
+import juliaRepl from 'highlight.js/lib/languages/julia-repl';
+import kotlin from 'highlight.js/lib/languages/kotlin';
+// import lasso from 'highlight.js/lib/languages/lasso';
+// import ldif from 'highlight.js/lib/languages/ldif';
+// import leaf from 'highlight.js/lib/languages/leaf';
+import less from 'highlight.js/lib/languages/less';
+import lisp from 'highlight.js/lib/languages/lisp';
+// import livecodeserver from 'highlight.js/lib/languages/livecodeserver';
+// import livescript from 'highlight.js/lib/languages/livescript';
+import llvm from 'highlight.js/lib/languages/llvm';
+// import lsl from 'highlight.js/lib/languages/lsl';
+import lua from 'highlight.js/lib/languages/lua';
+import makefile from 'highlight.js/lib/languages/makefile';
+import mathematica from 'highlight.js/lib/languages/mathematica';
+import matlab from 'highlight.js/lib/languages/matlab';
+// import maxima from 'highlight.js/lib/languages/maxima';
+// import mel from 'highlight.js/lib/languages/mel';
+// import mercury from 'highlight.js/lib/languages/mercury';
+// import mipsasm from 'highlight.js/lib/languages/mipsasm';
+// import mizar from 'highlight.js/lib/languages/mizar';
+import perl from 'highlight.js/lib/languages/perl';
+// import mojolicious from 'highlight.js/lib/languages/mojolicious';
+// import monkey from 'highlight.js/lib/languages/monkey';
+// import moonscript from 'highlight.js/lib/languages/moonscript';
+// import n1ql from 'highlight.js/lib/languages/n1ql';
+import nginx from 'highlight.js/lib/languages/nginx';
+// import nimrod from 'highlight.js/lib/languages/nimrod';
+import nix from 'highlight.js/lib/languages/nix';
+// import nsis from 'highlight.js/lib/languages/nsis';
+import objectivec from 'highlight.js/lib/languages/objectivec';
+import ocaml from 'highlight.js/lib/languages/ocaml';
+// import openscad from 'highlight.js/lib/languages/openscad';
+// import oxygene from 'highlight.js/lib/languages/oxygene';
+// import parser3 from 'highlight.js/lib/languages/parser3';
+// import pf from 'highlight.js/lib/languages/pf';
+import pgsql from 'highlight.js/lib/languages/pgsql';
+import php from 'highlight.js/lib/languages/php';
+import plaintext from 'highlight.js/lib/languages/plaintext';
+// import pony from 'highlight.js/lib/languages/pony';
+import powershell from 'highlight.js/lib/languages/powershell';
+// import processing from 'highlight.js/lib/languages/processing';
+// import profile from 'highlight.js/lib/languages/profile';
+// import prolog from 'highlight.js/lib/languages/prolog';
+import properties from 'highlight.js/lib/languages/properties';
+import protobuf from 'highlight.js/lib/languages/protobuf';
+import puppet from 'highlight.js/lib/languages/puppet';
+// import purebasic from 'highlight.js/lib/languages/purebasic';
+import python from 'highlight.js/lib/languages/python';
+// import q from 'highlight.js/lib/languages/q';
+// import qml from 'highlight.js/lib/languages/qml';
+import r from 'highlight.js/lib/languages/r';
+import reasonml from 'highlight.js/lib/languages/reasonml';
+// import rib from 'highlight.js/lib/languages/rib';
+// import roboconf from 'highlight.js/lib/languages/roboconf';
+// import routeros from 'highlight.js/lib/languages/routeros';
+// import rsl from 'highlight.js/lib/languages/rsl';
+// import ruleslanguage from 'highlight.js/lib/languages/ruleslanguage';
+import rust from 'highlight.js/lib/languages/rust';
+// import sas from 'highlight.js/lib/languages/sas';
+import scala from 'highlight.js/lib/languages/scala';
+import scheme from 'highlight.js/lib/languages/scheme';
+// import scilab from 'highlight.js/lib/languages/scilab';
+import scss from 'highlight.js/lib/languages/scss';
+import shell from 'highlight.js/lib/languages/shell';
+// import smali from 'highlight.js/lib/languages/smali';
+// import smalltalk from 'highlight.js/lib/languages/smalltalk';
+// import sml from 'highlight.js/lib/languages/sml';
+// import sqf from 'highlight.js/lib/languages/sqf';
+import sql from 'highlight.js/lib/languages/sql';
+// import stan from 'highlight.js/lib/languages/stan';
+// import stata from 'highlight.js/lib/languages/stata';
+// import step21 from 'highlight.js/lib/languages/step21';
+import stylus from 'highlight.js/lib/languages/stylus';
+// import subunit from 'highlight.js/lib/languages/subunit';
+import swift from 'highlight.js/lib/languages/swift';
+// import taggerscript from 'highlight.js/lib/languages/taggerscript';
+import yaml from 'highlight.js/lib/languages/yaml';
+// import tap from 'highlight.js/lib/languages/tap';
+// import tcl from 'highlight.js/lib/languages/tcl';
+import tex from 'highlight.js/lib/languages/tex';
+// import thrift from 'highlight.js/lib/languages/thrift';
+// import tp from 'highlight.js/lib/languages/tp';
+// import twig from 'highlight.js/lib/languages/twig';
+import typescript from 'highlight.js/lib/languages/typescript';
+// import vala from 'highlight.js/lib/languages/vala';
+// import vbnet from 'highlight.js/lib/languages/vbnet';
+// import vbscript from 'highlight.js/lib/languages/vbscript';
+// import vbscript-html from 'highlight.js/lib/languages/vbscript-html';
+// import verilog from 'highlight.js/lib/languages/verilog';
+// import vhdl from 'highlight.js/lib/languages/vhdl';
+import vim from 'highlight.js/lib/languages/vim';
+// import x86asm from 'highlight.js/lib/languages/x86asm';
+// import xl from 'highlight.js/lib/languages/xl';
+// import xquery from 'highlight.js/lib/languages/xquery';
+// import zephir from 'highlight.js/lib/languages/zephir';
+
+// Convert to registerLanguage
+// ^highlightJS\.registerLanguage\('(.+)', require\('highlight.js\/lib\/languages\/(.+)'\)\);$
+// highlightJS.registerLanguage('$1', $1);
+
// Separately require languages
-// highlightJS.registerLanguage('1c', require('highlight.js/lib/languages/1c'));
-// highlightJS.registerLanguage('abnf', require('highlight.js/lib/languages/abnf'));
-// highlightJS.registerLanguage('accesslog', require('highlight.js/lib/languages/accesslog'));
-// highlightJS.registerLanguage('actionscript', require('highlight.js/lib/languages/actionscript'));
-// highlightJS.registerLanguage('ada', require('highlight.js/lib/languages/ada'));
-// highlightJS.registerLanguage('angelscript', require('highlight.js/lib/languages/angelscript'));
-// highlightJS.registerLanguage('apache', require('highlight.js/lib/languages/apache'));
-// highlightJS.registerLanguage('applescript', require('highlight.js/lib/languages/applescript'));
-// highlightJS.registerLanguage('arcade', require('highlight.js/lib/languages/arcade'));
-highlightJS.registerLanguage('cpp', require('highlight.js/lib/languages/cpp'));
-// highlightJS.registerLanguage('arduino', require('highlight.js/lib/languages/arduino'));
-// highlightJS.registerLanguage('armasm', require('highlight.js/lib/languages/armasm'));
-highlightJS.registerLanguage('xml', require('highlight.js/lib/languages/xml'));
-// highlightJS.registerLanguage('asciidoc', require('highlight.js/lib/languages/asciidoc'));
-// highlightJS.registerLanguage('aspectj', require('highlight.js/lib/languages/aspectj'));
-// highlightJS.registerLanguage('autohotkey', require('highlight.js/lib/languages/autohotkey'));
-// highlightJS.registerLanguage('autoit', require('highlight.js/lib/languages/autoit'));
-// highlightJS.registerLanguage('avrasm', require('highlight.js/lib/languages/avrasm'));
-highlightJS.registerLanguage('awk', require('highlight.js/lib/languages/awk'));
-// highlightJS.registerLanguage('axapta', require('highlight.js/lib/languages/axapta'));
-highlightJS.registerLanguage('bash', require('highlight.js/lib/languages/bash'));
-// highlightJS.registerLanguage('basic', require('highlight.js/lib/languages/basic'));
-// highlightJS.registerLanguage('bnf', require('highlight.js/lib/languages/bnf'));
-// highlightJS.registerLanguage('brainfuck', require('highlight.js/lib/languages/brainfuck'));
-// highlightJS.registerLanguage('cal', require('highlight.js/lib/languages/cal'));
-// highlightJS.registerLanguage('capnproto', require('highlight.js/lib/languages/capnproto'));
-// highlightJS.registerLanguage('ceylon', require('highlight.js/lib/languages/ceylon'));
-// highlightJS.registerLanguage('clean', require('highlight.js/lib/languages/clean'));
-highlightJS.registerLanguage('clojure', require('highlight.js/lib/languages/clojure'));
-highlightJS.registerLanguage('clojure-repl', require('highlight.js/lib/languages/clojure-repl'));
-highlightJS.registerLanguage('cmake', require('highlight.js/lib/languages/cmake'));
-highlightJS.registerLanguage('coffeescript', require('highlight.js/lib/languages/coffeescript'));
-// highlightJS.registerLanguage('coq', require('highlight.js/lib/languages/coq'));
-// highlightJS.registerLanguage('cos', require('highlight.js/lib/languages/cos'));
-// highlightJS.registerLanguage('crmsh', require('highlight.js/lib/languages/crmsh'));
-highlightJS.registerLanguage('crystal', require('highlight.js/lib/languages/crystal'));
-highlightJS.registerLanguage('cs', require('highlight.js/lib/languages/cs'));
-highlightJS.registerLanguage('csp', require('highlight.js/lib/languages/csp'));
-highlightJS.registerLanguage('css', require('highlight.js/lib/languages/css'));
-highlightJS.registerLanguage('d', require('highlight.js/lib/languages/d'));
-highlightJS.registerLanguage('markdown', require('highlight.js/lib/languages/markdown'));
-highlightJS.registerLanguage('dart', require('highlight.js/lib/languages/dart'));
-// highlightJS.registerLanguage('delphi', require('highlight.js/lib/languages/delphi'));
-highlightJS.registerLanguage('diff', require('highlight.js/lib/languages/diff'));
-highlightJS.registerLanguage('django', require('highlight.js/lib/languages/django'));
-// highlightJS.registerLanguage('dns', require('highlight.js/lib/languages/dns'));
-highlightJS.registerLanguage('dockerfile', require('highlight.js/lib/languages/dockerfile'));
-// highlightJS.registerLanguage('dos', require('highlight.js/lib/languages/dos'));
-// highlightJS.registerLanguage('dsconfig', require('highlight.js/lib/languages/dsconfig'));
-// highlightJS.registerLanguage('dts', require('highlight.js/lib/languages/dts'));
-// highlightJS.registerLanguage('dust', require('highlight.js/lib/languages/dust'));
-// highlightJS.registerLanguage('ebnf', require('highlight.js/lib/languages/ebnf'));
-highlightJS.registerLanguage('elixir', require('highlight.js/lib/languages/elixir'));
-highlightJS.registerLanguage('elm', require('highlight.js/lib/languages/elm'));
-highlightJS.registerLanguage('ruby', require('highlight.js/lib/languages/ruby'));
-highlightJS.registerLanguage('erb', require('highlight.js/lib/languages/erb'));
-highlightJS.registerLanguage('erlang-repl', require('highlight.js/lib/languages/erlang-repl'));
-highlightJS.registerLanguage('erlang', require('highlight.js/lib/languages/erlang'));
-highlightJS.registerLanguage('excel', require('highlight.js/lib/languages/excel'));
-// highlightJS.registerLanguage('fix', require('highlight.js/lib/languages/fix'));
-// highlightJS.registerLanguage('flix', require('highlight.js/lib/languages/flix'));
-// highlightJS.registerLanguage('fortran', require('highlight.js/lib/languages/fortran'));
-highlightJS.registerLanguage('fsharp', require('highlight.js/lib/languages/fsharp'));
-// highlightJS.registerLanguage('gams', require('highlight.js/lib/languages/gams'));
-// highlightJS.registerLanguage('gauss', require('highlight.js/lib/languages/gauss'));
-// highlightJS.registerLanguage('gcode', require('highlight.js/lib/languages/gcode'));
-// highlightJS.registerLanguage('gherkin', require('highlight.js/lib/languages/gherkin'));
-// highlightJS.registerLanguage('glsl', require('highlight.js/lib/languages/glsl'));
-// highlightJS.registerLanguage('gml', require('highlight.js/lib/languages/gml'));
-highlightJS.registerLanguage('go', require('highlight.js/lib/languages/go'));
-// highlightJS.registerLanguage('golo', require('highlight.js/lib/languages/golo'));
-highlightJS.registerLanguage('gradle', require('highlight.js/lib/languages/gradle'));
-highlightJS.registerLanguage('groovy', require('highlight.js/lib/languages/groovy'));
-// highlightJS.registerLanguage('haml', require('highlight.js/lib/languages/haml'));
-highlightJS.registerLanguage('handlebars', require('highlight.js/lib/languages/handlebars'));
-highlightJS.registerLanguage('haskell', require('highlight.js/lib/languages/haskell'));
-// highlightJS.registerLanguage('haxe', require('highlight.js/lib/languages/haxe'));
-// highlightJS.registerLanguage('hsp', require('highlight.js/lib/languages/hsp'));
-highlightJS.registerLanguage('htmlbars', require('highlight.js/lib/languages/htmlbars'));
-highlightJS.registerLanguage('http', require('highlight.js/lib/languages/http'));
-// highlightJS.registerLanguage('hy', require('highlight.js/lib/languages/hy'));
-// highlightJS.registerLanguage('inform7', require('highlight.js/lib/languages/inform7'));
-highlightJS.registerLanguage('ini', require('highlight.js/lib/languages/ini'));
-// highlightJS.registerLanguage('irpf90', require('highlight.js/lib/languages/irpf90'));
-// highlightJS.registerLanguage('isbl', require('highlight.js/lib/languages/isbl'));
-highlightJS.registerLanguage('java', require('highlight.js/lib/languages/java'));
-highlightJS.registerLanguage('javascript', require('highlight.js/lib/languages/javascript'));
-// highlightJS.registerLanguage('jboss-cli', require('highlight.js/lib/languages/jboss-cli'));
-highlightJS.registerLanguage('json', require('highlight.js/lib/languages/json'));
-highlightJS.registerLanguage('julia', require('highlight.js/lib/languages/julia'));
-highlightJS.registerLanguage('julia-repl', require('highlight.js/lib/languages/julia-repl'));
-highlightJS.registerLanguage('kotlin', require('highlight.js/lib/languages/kotlin'));
-// highlightJS.registerLanguage('lasso', require('highlight.js/lib/languages/lasso'));
-// highlightJS.registerLanguage('ldif', require('highlight.js/lib/languages/ldif'));
-// highlightJS.registerLanguage('leaf', require('highlight.js/lib/languages/leaf'));
-highlightJS.registerLanguage('less', require('highlight.js/lib/languages/less'));
-highlightJS.registerLanguage('lisp', require('highlight.js/lib/languages/lisp'));
-// highlightJS.registerLanguage('livecodeserver', require('highlight.js/lib/languages/livecodeserver'));
-// highlightJS.registerLanguage('livescript', require('highlight.js/lib/languages/livescript'));
-highlightJS.registerLanguage('llvm', require('highlight.js/lib/languages/llvm'));
-// highlightJS.registerLanguage('lsl', require('highlight.js/lib/languages/lsl'));
-highlightJS.registerLanguage('lua', require('highlight.js/lib/languages/lua'));
-highlightJS.registerLanguage('makefile', require('highlight.js/lib/languages/makefile'));
-highlightJS.registerLanguage('mathematica', require('highlight.js/lib/languages/mathematica'));
-highlightJS.registerLanguage('matlab', require('highlight.js/lib/languages/matlab'));
-// highlightJS.registerLanguage('maxima', require('highlight.js/lib/languages/maxima'));
-// highlightJS.registerLanguage('mel', require('highlight.js/lib/languages/mel'));
-// highlightJS.registerLanguage('mercury', require('highlight.js/lib/languages/mercury'));
-// highlightJS.registerLanguage('mipsasm', require('highlight.js/lib/languages/mipsasm'));
-// highlightJS.registerLanguage('mizar', require('highlight.js/lib/languages/mizar'));
-highlightJS.registerLanguage('perl', require('highlight.js/lib/languages/perl'));
-// highlightJS.registerLanguage('mojolicious', require('highlight.js/lib/languages/mojolicious'));
-// highlightJS.registerLanguage('monkey', require('highlight.js/lib/languages/monkey'));
-// highlightJS.registerLanguage('moonscript', require('highlight.js/lib/languages/moonscript'));
-// highlightJS.registerLanguage('n1ql', require('highlight.js/lib/languages/n1ql'));
-highlightJS.registerLanguage('nginx', require('highlight.js/lib/languages/nginx'));
-// highlightJS.registerLanguage('nimrod', require('highlight.js/lib/languages/nimrod'));
-highlightJS.registerLanguage('nix', require('highlight.js/lib/languages/nix'));
-// highlightJS.registerLanguage('nsis', require('highlight.js/lib/languages/nsis'));
-highlightJS.registerLanguage('objectivec', require('highlight.js/lib/languages/objectivec'));
-highlightJS.registerLanguage('ocaml', require('highlight.js/lib/languages/ocaml'));
-// highlightJS.registerLanguage('openscad', require('highlight.js/lib/languages/openscad'));
-// highlightJS.registerLanguage('oxygene', require('highlight.js/lib/languages/oxygene'));
-// highlightJS.registerLanguage('parser3', require('highlight.js/lib/languages/parser3'));
-// highlightJS.registerLanguage('pf', require('highlight.js/lib/languages/pf'));
-highlightJS.registerLanguage('pgsql', require('highlight.js/lib/languages/pgsql'));
-highlightJS.registerLanguage('php', require('highlight.js/lib/languages/php'));
-highlightJS.registerLanguage('plaintext', require('highlight.js/lib/languages/plaintext'));
-// highlightJS.registerLanguage('pony', require('highlight.js/lib/languages/pony'));
-highlightJS.registerLanguage('powershell', require('highlight.js/lib/languages/powershell'));
-// highlightJS.registerLanguage('processing', require('highlight.js/lib/languages/processing'));
-// highlightJS.registerLanguage('profile', require('highlight.js/lib/languages/profile'));
-// highlightJS.registerLanguage('prolog', require('highlight.js/lib/languages/prolog'));
-highlightJS.registerLanguage('properties', require('highlight.js/lib/languages/properties'));
-highlightJS.registerLanguage('protobuf', require('highlight.js/lib/languages/protobuf'));
-highlightJS.registerLanguage('puppet', require('highlight.js/lib/languages/puppet'));
-// highlightJS.registerLanguage('purebasic', require('highlight.js/lib/languages/purebasic'));
-highlightJS.registerLanguage('python', require('highlight.js/lib/languages/python'));
-// highlightJS.registerLanguage('q', require('highlight.js/lib/languages/q'));
-// highlightJS.registerLanguage('qml', require('highlight.js/lib/languages/qml'));
-highlightJS.registerLanguage('r', require('highlight.js/lib/languages/r'));
-highlightJS.registerLanguage('reasonml', require('highlight.js/lib/languages/reasonml'));
-// highlightJS.registerLanguage('rib', require('highlight.js/lib/languages/rib'));
-// highlightJS.registerLanguage('roboconf', require('highlight.js/lib/languages/roboconf'));
-// highlightJS.registerLanguage('routeros', require('highlight.js/lib/languages/routeros'));
-// highlightJS.registerLanguage('rsl', require('highlight.js/lib/languages/rsl'));
-// highlightJS.registerLanguage('ruleslanguage', require('highlight.js/lib/languages/ruleslanguage'));
-highlightJS.registerLanguage('rust', require('highlight.js/lib/languages/rust'));
-// highlightJS.registerLanguage('sas', require('highlight.js/lib/languages/sas'));
-highlightJS.registerLanguage('scala', require('highlight.js/lib/languages/scala'));
-highlightJS.registerLanguage('scheme', require('highlight.js/lib/languages/scheme'));
-// highlightJS.registerLanguage('scilab', require('highlight.js/lib/languages/scilab'));
-highlightJS.registerLanguage('scss', require('highlight.js/lib/languages/scss'));
-highlightJS.registerLanguage('shell', require('highlight.js/lib/languages/shell'));
-// highlightJS.registerLanguage('smali', require('highlight.js/lib/languages/smali'));
-// highlightJS.registerLanguage('smalltalk', require('highlight.js/lib/languages/smalltalk'));
-// highlightJS.registerLanguage('sml', require('highlight.js/lib/languages/sml'));
-// highlightJS.registerLanguage('sqf', require('highlight.js/lib/languages/sqf'));
-highlightJS.registerLanguage('sql', require('highlight.js/lib/languages/sql'));
-// highlightJS.registerLanguage('stan', require('highlight.js/lib/languages/stan'));
-// highlightJS.registerLanguage('stata', require('highlight.js/lib/languages/stata'));
-// highlightJS.registerLanguage('step21', require('highlight.js/lib/languages/step21'));
-highlightJS.registerLanguage('stylus', require('highlight.js/lib/languages/stylus'));
-// highlightJS.registerLanguage('subunit', require('highlight.js/lib/languages/subunit'));
-highlightJS.registerLanguage('swift', require('highlight.js/lib/languages/swift'));
-// highlightJS.registerLanguage('taggerscript', require('highlight.js/lib/languages/taggerscript'));
-highlightJS.registerLanguage('yaml', require('highlight.js/lib/languages/yaml'));
-// highlightJS.registerLanguage('tap', require('highlight.js/lib/languages/tap'));
-// highlightJS.registerLanguage('tcl', require('highlight.js/lib/languages/tcl'));
-highlightJS.registerLanguage('tex', require('highlight.js/lib/languages/tex'));
-// highlightJS.registerLanguage('thrift', require('highlight.js/lib/languages/thrift'));
-// highlightJS.registerLanguage('tp', require('highlight.js/lib/languages/tp'));
-// highlightJS.registerLanguage('twig', require('highlight.js/lib/languages/twig'));
-highlightJS.registerLanguage('typescript', require('highlight.js/lib/languages/typescript'));
-// highlightJS.registerLanguage('vala', require('highlight.js/lib/languages/vala'));
-// highlightJS.registerLanguage('vbnet', require('highlight.js/lib/languages/vbnet'));
-// highlightJS.registerLanguage('vbscript', require('highlight.js/lib/languages/vbscript'));
-// highlightJS.registerLanguage('vbscript-html', require('highlight.js/lib/languages/vbscript-html'));
-// highlightJS.registerLanguage('verilog', require('highlight.js/lib/languages/verilog'));
-// highlightJS.registerLanguage('vhdl', require('highlight.js/lib/languages/vhdl'));
-highlightJS.registerLanguage('vim', require('highlight.js/lib/languages/vim'));
-// highlightJS.registerLanguage('x86asm', require('highlight.js/lib/languages/x86asm'));
-// highlightJS.registerLanguage('xl', require('highlight.js/lib/languages/xl'));
-// highlightJS.registerLanguage('xquery', require('highlight.js/lib/languages/xquery'));
-// highlightJS.registerLanguage('zephir', require('highlight.js/lib/languages/zephir'));
+// highlightJS.registerLanguage('1c', 1c);
+// highlightJS.registerLanguage('abnf', abnf);
+// highlightJS.registerLanguage('accesslog', accesslog);
+// highlightJS.registerLanguage('actionscript', actionscript);
+// highlightJS.registerLanguage('ada', ada);
+// highlightJS.registerLanguage('angelscript', angelscript);
+// highlightJS.registerLanguage('apache', apache);
+// highlightJS.registerLanguage('applescript', applescript);
+// highlightJS.registerLanguage('arcade', arcade);
+highlightJS.registerLanguage('cpp', cpp);
+// highlightJS.registerLanguage('arduino', arduino);
+// highlightJS.registerLanguage('armasm', armasm);
+highlightJS.registerLanguage('xml', xml);
+// highlightJS.registerLanguage('asciidoc', asciidoc);
+// highlightJS.registerLanguage('aspectj', aspectj);
+// highlightJS.registerLanguage('autohotkey', autohotkey);
+// highlightJS.registerLanguage('autoit', autoit);
+// highlightJS.registerLanguage('avrasm', avrasm);
+highlightJS.registerLanguage('awk', awk);
+// highlightJS.registerLanguage('axapta', axapta);
+highlightJS.registerLanguage('bash', bash);
+// highlightJS.registerLanguage('basic', basic);
+// highlightJS.registerLanguage('bnf', bnf);
+// highlightJS.registerLanguage('brainfuck', brainfuck);
+// highlightJS.registerLanguage('cal', cal);
+// highlightJS.registerLanguage('capnproto', capnproto);
+// highlightJS.registerLanguage('ceylon', ceylon);
+// highlightJS.registerLanguage('clean', clean);
+highlightJS.registerLanguage('clojure', clojure);
+highlightJS.registerLanguage('clojure-repl', clojureRepl);
+highlightJS.registerLanguage('cmake', cmake);
+highlightJS.registerLanguage('coffeescript', coffeescript);
+// highlightJS.registerLanguage('coq', coq);
+// highlightJS.registerLanguage('cos', cos);
+// highlightJS.registerLanguage('crmsh', crmsh);
+highlightJS.registerLanguage('crystal', crystal);
+highlightJS.registerLanguage('cs', cs);
+highlightJS.registerLanguage('csp', csp);
+highlightJS.registerLanguage('css', css);
+highlightJS.registerLanguage('d', d);
+highlightJS.registerLanguage('markdown', markdown);
+highlightJS.registerLanguage('dart', dart);
+// highlightJS.registerLanguage('delphi', delphi);
+highlightJS.registerLanguage('diff', diff);
+highlightJS.registerLanguage('django', django);
+// highlightJS.registerLanguage('dns', dns);
+highlightJS.registerLanguage('dockerfile', dockerfile);
+// highlightJS.registerLanguage('dos', dos);
+// highlightJS.registerLanguage('dsconfig', dsconfig);
+// highlightJS.registerLanguage('dts', dts);
+// highlightJS.registerLanguage('dust', dust);
+// highlightJS.registerLanguage('ebnf', ebnf);
+highlightJS.registerLanguage('elixir', elixir);
+highlightJS.registerLanguage('elm', elm);
+highlightJS.registerLanguage('ruby', ruby);
+highlightJS.registerLanguage('erb', erb);
+highlightJS.registerLanguage('erlang-repl', erlangRepl);
+highlightJS.registerLanguage('erlang', erlang);
+highlightJS.registerLanguage('excel', excel);
+// highlightJS.registerLanguage('fix', fix);
+// highlightJS.registerLanguage('flix', flix);
+// highlightJS.registerLanguage('fortran', fortran);
+highlightJS.registerLanguage('fsharp', fsharp);
+// highlightJS.registerLanguage('gams', gams);
+// highlightJS.registerLanguage('gauss', gauss);
+// highlightJS.registerLanguage('gcode', gcode);
+// highlightJS.registerLanguage('gherkin', gherkin);
+// highlightJS.registerLanguage('glsl', glsl);
+// highlightJS.registerLanguage('gml', gml);
+highlightJS.registerLanguage('go', go);
+// highlightJS.registerLanguage('golo', golo);
+highlightJS.registerLanguage('gradle', gradle);
+highlightJS.registerLanguage('groovy', groovy);
+// highlightJS.registerLanguage('haml', haml);
+highlightJS.registerLanguage('handlebars', handlebars);
+highlightJS.registerLanguage('haskell', haskell);
+// highlightJS.registerLanguage('haxe', haxe);
+// highlightJS.registerLanguage('hsp', hsp);
+highlightJS.registerLanguage('htmlbars', htmlbars);
+highlightJS.registerLanguage('http', http);
+// highlightJS.registerLanguage('hy', hy);
+// highlightJS.registerLanguage('inform7', inform7);
+highlightJS.registerLanguage('ini', ini);
+// highlightJS.registerLanguage('irpf90', irpf90);
+// highlightJS.registerLanguage('isbl', isbl);
+highlightJS.registerLanguage('java', java);
+highlightJS.registerLanguage('javascript', javascript);
+// highlightJS.registerLanguage('jboss-cli', jboss-cli);
+highlightJS.registerLanguage('json', json);
+highlightJS.registerLanguage('julia', julia);
+highlightJS.registerLanguage('julia-repl', juliaRepl);
+highlightJS.registerLanguage('kotlin', kotlin);
+// highlightJS.registerLanguage('lasso', lasso);
+// highlightJS.registerLanguage('ldif', ldif);
+// highlightJS.registerLanguage('leaf', leaf);
+highlightJS.registerLanguage('less', less);
+highlightJS.registerLanguage('lisp', lisp);
+// highlightJS.registerLanguage('livecodeserver', livecodeserver);
+// highlightJS.registerLanguage('livescript', livescript);
+highlightJS.registerLanguage('llvm', llvm);
+// highlightJS.registerLanguage('lsl', lsl);
+highlightJS.registerLanguage('lua', lua);
+highlightJS.registerLanguage('makefile', makefile);
+highlightJS.registerLanguage('mathematica', mathematica);
+highlightJS.registerLanguage('matlab', matlab);
+// highlightJS.registerLanguage('maxima', maxima);
+// highlightJS.registerLanguage('mel', mel);
+// highlightJS.registerLanguage('mercury', mercury);
+// highlightJS.registerLanguage('mipsasm', mipsasm);
+// highlightJS.registerLanguage('mizar', mizar);
+highlightJS.registerLanguage('perl', perl);
+// highlightJS.registerLanguage('mojolicious', mojolicious);
+// highlightJS.registerLanguage('monkey', monkey);
+// highlightJS.registerLanguage('moonscript', moonscript);
+// highlightJS.registerLanguage('n1ql', n1ql);
+highlightJS.registerLanguage('nginx', nginx);
+// highlightJS.registerLanguage('nimrod', nimrod);
+highlightJS.registerLanguage('nix', nix);
+// highlightJS.registerLanguage('nsis', nsis);
+highlightJS.registerLanguage('objectivec', objectivec);
+highlightJS.registerLanguage('ocaml', ocaml);
+// highlightJS.registerLanguage('openscad', openscad);
+// highlightJS.registerLanguage('oxygene', oxygene);
+// highlightJS.registerLanguage('parser3', parser3);
+// highlightJS.registerLanguage('pf', pf);
+highlightJS.registerLanguage('pgsql', pgsql);
+highlightJS.registerLanguage('php', php);
+highlightJS.registerLanguage('plaintext', plaintext);
+// highlightJS.registerLanguage('pony', pony);
+highlightJS.registerLanguage('powershell', powershell);
+// highlightJS.registerLanguage('processing', processing);
+// highlightJS.registerLanguage('profile', profile);
+// highlightJS.registerLanguage('prolog', prolog);
+highlightJS.registerLanguage('properties', properties);
+highlightJS.registerLanguage('protobuf', protobuf);
+highlightJS.registerLanguage('puppet', puppet);
+// highlightJS.registerLanguage('purebasic', purebasic);
+highlightJS.registerLanguage('python', python);
+// highlightJS.registerLanguage('q', q);
+// highlightJS.registerLanguage('qml', qml);
+highlightJS.registerLanguage('r', r);
+highlightJS.registerLanguage('reasonml', reasonml);
+// highlightJS.registerLanguage('rib', rib);
+// highlightJS.registerLanguage('roboconf', roboconf);
+// highlightJS.registerLanguage('routeros', routeros);
+// highlightJS.registerLanguage('rsl', rsl);
+// highlightJS.registerLanguage('ruleslanguage', ruleslanguage);
+highlightJS.registerLanguage('rust', rust);
+// highlightJS.registerLanguage('sas', sas);
+highlightJS.registerLanguage('scala', scala);
+highlightJS.registerLanguage('scheme', scheme);
+// highlightJS.registerLanguage('scilab', scilab);
+highlightJS.registerLanguage('scss', scss);
+highlightJS.registerLanguage('shell', shell);
+// highlightJS.registerLanguage('smali', smali);
+// highlightJS.registerLanguage('smalltalk', smalltalk);
+// highlightJS.registerLanguage('sml', sml);
+// highlightJS.registerLanguage('sqf', sqf);
+highlightJS.registerLanguage('sql', sql);
+// highlightJS.registerLanguage('stan', stan);
+// highlightJS.registerLanguage('stata', stata);
+// highlightJS.registerLanguage('step21', step21);
+highlightJS.registerLanguage('stylus', stylus);
+// highlightJS.registerLanguage('subunit', subunit);
+highlightJS.registerLanguage('swift', swift);
+// highlightJS.registerLanguage('taggerscript', taggerscript);
+highlightJS.registerLanguage('yaml', yaml);
+// highlightJS.registerLanguage('tap', tap);
+// highlightJS.registerLanguage('tcl', tcl);
+highlightJS.registerLanguage('tex', tex);
+// highlightJS.registerLanguage('thrift', thrift);
+// highlightJS.registerLanguage('tp', tp);
+// highlightJS.registerLanguage('twig', twig);
+highlightJS.registerLanguage('typescript', typescript);
+// highlightJS.registerLanguage('vala', vala);
+// highlightJS.registerLanguage('vbnet', vbnet);
+// highlightJS.registerLanguage('vbscript', vbscript);
+// highlightJS.registerLanguage('vbscript-html', vbscript-html);
+// highlightJS.registerLanguage('verilog', verilog);
+// highlightJS.registerLanguage('vhdl', vhdl);
+highlightJS.registerLanguage('vim', vim);
+// highlightJS.registerLanguage('x86asm', x86asm);
+// highlightJS.registerLanguage('xl', xl);
+// highlightJS.registerLanguage('xquery', xquery);
+// highlightJS.registerLanguage('zephir', zephir);
export const hljs = highlightJS;
diff --git a/typings/highlight.js.d.ts b/typings/highlight.js.d.ts
deleted file mode 100644
index 34a3b6a..0000000
--- a/typings/highlight.js.d.ts
+++ /dev/null
@@ -1,42 +0,0 @@
-declare module 'highlight.js/lib/highlight.js' {
- import hljs from 'highlight.js';
-
- export type HighlightJS = typeof hljs;
-
- export default hljs;
-
- export const highlight: typeof hljs.highlight;
- export const highlightAuto: typeof hljs.highlightAuto;
- export const fixMarkup: typeof hljs.fixMarkup;
- export const highlightBlock: typeof hljs.highlightBlock;
- export const configure: typeof hljs.configure;
- export const initHighlighting: typeof hljs.initHighlighting;
- export const initHighlightingOnLoad: typeof hljs.initHighlightingOnLoad;
- export const registerLanguage: typeof hljs.registerLanguage;
- export const listLanguages: typeof hljs.listLanguages;
- export const getLanguage: typeof hljs.getLanguage;
- export const inherit: typeof hljs.inherit;
- export const COMMENT: typeof hljs.COMMENT;
-
- export const IDENT_RE: typeof hljs.IDENT_RE;
- export const UNDERSCORE_IDENT_RE: typeof hljs.UNDERSCORE_IDENT_RE;
- export const NUMBER_RE: typeof hljs.NUMBER_RE;
- export const C_NUMBER_RE: typeof hljs.C_NUMBER_RE;
- export const BINARY_NUMBER_RE: typeof hljs.BINARY_NUMBER_RE;
- export const RE_STARTERS_RE: typeof hljs.RE_STARTERS_RE;
-
- export const BACKSLASH_ESCAPE: typeof hljs.BACKSLASH_ESCAPE;
- export const APOS_STRING_MODE: typeof hljs.APOS_STRING_MODE;
- export const QUOTE_STRING_MODE: typeof hljs.QUOTE_STRING_MODE;
- export const PHRASAL_WORDS_MODE: typeof hljs.PHRASAL_WORDS_MODE;
- export const C_LINE_COMMENT_MODE: typeof hljs.C_LINE_COMMENT_MODE;
- export const C_BLOCK_COMMENT_MODE: typeof hljs.C_BLOCK_COMMENT_MODE;
- export const HASH_COMMENT_MODE: typeof hljs.HASH_COMMENT_MODE;
- export const NUMBER_MODE: typeof hljs.NUMBER_MODE;
- export const C_NUMBER_MODE: typeof hljs.C_NUMBER_MODE;
- export const BINARY_NUMBER_MODE: typeof hljs.BINARY_NUMBER_MODE;
- export const CSS_NUMBER_MODE: typeof hljs.CSS_NUMBER_MODE;
- export const REGEX_MODE: typeof hljs.REGEX_MODE;
- export const TITLE_MODE: typeof hljs.TITLE_MODE;
- export const UNDERSCORE_TITLE_MODE: typeof hljs.UNDERSCORE_TITLE_MODE;
-}
diff --git a/typings/highlight.js/highlight.js.d.ts b/typings/highlight.js/highlight.js.d.ts
new file mode 100644
index 0000000..be13581
--- /dev/null
+++ b/typings/highlight.js/highlight.js.d.ts
@@ -0,0 +1,5 @@
+declare module 'highlight.js/lib/highlight.js' {
+ import hljs from 'highlight.js';
+
+ export = hljs;
+}
diff --git a/typings/highlight.js/languages.d.ts b/typings/highlight.js/languages.d.ts
new file mode 100644
index 0000000..7110a23
--- /dev/null
+++ b/typings/highlight.js/languages.d.ts
@@ -0,0 +1,5 @@
+declare module 'highlight.js/lib/languages/*' {
+ import { HLJSStatic, IModeBase } from 'highlight.js';
+
+ export default function(hljs?: HLJSStatic): IModeBase;
+}