1 | ## Version 11.3.1
|
2 |
|
3 | Build:
|
4 |
|
5 | - (fix) Grammar CDN modules not generated correctly. (#3363) [Josh Goebel][]
|
6 |
|
7 | [Josh Goebel]: https://github.com/joshgoebel
|
8 |
|
9 |
|
10 | ## Version 11.3.0
|
11 |
|
12 | Build:
|
13 |
|
14 | - add `HighlightJS` named export (#3295) [Josh Goebel][]
|
15 | - add `.default` named export to CJS builds (#3333) [Josh Goebel][]
|
16 |
|
17 | Parser:
|
18 |
|
19 | - add first rough performance testing script (#3280) [Austin Schick][]
|
20 | - add `throwUnescapedHTML` to warn against potential HTML injection [Josh Goebel][]
|
21 | - expose `regex` helper functions via `hljs` injection [Josh Goebel][]
|
22 | - concat
|
23 | - lookahead
|
24 | - either
|
25 | - optional
|
26 | - anyNumberOfTimes
|
27 |
|
28 | Grammars:
|
29 |
|
30 | - fix(ts) some complex types would classify as JSX (#3278) [Josh Goebel][]
|
31 | - fix(js/ts) less false positives for `class X extends Y` (#3278) [Josh Goebel][]
|
32 | - enh(css): add properties from several W3C (Candidate) Recommendations (#3308)
|
33 | - fix(js/ts) `Float32Array` highlighted incorrectly (#3353) [Josh Goebel][]
|
34 | - fix(css) single-colon psuedo-elements no longer break highlighting (#3240) [Josh Goebel][]
|
35 | - fix(scss) single-colon psuedo-elements no longer break highlighting (#3240) [Josh Goebel][]
|
36 | - enh(fsharp) rewrite most of the grammar, with many improvements [Melvyn Laïly][]
|
37 | - enh(go) better type highlighting, add `error` type [Josh Goebel][]
|
38 | - fix(js/ts) regex inside `SUBST` is no longer highlighted [Josh Goebel][]
|
39 | - fix(python) added support for unicode identifiers (#3280) [Austin Schick][]
|
40 | - enh(css/less/stylus/scss) improve consistency of function dispatch (#3301) [Josh Goebel][]
|
41 | - enh(css/less/stylus/scss) detect block comments more fully (#3301) [Josh Goebel][]
|
42 | - fix(cpp) switch is a keyword (#3312) [Josh Goebel][]
|
43 | - fix(cpp) fix `xor_eq` keyword highlighting. [Denis Kovalchuk][]
|
44 | - enh(c,cpp) highlight type modifiers as type (#3316) [Josh Goebel][]
|
45 | - enh(css/less/stylus/scss) add support for CSS Grid properties [monochromer][]
|
46 | - enh(java) add support for Java Text Block (#3322) [Teletha][]
|
47 | - enh(scala) add missing `do` and `then` keyword (#3323) [Nicolas Stucki][]
|
48 | - enh(scala) add missing `enum`, `export` and `given` keywords (#3328) [Nicolas Stucki][]
|
49 | - enh(scala) remove symbol syntax and fix quoted code syntax (#3324) [Nicolas Stucki][]
|
50 | - enh(scala) add Scala 3 `extension` soft keyword (#3326) [Nicolas Stucki][]
|
51 | - enh(scala) add Scala 3 `end` soft keyword (#3327) [Nicolas Stucki][]
|
52 | - enh(scala) add `inline` soft keyword (#3329) [Nicolas Stucki][]
|
53 | - enh(scala) add `using` soft keyword (#3330) [Nicolas Stucki][]
|
54 | - enh(fsharp) added `f#` alias (#3337) [Bahnschrift][]
|
55 | - enh(bash) added gnu core utilities (#3342) [katzeprior][]
|
56 | - enh(nsis) add new NSIS commands (#3351) [idleberg][]
|
57 | - fix(nsis) set `case_insensitive` to `true` (#3351) [idleberg][]
|
58 | - fix(css/less/stylus/scss) highlight single-colon psuedo-elements properly (#3240) [zsoltlengyelit][]
|
59 | - fix(css) add css hex color alpha support (#3360) [ierehon1905][]
|
60 |
|
61 | [Austin Schick]: https://github.com/austin-schick
|
62 | [Josh Goebel]: https://github.com/joshgoebel
|
63 | [Denis Kovalchuk]: https://github.com/deniskovalchuk
|
64 | [monochromer]: https://github.com/monochromer
|
65 | [Teletha]: https://github.com/teletha
|
66 | [Nicolas Stucki]: https://github.com/nicolasstucki
|
67 | [Bahnschrift]: https://github.com/Bahnschrift
|
68 | [Melvyn Laïly]: https://github.com/mlaily
|
69 | [katzeprior]: https://github.com/katzeprior
|
70 | [zsoltlengyelit]: github.com/zsoltlengyelit
|
71 | [Syb Wartna]:https://github.com/waarissyb
|
72 | [idleberg]: https://github.com/idleberg
|
73 | [ierehon1905]: https://github.com/ierehon1905
|
74 |
|
75 |
|
76 | ## Version 11.2.0
|
77 |
|
78 | Build:
|
79 |
|
80 | - fix: run Node build CSS files thru CSS processor also (#3284) [Josh Goebel][]
|
81 |
|
82 | Parser:
|
83 |
|
84 | - fix(csharp) Fix assignments flagging as functions [Josh Goebel][]
|
85 | - fix(types) Fix some type definition issues (#3274) [Josh Goebel][]
|
86 | - fix(verilog) Fix directive handling (#3283) [Josh Goebel][]
|
87 | - fix(verilog) Fix binary number false positives on `_` (#3283) [Josh Goebel][]
|
88 | - enh(verilog) `__FILE__` and `__LINE__` constants (#3283) [Josh Goebel][]
|
89 | - enh(verilog) tighten keyword regex (#3283) [Josh Goebel][]
|
90 |
|
91 |
|
92 | Grammars:
|
93 |
|
94 | - enh(swift) Add `isolated`/`nonisolated` keywords (#3296) [Bradley Mackey][]
|
95 |
|
96 | New Languages:
|
97 |
|
98 | - Added 3rd party X# grammar to SUPPORTED_LANGUAGES [Patrick Kruselburger][]
|
99 | - Added 3rd party MKB grammar to SUPPORTED_LANGUAGES (#3297) [Dereavy][]
|
100 |
|
101 | [Josh Goebel]: https://github.com/joshgoebel
|
102 | [Patrick Kruselburger]: https://github.com/PatrickKru
|
103 | [Bradley Mackey]: https://github.com/bradleymackey
|
104 | [Dereavy]: https://github.com/dereavy
|
105 |
|
106 |
|
107 | ## Version 11.1.0
|
108 |
|
109 | Grammars:
|
110 |
|
111 | - fix(csharp) add missing `catch` keyword (#3251) [Konrad Rudolph][]
|
112 | - add additional keywords to csp.js (#3244) [Elijah Conners][]
|
113 | - feat(css) handle css variables syntax (#3239) [Thanos Karagiannis][]
|
114 | - fix(markdown) Images with empty alt or links with empty text (#3233) [Josh Goebel][]
|
115 | - enh(powershell) added `pwsh` alias (#3236) [tebeco][]
|
116 | - fix(r) fix bug highlighting examples in doc comments [Konrad Rudolph][]
|
117 | - fix(python) identifiers starting with underscore not highlighted (#3221) [Antoine Lambert][]
|
118 | - enh(clojure) added `edn` alias (#3213) [Stel Abrego][]
|
119 | - enh(elixir) much improved regular expression sigil support (#3207) [Josh Goebel][]
|
120 | - enh(elixir) updated list of keywords (#3212) [Angelika Tyborska][]
|
121 | - fix(elixir) fixed number detection when numbers start with a zero (#3212) [Angelika Tyborska][]
|
122 | - fix(ps1) Flag highlighted incorrectly (#3167) [Pankaj Patil][]
|
123 | - fix(latex) Allow wider syntax for magic comments (#3243) [Benedikt Wilde][]
|
124 | - fix(js/ts) Constants may include numbers [Josh Goebel][]
|
125 |
|
126 | [Stel Abrego]: https://github.com/stelcodes
|
127 | [Josh Goebel]: https://github.com/joshgoebel
|
128 | [Antoine Lambert]: https://github.com/anlambert
|
129 | [Elijah Conners]: https://github.com/elijahepepe
|
130 | [Angelika Tyborska]: https://github.com/angelikatyborska
|
131 | [Konrad Rudolph]: https://github.com/klmr
|
132 | [tebeco]: https://github.com/tebeco
|
133 | [Pankaj Patil]: https://github.com/patil2099
|
134 | [Benedikt Wilde]: https://github.com/schtandard
|
135 | [Thanos Karagiannis]: https://github.com/thanoskrg
|
136 |
|
137 |
|
138 | ## Version 11.0.0
|
139 |
|
140 | **This is a major release.** As such it contains breaking changes which may require action from users. Please read [VERSION_11_UPGRADE.md](https://github.com/highlightjs/highlight.js/blob/main/VERSION_11_UPGRADE.md) for a detailed summary of all breaking changes.
|
141 |
|
142 | ### Potentially breaking changes
|
143 |
|
144 | Unless otherwise attributed items below are thanks to [Josh Goebel][] (ref: [#2558](https://github.com/highlightjs/highlight.js/issues/2558)).
|
145 |
|
146 | *The below list should only be considered to be a high-level summary.*
|
147 |
|
148 | Deprecations / Removals / API Changes:
|
149 |
|
150 | - `initHighlighting()` and `initHighlightingOnLoad()` deprecated. **Use `highlightAll()`.**
|
151 | - `highlightBlock(el)` deprecated. **Use `highlightElement(el)`**
|
152 | - `before:highlightBlock` & `after:highlightBlock` callbacks deprecated. **Use equivalent `highlightElement` callbacks.**
|
153 | - `highlight(languageName, code, ignoreIllegals, continuation)` signature deprecated. **Use `highlight(code, {language, ignoreIllegals})`.**
|
154 | - Deprecated `highlight()` signature no longer supports `continuation` argument.
|
155 | - `tabReplace` option removed. Consider a plugin.
|
156 | - `useBR` option removed. Consider a plugin or CSS.
|
157 | - `requireLanguage()` removed. **Use `getLanguage()`.**
|
158 | - `endSameAsBegin` mode key removed. **Use `hljs.END_SAME_AS_BEGIN`.**
|
159 | - `lexemes` mode key removed. **Use `keywords.$pattern`.**
|
160 | - The return values/keys of some APIs have changed slightly.
|
161 |
|
162 | Security:
|
163 |
|
164 | - HTML auto-passthru has been removed. Consider a plugin.
|
165 | - Unescaped HTML is now stripped (for security). A warning is logged to the console. (#3057) [Josh Goebel][]
|
166 |
|
167 | Themes:
|
168 |
|
169 | - The default padding of all themes increases (0.5em => 1em).
|
170 | - `schoolbook` has been updated to remove the lined background.
|
171 | - `github` updated to better match modern GitHub (#1616) [Jan Pilzer][]
|
172 | - `github-gist` has been removed in favor of `github` [Jan Pilzer][]
|
173 | - Base16 named themes have been updated to their "canonical" versions
|
174 | - `nnfx` updated for v11 xml styles and improved css support
|
175 |
|
176 | Language Grammars:
|
177 |
|
178 | - Default CDN build drops support for several languages.
|
179 | - Some language grammar files have been removed.
|
180 | - Some redundant language aliases have been removed.
|
181 |
|
182 | ### Other changes
|
183 |
|
184 | Parser:
|
185 |
|
186 | - enh(vala) improve language detection for Vala (#3195) [Konrad Rudolph][]
|
187 | - enh(r) add support for operators, fix number highlighting bug (#3194, #3195) [Konrad Rudolph][]
|
188 | - enh(parser) add `beginScope` and `endScope` to allow separate scoping begin and end (#3159) [Josh Goebel][]
|
189 | - enh(parsed) `endScope` now supports multi-class matchers as well (#3159) [Josh Goebel][]
|
190 | - enh(parser) `highlightElement` now always tags blocks with a consistent `language-[name]` class [Josh Goebel][]
|
191 | - subLanguage `span` tags now also always have the `language-` prefix added
|
192 | - enh(parser) support multi-class matchers (#3081) [Josh Goebel][]
|
193 | - enh(parser) Detect comments based on english like text, rather than keyword list [Josh Goebel][]
|
194 | - adds `title.class.inherited` sub-scope support [Josh Goebel][]
|
195 | - adds `title.class` sub-scope support (#3078) [Josh Goebel][]
|
196 | - adds `title.function` sub-scope support (#3078) [Josh Goebel][]
|
197 | - adds `beforeMatch` compiler extension (#3078) [Josh Goebel][]
|
198 | - adds `cssSelector ` configuration option (#3180) [James Edington][]
|
199 |
|
200 | Grammars:
|
201 |
|
202 | - enh(all) `.meta-keyword` => `.meta .keyword` (nested scopes) (#3167) [Josh Goebel][]
|
203 | - enh(all) `.meta-string` => `.meta .string` (nested scopes) (#3167) [Josh Goebel][]
|
204 | - enh(swift) add `actor` keyword (#3171) [Bradley Mackey][]
|
205 | - enh(crystal) highlight variables (#3154) [Josh Goebel][]
|
206 | - fix(ruby) Heredoc without interpolation (#3154) [Josh Goebel][]
|
207 | - enh(swift) add `@resultBuilder` attribute (#3151) [Bradley Mackey][]
|
208 | - enh(processing) added `pde` alias (#3142) [Dylan McBean][]
|
209 | - enh(thrift) Use proper scope for types [Josh Goebel][]
|
210 | - enh(java) Simplified class-like matcher (#3078) [Josh Goebel][]
|
211 | - enh(cpp) Simplified class-like matcher (#3078) [Josh Goebel][]
|
212 | - enh(rust) Simplified class-like matcher (#3078) [Josh Goebel][]
|
213 | - enh(actionscript) Simplified class-like matcher (#3078) [Josh Goebel][]
|
214 | - enh(arcade) `function.title` => `title.function` (#3078) [Josh Goebel][]
|
215 | - enh(autoit) `function.title` => `title.function` (#3078) [Josh Goebel][]
|
216 | - enh(c) `function.title` => `title.function` (#3078) [Josh Goebel][]
|
217 | - enh(rust) support function invoke and `impl` (#3078) [Josh Goebel][]
|
218 | - chore(properties) disable auto-detection #3102 [Josh Goebel][]
|
219 | - fix(properties) fix incorrect handling of non-alphanumeric keys #3102 [Egor Rogov][]
|
220 | - enh(java) support functions with nested template types (#2641) [Josh Goebel][]
|
221 | - enh(java) highlight types and literals separate from keywords (#3074) [Josh Goebel][]
|
222 | - enh(shell) add alias ShellSession [Ryan Mulligan][]
|
223 | - enh(shell) consider one space after prompt as part of prompt [Ryan Mulligan][]
|
224 | - fix(nginx) fix bug with $ and @ variables [Josh Goebel][]
|
225 | - enh(nginx) improving highlighting of some sections [Josh Goebel][]
|
226 | - fix(vim) variable names may not be zero length [Josh Goebel][]
|
227 | - enh(sqf) Updated keywords to Arma 3 v2.02 (#3084) [R3voA3][]
|
228 | - enh(sqf) Refactored function regex to match CBA component func naming scheme (#3181) [JonBons][]
|
229 | - enh(nim) highlight types properly (not as built-ins) [Josh Goebel][]
|
230 | - (chore) throttle deprecation messages (#3092) [Mihkel Eidast][]
|
231 | - enh(c) Update keyword list for C11/C18 (#3010) [Josh Goebel][]
|
232 | - enh(parser) highlight object properties (#3072) [Josh Goebel][]
|
233 | - enh(javascript/typescript) highlight object properties (#3072) [Josh Goebel][]
|
234 | - enh(haskell) add support for BinaryLiterals (#3150) [Martijn Bastiaan][]
|
235 | - enh(haskell) add support for NumericUnderscores (#3150) [Martijn Bastiaan][]
|
236 | - enh(haskell) add support for HexFloatLiterals (#3150) [Martijn Bastiaan][]
|
237 | - fix(c,cpp) allow declaring multiple functions and (for C++) parenthetical initializers (#3155) [Erik Demaine][]
|
238 | - enh(rust) highlight raw byte string literals correctly (#3173) [Nico Abram][]
|
239 | - fix(cpp) fix detection of common functions that are function templates (#3178) [Kris van Rens][]
|
240 | - enh(cpp) add various keywords and commonly used types for hinting (#3178) [Kris van Rens][]
|
241 | - enh(cpp) cleanup reserved keywords and type lists (#3178) [Kris van Rens][]
|
242 |
|
243 | New Languages:
|
244 |
|
245 | - Added 3rd party Glimmer grammar to SUPPORTED_LANGUAGES(#3123) [NullVoxPopuli][]
|
246 | - Added Wren support [Josh Goebel][]
|
247 | - Added NestedText support [Josh Goebel][]
|
248 | - Added WebAssembly language grammar [Josh Goebel][]
|
249 | - Added 3rd party Splunk search processing language grammar to SUPPORTED_LANGUAGES (#3090) [Wei Su][]
|
250 | - Added 3rd party ZenScript grammar to SUPPORTED_LANGUAGES(#3106) [Jared Luboff][]
|
251 | - Added 3rd party Papyrus grammar to SUPPORTED_LANGUAGES(#3125) [Mike Watling][]
|
252 |
|
253 | Theme Improvements:
|
254 |
|
255 | - Added all official Base16 themes (over 150 new themes) [Josh Goebel][]
|
256 | - chore(themes) remove `builtin-name` CSS class (#3119) [Josh Goebel][]
|
257 | - chore(theme) Update GitHub theme css to match GitHub's current styling (#1616) [Jan Pilzer][]
|
258 | - chore(theme) Update Srcery theme css to match its Emacs implementation [Chen Bin][]
|
259 |
|
260 | New Themes:
|
261 |
|
262 | - DeviBeans Dark by [Farzad Sadeghi][]
|
263 | - GitHub Dark and GitHub Dark Dimmed [Jan Pilzer][]
|
264 |
|
265 | Dev Improvements:
|
266 |
|
267 | - (chore) greatly improve match scope visualization in dev tool (#3126) [NullVoxPopuli][]
|
268 | - (fix) CSS used for devtool needed an adjustment to fix too wide of content (#3133) [NullVoxPopuli][]
|
269 |
|
270 | [Farzad Sadeghi]: https://github.com/terminaldweller
|
271 | [Martijn Bastiaan]: https://github.com/martijnbastiaan
|
272 | [Bradley Mackey]: https://github.com/bradleymackey
|
273 | [Dylan McBean]: https://github.com/DylanMcBean
|
274 | [Josh Goebel]: https://github.com/joshgoebel
|
275 | [Ryan Mulligan]: https://github.com/ryantm
|
276 | [R3voA3]: https://github.com/R3voA3
|
277 | [JonBons]: https://github.com/JonBons
|
278 | [Wei Su]: https://github.com/swsoyee
|
279 | [Jared Luboff]: https://github.com/jaredlll08
|
280 | [NullVoxPopuli]: https://github.com/NullVoxPopuli
|
281 | [Mike Watling]: https://github.com/Pickysaurus
|
282 | [Nico Abram]: https://github.com/nico-abram
|
283 | [James Edington]: http://www.ishygddt.xyz/
|
284 | [Jan Pilzer]: https://github.com/Hirse
|
285 | [Kris van Rens]: https://github.com/krisvanrens
|
286 |
|
287 |
|
288 | ## Version 10.7.1
|
289 |
|
290 | - fix(parser) Resolves issues with TypeScript types [Josh Goebel][]
|
291 |
|
292 | ### Version 10.7.0
|
293 |
|
294 | Parser:
|
295 |
|
296 | - keywords now have a maximum # of times they provide relevance (#3129) [Josh Goebel][]
|
297 | - enh(api) add `unregisterLanguage` method (#3009) [Antoine du Hamel][]
|
298 | - enh: Make alias registration case insensitive (#3026) [David Ostrovsky][]
|
299 | - fix(parser) `highlightAll()` now works if the library is lazy loaded [Josh Goebel][]
|
300 |
|
301 | New Languages:
|
302 |
|
303 | - Added 3rd party RiScript grammar to SUPPORTED_LANGUAGES (#2988) [John C][]
|
304 | - Added 3rd party HLSL grammar to SUPPORTED_LANGUAGES (#3002) [Stef Levesque][]
|
305 | - Added 3rd party Q# grammar to SUPPORTED_LANGUAGES(#3006) [Vyron Vasileiadis][]
|
306 |
|
307 | Language grammar improvements:
|
308 |
|
309 | - enh(js/ts) class references (CamelCase) are highlighted (#3169) [Josh Goebel][]
|
310 | - enh(js/ts) constants (ALL_CAPS) are highlighted (#3169) [Josh Goebel][]
|
311 | - enh(js/ts) highlights function invokation (#3169) [Josh Goebel][]
|
312 | - enh(js/ts) functions assigned to variables are now highlighted `title.function` (#3169) [Josh Goebel][]
|
313 | - enh(parser) smarter detection of comments (#2827) [Josh Goebel][]
|
314 | - fix(python) allow keywords immediately following numbers (#2985) [Josh Goebel][]
|
315 | - fix(xml) char immediately following tag close mis-highlighted (#3044) [Josh Goebel][]
|
316 | - fix(ruby) fix `defined?()` mis-highlighted as `def` (#3025) [Josh Goebel][]
|
317 | - fix(c) comments after `#include <str>` blocks (#3041) [Josh Goebel][]
|
318 | - fix(cpp) comments after `#include <str>` blocks (#3041) [Josh Goebel][]
|
319 | - enh(cpp) Highlight all function dispatches (#3005) [Josh Goebel][]
|
320 | - enh(python) support type hints and better type support (#2972) [Josh Goebel][]
|
321 | - enh(gml) Add additional GML 2.3 keywords (#2984) [xDGameStudios][]
|
322 | - fix(cpp) constructor support for initializers (#3001) [Josh Goebel][]
|
323 | - enh(php) Add `trait` to class-like naming patterns (#2997) [Ayesh][]
|
324 | - enh(php) Add `Stringable`, `UnhandledMatchError`, and `WeakMap` classes/interfaces (#2997) [Ayesh][]
|
325 | - enh(php) Add `mixed` to list of keywords (#2997) [Ayesh][]
|
326 | - enh(php) Add support binary, octal, hex and scientific numerals with underscore separator support (#2997) [Ayesh][]
|
327 | - enh(php) Add support for Enums (#3004) [Ayesh][]
|
328 | - enh(ecmascript) Add built-in types [Vaibhav Chanana][]
|
329 | - enh(kotlin) Add `kts` as an alias for Kotlin (#3021) [Vaibhav Chanana][]
|
330 | - enh(css) Add `font-smoothing` to attributes list for CSS (#3027) [AndyKIron][]
|
331 | - fix(python) Highlight `print` and `exec` as a builtin (#1468) [Samuel Colvin][]
|
332 | - fix(csharp) Fix unit being highlighted instead of uint (#3046) [Spacehamster][]
|
333 | - enh(swift) add async/await keywords (#3048) [Bradley Mackey][]
|
334 |
|
335 | Deprecations:
|
336 |
|
337 | - `highlight(languageName, code, ignoreIllegals, continuation)` deprecated as of 10.7
|
338 | - Please use the newer API which takes `code` and then accepts options as an object
|
339 | - IE: `highlight(code, {language, ignoreIllegals})`
|
340 | - `continuation` is for internal use only and no longer supported
|
341 | - `highlightBlock(el)` deprecated as of 10.7.
|
342 | - Please use `highlightElement(el)` instead.
|
343 | - Plugin callbacks renamed `before/after:highlightBlock` => `before/after:highlightElement`
|
344 | - Plugin callback now takes `el` vs `block` attribute
|
345 | - The old API and callbacks will be supported until v12.
|
346 |
|
347 |
|
348 | [Stef Levesque]: https://github.com/stef-levesque
|
349 | [Josh Goebel]: https://github.com/joshgoebel
|
350 | [John Cheung]: https://github.com/Real-John-Cheung
|
351 | [xDGameStudios]: https://github.com/xDGameStudios
|
352 | [Ayesh]: https://github.com/Ayesh
|
353 | [Vyron Vasileiadis]: https://github.com/fedonman
|
354 | [Antoine du Hamel]: https://github.com/aduh95
|
355 | [Vaibhav Chanana]: https://github.com/il3ven
|
356 | [David Ostrovsky]: https://github.com/davido
|
357 | [AndyKIron]: https://github.com/AndyKIron
|
358 | [Samuel Colvin]: https://github.com/samuelcolvin
|
359 |
|
360 | ## Version 10.6.0
|
361 |
|
362 | New Languages:
|
363 |
|
364 | - Added 3rd party Laravel Blade grammar to SUPPORTED_LANGUAGES (#2944) [Michael Newton][]
|
365 |
|
366 | Language grammar improvements:
|
367 |
|
368 | - enh(scala) fix triple quoted strings (#2987) [Josh Goebel][]
|
369 | - enh(perl) Much improved regex detection (#2960) [Josh Goebel][]
|
370 | - enh(swift) Improved highlighting for operator and precedencegroup declarations. (#2938) [Steven Van Impe][]
|
371 | - fix(xml) Support single-character namespaces. (#2957) [Jan Pilzer][]
|
372 | - enh(ruby) Support for character literals (#2950) [Vaibhav Chanana][]
|
373 | - enh(powershell) Add three VALID_VERBS and update the reference link (#2981) [davidhcefx][]
|
374 | - fix(php) Highlighting of anonymous functions without {} block [Vaibhav Chanana][]
|
375 |
|
376 | Grammar Deprecations:
|
377 |
|
378 | - Deprecate `c-like`, though you should not be using it directly anyways.
|
379 | - will be removed in v11.
|
380 | - `c` and `cpp` are now wholly unique grammars that will diverge over time
|
381 |
|
382 | Parser:
|
383 |
|
384 | - new simpler `highlightAll()` API (#2962) [Josh Goebel][]
|
385 | - this should be a drop-in replacement for both `initHighlighting()` and `initHighlightingOnLoad()`
|
386 | - note: it does not prevent itself from being called multiple times (as the previous API did)
|
387 | - `beginKeyword` no longer bestows double relevance (#2953) [Josh Goebel][]
|
388 | - allow `keywords` to be an array of strings [Josh Goebel][]
|
389 | - add `modes.MATCH_NOTHING_RE` that will never match
|
390 | - This can be used with `end` to hold a mode open (it must then be ended with `endsParent` in one of it's children modes) [Josh Goebel][]
|
391 |
|
392 | Deprecations:
|
393 |
|
394 | - `initHighlighting()` and `initHighlightingOnLoad()` deprecated.
|
395 | - Please use the new `highlightAll()` API instead.
|
396 | - Deprecated as of 10.6.
|
397 | - These will both be aliases to `highlightAll` in v11.
|
398 |
|
399 | [Michael Newton]: https://github.com/miken32
|
400 | [Steven Van Impe]: https://github.com/svanimpe/
|
401 | [Josh Goebel]: https://github.com/joshgoebel
|
402 | [Vaibhav Chanana]: https://github.com/il3ven
|
403 | [davidhcefx]: https://github.com/davidhcefx
|
404 | [Jan Pilzer]: https://github.com/Hirse
|
405 |
|
406 |
|
407 | ## Version 10.5.0
|
408 |
|
409 | Build:
|
410 |
|
411 | - Add Subresource Integrity digest lists to `cdn-assets` [Josh Goebel][]
|
412 | - R and VB.net grammars now ship in our default build (`:common`) [Josh Goebel][]
|
413 |
|
414 | Parser:
|
415 |
|
416 | - add `match` as sugar for simple `begin` only matches (#2834) [Josh Goebel][]
|
417 | - allow `illegal` to also be an array of regex (#2834) [Josh Goebel][]
|
418 | - add `compilerExtensions` allows grammers to influence mode compilation (#2834) [Josh Goebel][]
|
419 | - some internal pieces are now simple compiler extensions
|
420 |
|
421 | New Languages:
|
422 |
|
423 | - Added 3rd party Red & Rebol grammar to SUPPORTED_LANGUAGES (#2872) [Oldes Huhuman][]
|
424 |
|
425 | Language grammar improvements:
|
426 |
|
427 | - enh: CSS grammars now share common foundation, keywords, etc. (#2937) [Josh Goebel][]
|
428 | - enh(css): many consistency improvements
|
429 | - enh(scss): many consistency improvements
|
430 | - enh(stylus): many consistency improvements
|
431 | - enh(less): many consistency improvements
|
432 | - enh(cpp): Support C++ pack expansion in function arguments [Martin Dørum][]
|
433 | - enh(makefile): Add `make` as an alias (#2883) [tripleee][]
|
434 | - enh(swift) Improved grammar for strings (#2819) [Steven Van Impe][]
|
435 | - enh(swift) Grammar improvements (#2908) [Steven Van Impe][]
|
436 | - New grammar for keywords and built-ins
|
437 | - Added support for operator highlighting
|
438 | - New grammar for attributes
|
439 | - Added support for quoted identifiers, implicit parameters, and property wrapper projections
|
440 | - Support for more complex expressions in string interpolation
|
441 | - enh(swift) Improved highlighting for types and generic arguments (#2920) [Steven Van Impe][]
|
442 | - enh(swift) Improved highlighting for functions, initializers, and subscripts (#2930) [Steven Van Impe][]
|
443 | - fix(http) avoid recursive sublanguage and tighten rules (#2893) [Josh Goebel][]
|
444 | - fix(asciidoc): Handle section titles level 5 (#2868) [Vaibhav Chanana][]
|
445 | - fix(asciidoc): Support unconstrained emphasis syntax (#2869) [Guillaume Grossetie][]
|
446 | - enh(scheme) Allow `[]` for argument lists (#2913) [Josh Goebel][]
|
447 | - enh(vb) Large rework of VB.net grammar (#2808) [Jan Pilzer][]
|
448 | - Adds support for Date data types, see (#2775)
|
449 | - Adds support for `REM` comments and fixes `'''` doctags (#2875) (#2851)
|
450 | - Custom number mode to support VB.net specific number flags
|
451 | - Hex (&H), Oct (&O), and binary (&B) prefixes
|
452 | - Separating digits with underscores: 90_946
|
453 | - Type suffixes: 123UI (unsigned integer)
|
454 | - Improves directives detection and adds support for `Enable`, `Disable`, and `Then` keywords
|
455 | - Adds more markup tests
|
456 | - fix(javascript) Empty block-comments break highlighting (#2896) [Jan Pilzer][]
|
457 | - enh(dart) Fix empty block-comments from breaking highlighting (#2898) [Jan Pilzer][]
|
458 | - enh(dart) Fix empty doc-comment eating next line [Jan Pilzer][]
|
459 | - enh(asciidoc) Adds support for unconstrained bold syntax (#2869) [Guillaume Grossetie][]
|
460 | - enh(c-like) Incorrect highlighting for interger suffix (#2919) [Vaibhav Chanana][]
|
461 | - enh(properties) Correctly handle trailing backslash (#2922) [Vaibhav Chanana][]
|
462 |
|
463 | Recent Deprecations:
|
464 |
|
465 | - HTML "merging" is deprecated. (#2873) [Josh Goebel][]
|
466 | - HTML inside `<pre>` blocks will no longer be magically merged back into the
|
467 | highlighted code's HTML result - it will instead be silently removed.
|
468 | - Consider [using a plugin][htmlPlugin] if you truly need this functionality
|
469 | - Deprecated as of 10.5.0 - will be removed in v11.
|
470 | - `tabReplace` option deprecated. (#2873) [Josh Goebel][]
|
471 | - **Consider:** Use the CSS `tab-size` property, or simply pre-process the
|
472 | text yourself before rendering the initial HTML
|
473 | - otherwise, [use a plugin][tabPlugin]
|
474 | - Deprecated as of 10.5.0 - will be removed in v11.
|
475 | - `useBR` option deprecated. (#2559) [Josh Goebel][]
|
476 | - **Recommended:** You really should just use the HTML `<pre>` tag
|
477 | - or perhaps try CSS `white-space: pre;`
|
478 | - otherwise, [use a plugin][brPlugin]
|
479 | - Deprecated as of 10.3.0 - will be removed in v11.
|
480 | - `requireLanguage` API is deprecated, will be removed in v11.0.
|
481 | - **Consider:** Use `getLanguage` (with custom error handling) or built-time dependencies.
|
482 | - See [Library API](https://highlightjs.readthedocs.io/en/latest/api.html#requirelanguage-name) for more information.
|
483 | - Deprecated as of 10.4.0 - will be removed in v11.
|
484 |
|
485 | [htmlPlugin]: https://github.com/highlightjs/highlight.js/issues/2889
|
486 | [tabPlugin]: https://github.com/highlightjs/highlight.js/issues/2874
|
487 | [brPlugin]: https://github.com/highlightjs/highlight.js/issues/2559
|
488 |
|
489 | [Martin Dørum]: https://github.com/mortie
|
490 | [Jan Pilzer]: https://github.com/Hirse
|
491 | [Oldes Huhuman]: https://github.com/Oldes
|
492 | [Josh Goebel]: https://github.com/joshgoebel
|
493 | [tripleee]: https://github.com/tripleee
|
494 | [Steven Van Impe]: https://github.com/svanimpe/
|
495 | [Vaibhav Chanana]: https://github.com/il3ven
|
496 | [Guillaume Grossetie]: https://github.com/mogztter
|
497 |
|
498 |
|
499 | ## Version 10.4.1 (tentative)
|
500 |
|
501 | Security
|
502 |
|
503 | - (fix) Exponential backtracking fixes for: [Josh Goebel][]
|
504 | - cpp
|
505 | - handlebars
|
506 | - gams
|
507 | - perl
|
508 | - jboss-cli
|
509 | - r
|
510 | - erlang-repl
|
511 | - powershell
|
512 | - routeros
|
513 | - (fix) Polynomial backtracking fixes for: [Josh Goebel][]
|
514 | - asciidoc
|
515 | - reasonml
|
516 | - latex
|
517 | - kotlin
|
518 | - gcode
|
519 | - d
|
520 | - aspectj
|
521 | - moonscript
|
522 | - coffeescript/livescript
|
523 | - csharp
|
524 | - scilab
|
525 | - crystal
|
526 | - elixir
|
527 | - basic
|
528 | - ebnf
|
529 | - ruby
|
530 | - fortran/irpf90
|
531 | - livecodeserver
|
532 | - yaml
|
533 | - x86asm
|
534 | - dsconfig
|
535 | - markdown
|
536 | - ruleslanguage
|
537 | - xquery
|
538 | - sqf
|
539 |
|
540 | Very grateful to [Michael Schmidt][] for all the help.
|
541 |
|
542 | [Michael Schmidt]: https://github.com/RunDevelopment
|
543 | [Josh Goebel]: https://github.com/joshgoebel
|
544 |
|
545 |
|
546 | ## Version 10.4.0
|
547 |
|
548 | A largish release with many improvements and fixes from quite a few different contributors. Enjoy!
|
549 |
|
550 | Deprecations:
|
551 |
|
552 | - (chore) `requireLanguage` is deprecated.
|
553 | - Prefer `getLanguage` (with custom error handling) or built-time dependencies.
|
554 | - See [Library API](https://highlightjs.readthedocs.io/en/latest/api.html#requirelanguage-name) for more information.
|
555 |
|
556 | Parser:
|
557 |
|
558 | - enh(parser) use negative look-ahead for `beginKeywords` support (#2813) [Josh Goebel][]
|
559 | - enh(grammars) allow `classNameAliases` for more complex grammars [Josh Goebel][]
|
560 | - fix(vue): Language name now appears in CSS class (#2807) [Michael Rush][]
|
561 | - (chore) Clean up all regexs to be UTF-8 compliant/ready (#2759) [Josh Goebel][]
|
562 | - enh(grammars) allow `classNameAliases` for more complex grammars [Josh Goebel][]
|
563 |
|
564 | New Languages:
|
565 |
|
566 | - Added 3rd party Chapel grammar to SUPPORTED_LANGUAGES (#2806) [Brad Chamberlain][]
|
567 | - Added BBCode grammar to SUPPORTED_LANGUAGES (#2867) [Paul Reid][]
|
568 | - enh(javascript) Added `node-repl` for Node.js REPL sessions (#2792) [Marat Nagayev][]
|
569 |
|
570 | Language Improvements:
|
571 |
|
572 | - enh(shell) Recognize prompts which contain tilde `~` (#2859) [Guillaume Grossetie][]
|
573 | - enh(shell) Add support for multiline commands with line continuation `\` (#2861) [Guillaume Grossetie][]
|
574 | - enh(autodetect) Over 30+ improvements to auto-detect (#2745) [Josh Goebel][]
|
575 | - 4-5% improvement in auto-detect against large sample set
|
576 | - properties, angelscript, lsl, javascript, n1ql, ocaml, ruby
|
577 | - protobuf, hy, scheme, crystal, yaml, r, vbscript, groovy
|
578 | - python, java, php, lisp, matlab, clojure, csharp, css
|
579 | - fix(r) fixed keywords not properly spaced (#2852) [Josh Goebel][]
|
580 | - fix(javascript) fix potential catastrophic backtracking (#2852) [Josh Goebel][]
|
581 | - fix(livescript) fix potential catastrophic backtracking (#2852) [Josh Goebel][]
|
582 | - bug(xml) XML grammar was far too imprecise/fuzzy [Josh Goebel][]
|
583 | - enh(xml) Improve precision to prevent false auto-detect positives [Josh Goebel][]
|
584 | - fix(js/ts) Prevent for/while/if/switch from falsly matching as functions (#2803) [Josh Goebel][]
|
585 | - enh(julia) Update keyword lists for Julia 1.x (#2781) [Fredrik Ekre][]
|
586 | - enh(python) Match numeric literals per the language reference [Richard Gibson][]
|
587 | - enh(ruby) Match numeric literals per language documentation [Richard Gibson][]
|
588 | - enh(javascript) Match numeric literals per ECMA-262 spec [Richard Gibson][]
|
589 | - enh(java) Match numeric literals per Java Language Specification [Richard Gibson][]
|
590 | - enh(swift) Match numeric literals per language reference [Richard Gibson][]
|
591 | - enh(php) highlight variables (#2785) [Taufik Nurrohman][]
|
592 | - fix(python) Handle comments on decorators (#2804) [Jonathan Sharpe][]
|
593 | - enh(diff) improve highlighting of diff for git patches [Florian Bezdeka][]
|
594 | - fix(llvm) lots of small improvements and fixes (#2830) [Josh Goebel][]
|
595 | - enh(mathematica) Rework entire implementation [Patrick Scheibe][]
|
596 | - Correct matching of the many variations of Mathematica's numbers
|
597 | - Matching of named-characters aka special symbols like `\[Gamma]`
|
598 | - Updated list of version 12.1 built-in symbols
|
599 | - Matching of patterns, slots, message-names and braces
|
600 | - fix(swift) Handle keywords that start with `#` [Marcus Ortiz][]
|
601 | - enh(swift) Match `some` keyword [Marcus Ortiz][]
|
602 | - enh(swift) Match `@main` attribute [Marcus Ortiz][]
|
603 |
|
604 | Dev Improvements:
|
605 |
|
606 | - chore(dev) add theme picker to the tools/developer tool (#2770) [Josh Goebel][]
|
607 | - fix(dev) the Vue.js plugin no longer throws an exception when hljs is not in the global namespace [Kyle Brown][]
|
608 |
|
609 | New themes:
|
610 |
|
611 | - *StackOverflow Dark* by [Jan Pilzer][]
|
612 | - *StackOverflow Light* by [Jan Pilzer][]
|
613 |
|
614 | [Guillaume Grossetie]: https://github.com/mogztter
|
615 | [Brad Chamberlain]: https://github.com/bradcray
|
616 | [Marat Nagayev]: https://github.com/nagayev
|
617 | [Fredrik Ekre]: https://github.com/fredrikekre
|
618 | [Richard Gibson]: https://github.com/gibson042
|
619 | [Josh Goebel]: https://github.com/joshgoebel
|
620 | [Taufik Nurrohman]: https://github.com/taufik-nurrohman
|
621 | [Jan Pilzer]: https://github.com/Hirse
|
622 | [Jonathan Sharpe]: https://github.com/textbook
|
623 | [Michael Rush]: https://github.com/rushimusmaximus
|
624 | [Patrick Scheibe]: https://github.com/halirutan
|
625 | [Kyle Brown]: https://github.com/kylebrown9
|
626 | [Marcus Ortiz]: https://github.com/mportiz08
|
627 | [Paul Reid]: https://github.com/RedGuy12
|
628 |
|
629 |
|
630 | ## Version 10.3.1
|
631 |
|
632 | Prior version let some look-behind regex sneak in, which does not work
|
633 | yet on Safari. This release removes those incompatible regexes.
|
634 |
|
635 | Fix:
|
636 |
|
637 | - fix(Safari) Remove currently unsupported look-behind regex ([fix][187e7cfc]) [Josh Goebel][]
|
638 |
|
639 | [Josh Goebel]: https://github.com/joshgoebel
|
640 | [187e7cfc]: https://github.com/highlightjs/highlight.js/commit/187e7cfcb06277ce13b5f35fb6c37ab7a7b46de9
|
641 |
|
642 |
|
643 | ## Version 10.3.0
|
644 |
|
645 | Language Improvements:
|
646 |
|
647 | - enh(latex) Complete ground up rewrite of LaTex grammar [schtandard][]
|
648 | - fix(cpp) implement backslash line continuation in comments (#2757) [Konrad Rudolph][]
|
649 | - fix(cpp) improve parsing issues with templates (#2752) [Josh Goebel][]
|
650 | - enh(cpp) add support for `enum (struct|class)` and `union` (#2752) [Josh Goebel][]
|
651 | - fix(js/ts) Fix nesting of `{}` inside template literals SUBST expression (#2748) [Josh Goebel][]
|
652 | - enh(js/ts) Highlight class methods as functions (#2727) [Josh Goebel][]
|
653 | - fix(js/ts) `constructor` is now highlighted as a function title (not keyword) (#2727) [Josh Goebel][]
|
654 | - fix(c-like) preprocessor directives not detected after else (#2738) [Josh Goebel][]
|
655 | - enh(javascript) allow `#` for private class fields (#2701) [Chris Krycho][]
|
656 | - fix(js) prevent runaway regex (#2746) [Josh Goebel][]
|
657 | - fix(bash) enh(bash) allow nested params (#2731) [Josh Goebel][]
|
658 | - fix(python) Fix highlighting of keywords and strings (#2713, #2715) [Konrad Rudolph][]
|
659 | - fix(fsharp) Prevent `(*)` from being detected as a multi-line comment [Josh Goebel][]
|
660 | - enh(bash) add support for heredocs (#2684) [Josh Goebel][]
|
661 | - enh(r) major overhaul of the R language grammar (and fix a few bugs) (#2680) [Konrad Rudolph][]
|
662 | - enh(csharp) Add all C# 9 keywords, and other missing keywords (#2679) [David Pine][]
|
663 | - enh(objectivec) Add `objective-c++` and `obj-c++` aliases for Objective-C [Josh Goebel][]
|
664 | - enh(java) Add support for `record` (#2685) [Josh Goebel][]
|
665 | - fix(csharp) prevent modifier keywords wrongly flagged as `title` (#2683) [Josh Goebel][]
|
666 | - enh(axapta) Update keyword list for Axapta (X++) (#2686) [Ryan Jonasson][]
|
667 | - fix(fortran) FORTRAN 77-style comments (#2677) [Philipp Engel][]
|
668 | - fix(javascript) Comments inside params should be highlighted (#2702) [Josh Goebel][]
|
669 | - fix(scala) Comments inside class header should be highlighted (#1559) [Josh Goebel][]
|
670 | - fix(c-like) Correctly highlight modifiers (`final`) in class declaration (#2696) [Josh Goebel][]
|
671 | - enh(angelscript) Improve heredocs, numbers, metadata blocks (#2724) [Melissa Geels][]
|
672 | - enh(javascript) Implement Numeric Separators (#2617) [Antoine du Hamel][]
|
673 | - enh(typescript) TypeScript also gains support for numeric separators (#2617) [Antoine du Hamel][]
|
674 | - enh(php) Add support for PHP 8 `match` keyword and add `php8` as an alias (#2733) [Ayesh Karunaratne][]
|
675 | - fix(handlebars) Support if else keyboards (#2659) [Tom Wallace][]
|
676 |
|
677 | Deprecations:
|
678 |
|
679 | - `useBR` option deprecated and will be removed in v11.0. (#2559) [Josh Goebel][]
|
680 |
|
681 | [Chris Krycho]: https://github.com/chriskrycho
|
682 | [David Pine]: https://github.com/IEvangelist
|
683 |
|
684 |
|
685 | [Ryan Jonasson]: https://github.com/ryanjonasson
|
686 | [Philipp Engel]: https://github.com/interkosmos
|
687 | [Konrad Rudolph]: https://github.com/klmr
|
688 | [Melissa Geels]: https://github.com/codecat
|
689 | [Antoine du Hamel]: https://github.com/aduh95
|
690 | [Ayesh Karunaratne]: https://github.com/Ayesh
|
691 | [Tom Wallace]: https://github.com/thomasmichaelwallace
|
692 | [schtandard]: https://github.com/schtandard
|
693 |
|
694 |
|
695 | ## Version 10.2.1
|
696 |
|
697 | Parser Engine:
|
698 |
|
699 | - fix(parser) complete fix for resuming matches from same index (#2678) [Josh Goebel][]
|
700 |
|
701 | [Josh Goebel]: https://github.com/yyyc514
|
702 |
|
703 |
|
704 | ## Version 10.2.0
|
705 |
|
706 | Parser Engine:
|
707 |
|
708 | - (fix) When ignoring a potential match highlighting can terminate early (#2649) [Josh Goebel][]
|
709 |
|
710 | New themes:
|
711 |
|
712 | - *Gradient Light* by [Samia Ali]()
|
713 |
|
714 | Deprecations:
|
715 |
|
716 | - `fixMarkup` is now deprecated and will be removed in v11.0. (#2534) [Josh Goebel][]
|
717 |
|
718 | Big picture:
|
719 |
|
720 | - Add simple Vue plugin for basic use cases (#2544) [Josh Goebel][]
|
721 |
|
722 | Language Improvements:
|
723 |
|
724 | - fix(bash) Fewer false positives for keywords in arguments (#2669) [sirosen][]
|
725 | - fix(js) Prevent long series of /////// from causing freezes (#2656) [Josh Goebel][]
|
726 | - enh(csharp) Add `init` and `record` keywords for C# 9.0 (#2660) [Youssef Victor][]
|
727 | - enh(matlab) Add new R2019b `arguments` keyword and fix `enumeration` keyword (#2619) [Andrew Janke][]
|
728 | - fix(kotlin) Remove very old keywords and update example code (#2623) [kageru][]
|
729 | - fix(night) Prevent object prototypes method values from being returned in `getLanguage` (#2636) [night][]
|
730 | - enh(java) Add support for `enum`, which will identify as a `class` now (#2643) [ezksd][]
|
731 | - enh(nsis) Add support for NSIS 3.06 commands (#2653) [idleberg][]
|
732 | - enh(php) detect newer more flexible HEREdoc syntax (#2658) [eytienne][]
|
733 |
|
734 | [Youssef Victor]: https://github.com/Youssef1313
|
735 | [Josh Goebel]: https://github.com/joshgoebel
|
736 | [Andrew Janke]: https://github.com/apjanke
|
737 | [Samia Ali]: https://github.com/samiaab1990
|
738 | [kageru]: https://github.com/kageru
|
739 | [night]: https://github.com/night
|
740 | [ezksd]: https://github.com/ezksd
|
741 | [idleberg]: https://github.com/idleberg
|
742 | [eytienne]: https://github.com/eytienne
|
743 | [sirosen]: https://github.com/sirosen
|
744 |
|
745 |
|
746 | ## Version 10.1.1
|
747 |
|
748 | Fixes:
|
749 |
|
750 | - Resolve issue on Node 6 due to dangling comma (#2608) [Edwin Hoogerbeets][]
|
751 | - Resolve `index.d.ts is not a module` error (#2603) [Josh Goebel][]
|
752 |
|
753 | [Josh Goebel]: https://github.com/joshgoebel
|
754 | [Edwin Hoogerbeets]: https://github.com/ehoogerbeets
|
755 |
|
756 |
|
757 | ## Version 10.1.0
|
758 |
|
759 | New themes:
|
760 |
|
761 | - *NNFX* and *NNFX-dark* by [Jim Mason][]
|
762 | - *lioshi* by [lioshi][]
|
763 |
|
764 | Parser Engine:
|
765 |
|
766 | - (parser) Now escapes quotes in text content when escaping HTML (#2564) [Josh Goebel][]
|
767 | - (parser) Adds `keywords.$pattern` key to grammar definitions (#2519) [Josh Goebel][]
|
768 | - (parser) Adds SHEBANG utility mode [Josh Goebel][]
|
769 | - (parser) Adds `registerAliases` method (#2540) [Taufik Nurrohman][]
|
770 | - (enh) Added `on:begin` callback for modes (#2261) [Josh Goebel][]
|
771 | - (enh) Added `on:end` callback for modes (#2261) [Josh Goebel][]
|
772 | - (enh) Added ability to programatically ignore begin and end matches (#2261) [Josh Goebel][]
|
773 | - (enh) Added `END_SAME_AS_BEGIN` mode to replace `endSameAsBegin` parser attribute (#2261) [Josh Goebel][]
|
774 | - (fix) `fixMarkup` would rarely destroy markup when `useBR` was enabled (#2532) [Josh Goebel][]
|
775 |
|
776 | Deprecations:
|
777 |
|
778 | - `htmlbars` grammar is now deprecated. Use `handlebars` instead. (#2344) [Nils Knappmeier][]
|
779 | - when using `highlightBlock` `result.re` deprecated. Use `result.relevance` instead. (#2552) [Josh Goebel][]
|
780 | - ditto for `result.second_best.re` => `result.second_best.relevance` (#2552)
|
781 | - `lexemes` is now deprecated in favor of `keywords.$pattern` key (#2519) [Josh Goebel][]
|
782 | - `endSameAsBegin` is now deprecated. (#2261) [Josh Goebel][]
|
783 |
|
784 | Language Improvements:
|
785 |
|
786 | - fix(groovy) strings are not allowed inside ternary clauses (#2217) [Josh Goebel][]
|
787 | - fix(typescript) add `readonly` keyword (#2562) [Martin (Lhoerion)][]
|
788 | - fix(javascript) fix regex inside parens after a non-regex (#2530) [Josh Goebel][]
|
789 | - enh(typescript) use identifier to match potential keywords, preventing false positivites (#2519) [Josh Goebel][]
|
790 | - enh(javascript) use identifier to match potential keywords, preventing false positivites (#2519) [Josh Goebel][]
|
791 | - [enh] Add `OPTIMIZE:` and `HACK:` to the labels highlighted inside comments [Josh Goebel][]
|
792 | - enh(typescript/javascript/coffeescript/livescript) derive ECMAscript keywords from a common foudation (#2518) [Josh Goebel][]
|
793 | - enh(typescript) add setInterval, setTimeout, clearInterval, clearTimeout (#2514) [Josh Goebel][]
|
794 | - enh(javascript) add setInterval, setTimeout, clearInterval, clearTimeout (#2514) [Vania Kucher][]
|
795 | - enh(cpp) add `pair`, `make_pair`, `priority_queue` as built-ins (#2538) [Hankun Lin][]
|
796 | - enh(cpp) recognize `priority_queue` `pair` as cpp containers (#2541) [Hankun Lin][]
|
797 | - fix(javascript) prevent `set` keyword conflicting with setTimeout, etc. (#2514) [Vania Kucher][]
|
798 | - fix(cpp) Fix highlighting of unterminated raw strings (#2261) [David Benjamin][]
|
799 | - fix(javascript) `=>` function with nested `()` in params now works (#2502) [Josh Goebel][]
|
800 | - fix(typescript) `=>` function with nested `()` in params now works (#2502) [Josh Goebel][]
|
801 | - fix(yaml) Fix tags to include non-word characters (#2486) [Peter Plantinga][]
|
802 | - fix(swift) `@objcMembers` was being partially highlighted (#2543) [Nick Randall][]
|
803 | - enh(dart) Add `late` and `required` keywords, the `Never` built-in type, and nullable built-in types (#2550) [Sam Rawlins][]
|
804 | - enh(erlang) Add underscore separators to numeric literals (#2554) [Sergey Prokhorov][]
|
805 | - enh(handlebars) Support for sub-expressions, path-expressions, hashes, block-parameters and literals (#2344) [Nils Knappmeier][]
|
806 | - enh(protobuf) Support multiline comments (#2597) [Pavel Evstigneev][]
|
807 | - fix(toml) Improve key parsing (#2595) [Antoine du Hamel][]
|
808 |
|
809 | [Josh Goebel]: https://github.com/joshgoebel
|
810 | [Peter Plantinga]: https://github.com/pplantinga
|
811 | [David Benjamin]: https://github.com/davidben
|
812 | [Vania Kucher]: https://github.com/qWici
|
813 | [Hankun Lin]: https://github.com/Linhk1606
|
814 | [Nick Randall]: https://github.com/nicked
|
815 | [Sam Rawlins]: https://github.com/srawlins
|
816 | [Sergey Prokhorov]: https://github.com/seriyps
|
817 | [Nils Knappmeier]: https://github.com/nknapp
|
818 | [Martin (Lhoerion)]: https://github.com/Lhoerion
|
819 | [Jim Mason]: https://github.com/RocketMan
|
820 | [lioshi]: https://github.com/lioshi
|
821 | [Pavel Evstigneev]: https://github.com/Paxa
|
822 | [Antoine du Hamel]: https://github.com/aduh95
|
823 |
|
824 |
|
825 | ## Version 10.0.2
|
826 |
|
827 | Brower build:
|
828 |
|
829 | - [Issue](https://github.com/highlightjs/highlight.js/issues/2505) (bug) Fix: Version 10 fails to load as CommonJS module. (#2511) [Josh Goebel][]
|
830 | - [Issue](https://github.com/highlightjs/highlight.js/issues/2505) (removal) AMD module loading support has been removed. (#2511) [Josh Goebel][]
|
831 |
|
832 | Parser Engine Changes:
|
833 |
|
834 | - [Issue](https://github.com/highlightjs/highlight.js/issues/2522) fix(parser) Fix freez issue with illegal 0 width matches (#2524) [Josh Goebel][]
|
835 |
|
836 |
|
837 | [Josh Goebel]: https://github.com/joshgoebel
|
838 |
|
839 |
|
840 | ## Version 10.0.1
|
841 |
|
842 | Parser Engine Changes:
|
843 |
|
844 | - (bug) Fix sublanguage with no relevance score (#2506) [Josh Goebel][]
|
845 |
|
846 | [Josh Goebel]: https://github.com/joshgoebel
|
847 |
|
848 |
|
849 | ## Version 10.0.0
|
850 |
|
851 | New languages:
|
852 |
|
853 | - add(php-template) Explicit language to detect PHP templates (vs xml) [Josh Goebel][]
|
854 | - enh(python) Added `python-repl` for Python REPL sessions
|
855 | - add(never) Added 3rd party Never language support
|
856 |
|
857 | New themes:
|
858 |
|
859 | - *Srcery* by [Chen Bin][]
|
860 |
|
861 | Parser Engine Changes:
|
862 |
|
863 | - (bug) Fix `beginKeywords` to ignore . matches (#2434) [Josh Goebel][]
|
864 | - (enh) add `before:highlight` plugin API callback (#2395) [Josh Goebel][]
|
865 | - (enh) add `after:highlight` plugin API callback (#2395) [Josh Goebel][]
|
866 | - (enh) split out parse tree generation and HTML rendering concerns (#2404) [Josh Goebel][]
|
867 | - (enh) every language can have a `name` attribute now (#2400) [Josh Goebel][]
|
868 | - (enh) improve regular expression detect (less false-positives) (#2380) [Josh Goebel][]
|
869 | - (enh) make `noHighlightRe` and `languagePrefixRe` configurable (#2374) [Josh Goebel][]
|
870 |
|
871 | Language Improvements:
|
872 |
|
873 | - enh(python) Exclude parens from functions params (#2490) [Álvaro Mondéjar][]
|
874 | - enh(swift) Add `compactMap` to keywords as built_in (#2478) [Omid Golparvar][]
|
875 | - enh(nim) adds `func` keyword (#2468) [Adnan Yaqoob][]
|
876 | - enh(xml) deprecate ActionScript inside script tags (#2444) [Josh Goebel][]
|
877 | - fix(javascript) prevent get/set variables conflicting with keywords (#2440) [Josh Goebel][]
|
878 | - bug(clojure) Now highlights `defn-` properly (#2438) [Josh Goebel][]
|
879 | - enh(bash) default value is another variable (#2439) [Josh Goebel][]
|
880 | - enh(bash) string nested within string (#2439) [Josh Goebel][]
|
881 | - enh(bash) Add arithmetic expression support (#2439) [Josh Goebel][]
|
882 | - enh(clojure) Add support for global definitions name (#2347) [Alexandre Grison][]
|
883 | - enh(fortran) Support Fortran 77 style comments (#2416) [Josh Goebel][]
|
884 | - (csharp) add support for `@identifier` style identifiers (#2414) [Josh Goebel][]
|
885 | - fix(elixir) Support function names with a slash (#2406) [Josh Goebel][]
|
886 | - fix(javascript) comma is allowed in a "value container" (#2403) [Josh Goebel][]
|
887 | - enh(apache) add `deny` and `allow` keywords [Josh Goebel][]
|
888 | - enh(apache) highlight numeric attributes values [Josh Goebel][]
|
889 | - enh(apache) highlight IP addresses, ports, and strings in sections [Josh Goebel][]
|
890 | - enh(php) added more keywords and include `<?=` syntax to meta [Taufik Nurrohman][]
|
891 | - fix(protobuf) Fix `rpc` when followed by a block (#) [Josh Goebel][]
|
892 | - enh(zephir) almost complete rework of the zephir grammar (#2387) [Josh Goebel][]
|
893 | - (markdown) much improved code block support (#2382) [Josh Goebel][]
|
894 | - (markdown) improve bold/italic nesting (#2382) [Josh Goebel][]
|
895 | - enh(csharp) Support `where` keyword as class constraint (#2378) [Josh Goebel][]
|
896 | - enh(csharp) Allow reference path in class inheritance lists (#2378) [Josh Goebel][]
|
897 | - enh(csharp) Add generic modifiers (in, out) (#2378) [Josh Goebel][]
|
898 | - (fortran) enh(fortran) support intrinsic data types (#2379) [Josh Goebel][]
|
899 | - enh(java) annotations can include numbers (#2377) [Josh Goebel][]
|
900 | - enh(java) annotations can take params (#2377) [Josh Goebel][]
|
901 | - enh(java) allow annotations inside function call params (#2377) [Josh Goebel][]
|
902 | - enh(parser) pre/post-highlightBlock callbacks via plugin (#2285) [Josh Goebel][]
|
903 | - (fortran) Add Fortran 2018 keywords and coarray intrinsics (#2361) [Sam Miller][]
|
904 | - (delphi) highlight hexadecimal, octal, and binary numbers (#2370) [Robert Riebisch]()
|
905 | - enh(plaintext) added `text` and `txt` as alias (#2360) [Taufik Nurrohman][]
|
906 | - enh(powershell) added PowerShell v5.1/v7 default aliases as "built_in"s (#2423) [Sean Williams][]
|
907 | - enh(yaml) added support for timestamps (#2475) [Peter Plantinga][]
|
908 |
|
909 | Developer Tools:
|
910 |
|
911 | - added Dockerfile for optionally developing with a container
|
912 |
|
913 | [Omid Golparvar]: https://github.com/omidgolparvar
|
914 | [Alexandre Grison]: https://github.com/agrison
|
915 | [Josh Goebel]: https://github.com/joshgoebel
|
916 | [Chen Bin]: https://github.com/redguardtoo
|
917 | [Sam Miller]: https://github.com/smillerc
|
918 | [Robert Riebisch]: https://github.com/bttrx
|
919 | [Taufik Nurrohman]: https://github.com/taufik-nurrohman
|
920 | [Josh Goebel]: https://github.com/joshgoebel
|
921 | [Sean Williams]: https://github.com/hmmwhatsthisdo
|
922 | [Adnan Yaqoob]: https://github.com/adnanyaqoobvirk
|
923 | [Álvaro Mondéjar]: https://github.com/mondeja
|
924 |
|
925 |
|
926 | ## Version 9.18.1
|
927 |
|
928 | Grammar Improvements:
|
929 |
|
930 | - bug(coffeescript) fix freezing bug due to badly behaved regex (#2376) [Josh Goebel][]
|
931 |
|
932 | [Josh Goebel]: https://github.com/joshgoebel
|
933 |
|
934 |
|
935 | ## Version 9.18.0
|
936 |
|
937 | New languages:
|
938 |
|
939 | - none.
|
940 |
|
941 | New themes:
|
942 |
|
943 | - none.
|
944 |
|
945 | Core Changes:
|
946 |
|
947 | - none.
|
948 |
|
949 | Language Improvements:
|
950 |
|
951 | - (javascript) fix JSX self-closing tag issues (#2322) [Josh Goebel][]
|
952 | - (fortran) added `block` and `endblock` keywords (#2343) [Philipp Engel][]
|
953 | - (javascript) support jsx fragments (#2333) [Josh Goebel][]
|
954 | - (ini) support TOML arrays, clean up grammar (#2335) [Josh Goebel][]
|
955 | - (vbnet) add nameof operator to the keywords (#2329) [Youssef Victor][]
|
956 | - (stan) updated with improved coverage of language keywords and patterns. (#1829) [Jeffrey Arnold][]
|
957 | - enh(cpp) Detect namespaced function types (`A::typeName func(...)`) (#2332) [Josh Goebel][]
|
958 | - enh(cpp) Detect namespaced functions also (`A::functionName`) (#2332) [Josh Goebel][]
|
959 | - enh(cpp) Properly detect decltype(auto) (#2332) [Josh Goebel][]
|
960 | - enh(cpp) recognize primitive types (`int8_t`, etc.) as function types (#2332) [Josh Goebel][]
|
961 |
|
962 | Developer Tools:
|
963 |
|
964 | - feat(developer): add button to show parsed structure (#2345) [Nils Knappmeier][]
|
965 |
|
966 | [Jeffrey Arnold]: https://github.com/jrnold
|
967 | [Josh Goebel]: https://github.com/joshgoebel
|
968 | [Philipp Engel]: https://github.com/interkosmos
|
969 | [Youssef Victor]: https://github.com/Youssef1313
|
970 | [Nils Knappmeier]: https://github.com/nknapp
|
971 |
|
972 |
|
973 | ## Version 9.17.1
|
974 |
|
975 | Fixes:
|
976 |
|
977 | - fix(parser): resolve IE 11 issue with Object.freeze() (#2319) [Josh Goebel][]
|
978 |
|
979 | [Josh Goebel]: https://github.com/joshgoebel
|
980 |
|
981 |
|
982 | ## Version 9.17.0
|
983 |
|
984 | New languages:
|
985 |
|
986 | - none.
|
987 |
|
988 | New themes:
|
989 |
|
990 | - *Gradient Dark* by [Samia Ali][]
|
991 |
|
992 | Core Improvements:
|
993 |
|
994 | - chore(parser): switch from `createElementNS` to `createElement` (#2314) [Josh Goebel][]
|
995 | - enh(parser): add better error when a language requirement is missing (#2311) [Josh Goebel][]
|
996 | - fix(parser/docs): disallow `self` mode at the top-level of a language (#2294) [Josh Goebel][]
|
997 | - enh(parser) add safe & debug modes. Better error handling for crash conditions. (#2286) [Josh Goebel][]
|
998 | - fix(parser): Fix merger HTML attribute quoting (#2235) [Josh Goebel][]
|
999 | - fix(parser): Look-ahead regex now work for end matches also (#2237) [Josh Goebel][]
|
1000 | - fix(parser): Better errors when a language is missing (#2236) [Josh Goebel][]
|
1001 | - fix(parser): freeze built-in modes to prevent grammars altering them (#2271) [Josh Goebel][]
|
1002 | - fix(themes): fix inconsistencies between some themes padding/spacing (#2300) [Josh Goebel][]
|
1003 | - ehh(build) Add CI check for building a "use strict" safe rollup package from NPM builds (#2247) [Josh Goebel][]
|
1004 | - fix(pkg): Prefix global addEventListener with window to be able to minify with closure compiler (#2305) [Kirill Saksin]()
|
1005 |
|
1006 | Language Improvements:
|
1007 |
|
1008 | - fix(sql): backslash is not used to escape in strings in standard SQL (#1748) [Mike Schall][]
|
1009 | - enh(ebnf) add backticks as additional string variant (#2290) [Chris Marchesi][]
|
1010 | - chore(javascript): add esm related extensions to aliases (#2298) [Rongjian Zhang][]
|
1011 | - fix(kotlin): fix termination of """ string literals (#2295) [Josh Goebel][]
|
1012 | - fix(mercury): don't change global STRING modes (#2271) [Josh Goebel][]
|
1013 | - enh(xml) expand and improve document type highlighting (#2287) [w3suli][]
|
1014 | - enh(ebnf) add underscore as allowed meta identifier character, and dot as terminator (#2281) [Chris Marchesi][]
|
1015 | - fix(makefile) fix double relevance for assigns, improves auto-detection (#2278) [Josh Goebel][]
|
1016 | - enh(xml) support for highlighting entities (#2260) [w3suli][]
|
1017 | - enh(gml) fix naming of keyword class (consistency fix) (#2254) [Liam Nobel][]
|
1018 | - enh(javascript): Add support for jsdoc comments (#2245) [Milutin Kristofic][]
|
1019 | - fix(python) fix `if` getting confused as an f-string (#2200) [Josh Goebel][] and [Carl Baxter][]
|
1020 | - enh(powershell) major overhaul, huge improvements (#2224)
|
1021 | - enh(css) Improve @rule highlighting, including properties (#2241) [Josh Goebel][]
|
1022 | - enh(css) Improve highlighting of numbers inside expr/func `calc(2px+3px)` (#2241)
|
1023 | - enh(scss) Pull some of the CSS improvements back into SCSS (#2241)
|
1024 | - fix(go): Fix escaped character literals (#2266) [David Benjamin][]
|
1025 | - fix(objectivec): Fix various preprocessor highlighting issues (#2265) [David Benjamin][]
|
1026 | - fix(objectivec): Handle multibyte character literals (#2268) [David Benjamin][]
|
1027 | - enh(cpp): Add additional keywords (#2289) [Adrian Ostrowski][]
|
1028 |
|
1029 | [Josh Goebel]: https://github.com/joshgoebel
|
1030 | [Liam Nobel]: https://github.com/liamnobel
|
1031 | [Carl Baxter]: https://github.com/cdbax
|
1032 | [Milutin Kristofic]: https://github.com/milutin
|
1033 | [w3suli]: https://github.com/w3suli
|
1034 | [David Benjamin]: https://github.com/davidben
|
1035 | [Chris Marchesi]: https://github.com/vancluever
|
1036 | [Adrian Ostrowski]: https://github.com/aostrowski
|
1037 | [Rongjian Zhang]: https://github.com/pd4d10
|
1038 | [Mike Schall]: https://github.com/schallm
|
1039 | [Kirill Saksin]: https://github.com/saksmt
|
1040 | [Samia Ali]:https://github.com/samiaab1990
|
1041 | [Erik Demaine]:https://github.com/edemaine
|
1042 |
|
1043 |
|
1044 | ## Version 9.16.2
|
1045 |
|
1046 | New languages:
|
1047 | none.
|
1048 |
|
1049 | New styles:
|
1050 | none.
|
1051 |
|
1052 | Improvements:
|
1053 | - fix(arduino) Resolves issue with arduino.js not being "use strict" safe (#2247)
|
1054 |
|
1055 |
|
1056 | ## Version 9.16.1
|
1057 |
|
1058 | New languages:
|
1059 | none.
|
1060 |
|
1061 | New styles:
|
1062 | - *Night Owl* by [Carl Baxter][]
|
1063 |
|
1064 | Improvements:
|
1065 | - Add CLI tool to quickly check for relevance conflicts [Mark Ellis][] (#1554)
|
1066 | - enhance(twig) update list of filter and tags (#2090)
|
1067 | - fix(crystal): correctly highlight `!~` method definition (#2222)
|
1068 | - fix dropping characters if we choke up on a 0-width match (#2219)
|
1069 | - (accesslog) improve accesslog relevancy scoring (#2172)
|
1070 | - fix(shell): fix parsing of prompts with forward slash (#2218)
|
1071 | - improve parser to properly support look-ahead regex in begin matchers (#2135)
|
1072 | - blacklist super-common keywords from having relevance (#2179)
|
1073 | - fix(swift): support for `@dynamicMemberLookup` and `@propertyWrapper` (#2202)
|
1074 | - fix: `endWithParent` inside `starts` now always works (#2201)
|
1075 | - fix(typescript): constructor in declaration doesn't break highlighting
|
1076 | - fix(typescript): only match function keyword as a separate identifier (#2191)
|
1077 | - feature(arduino) make arduino a super-set of cpp grammar
|
1078 | - fix(javascript): fix object attributes immediately following line comments
|
1079 | - fix(xml): remove `vbscript` as potential script tag subLanguage
|
1080 | - fix(Elixir): improve regex for numbers
|
1081 | - fix(YAML): improve matching for keys, blocks and numbers
|
1082 | - fix(Pony): improve regex for numbers
|
1083 | - fix(handlebars): add support for raw-blocks, and triple-mustaches(#2175)
|
1084 | - fix(handlebars): fix parsing of block-comments containing closing mustaches (#2175)
|
1085 | - fix(handlebars): add support for segment-literal notation, and escaped mustaches (#2184)
|
1086 | - JSON: support for comments in JSON (#2016)
|
1087 | - fix(cpp): improve string literal matching
|
1088 | - fix(highlight.js): omit empty span-tags in the output (#2182)
|
1089 | - fix(Go): improve function declaration matching
|
1090 | - fix(python): added support for f-string literal curly braces (#2195)
|
1091 | - fix(cpp): add `future` built-in (#1610)
|
1092 | - fix(python): support comments within function parameters (#2214)
|
1093 |
|
1094 | [Carl Baxter]: https://github.com/cdbax
|
1095 | [Mark Ellis]: https://github.com/ellismarkf
|
1096 |
|
1097 | ## Version 9.15.10
|
1098 | New languages:
|
1099 | none.
|
1100 | New styles:
|
1101 | none.
|
1102 | Improvements:
|
1103 | - support for ruby's squiggly heredoc (#2049)
|
1104 | - support css custom properties (#2082)
|
1105 | - fix(PureBASIC): update to 5.60 (#1508)
|
1106 | - fix(Kotlin): parenthesized types in function declaration (#2107)
|
1107 | - fix(Kotlin): nested comment (#2104)
|
1108 | - fix(isbl): contains key typo (#2103)
|
1109 | - fix(github-gist.css): match Github styles (#2100)
|
1110 | - fix(elm): update to latest elm syntax (#2088)
|
1111 | - fix: Support highlighting inline HTML and CSS tagged template strings in JS and TS (#2105)
|
1112 | - feat(YAML): add YAML to common languages (#1952)
|
1113 | - feat(xml): Add support for Windows Script File (.wsf), inline VBScript in XML `script` tags (#1690)
|
1114 |
|
1115 | ## Version 9.15.9
|
1116 |
|
1117 | Improvements:
|
1118 | - fix(AutoHotkey): order and extended highlighting (#1579)
|
1119 | - fix(Go): correctly highlight hex numbers, rather than stopping at last 'd' or 'f'. (#2060)
|
1120 | - fix(Mathematica): Improvements to language (#2065)
|
1121 | - fix(Node): Adds SCSS build (#2079)
|
1122 | - fix(Rust): update keywords (#2052)
|
1123 | - fix(Stata): Added keywords for the meta-analysis suite introduced in Stata 16 (#2081)
|
1124 | - fix(Bash): escape double quotes (#2048)
|
1125 |
|
1126 | ## Version 9.15.8
|
1127 |
|
1128 | New languages:
|
1129 | none.
|
1130 | New styles:
|
1131 | none.
|
1132 | Improvements:
|
1133 | - fix(bash): revert escaped double quotes - broke Firefox/Safari.
|
1134 |
|
1135 | ## Version 9.15.7
|
1136 | New languages:
|
1137 | none.
|
1138 | New styles:
|
1139 | none.
|
1140 | Improvements:
|
1141 | - fix(powershell): Add cmdlets (#2022)
|
1142 | - fix(Bash): escaped double quotes (#2041)
|
1143 | - fix(c++): add aliases 'hh', 'hxx', 'cxx' (#2017)
|
1144 | - fix(ini/toml): Support comments on the same line. (#2039)
|
1145 | - fix(JSX): not rendering well in a function without parentheses. (#2024)
|
1146 | - fix(LiveCode): language definition update (#2021)
|
1147 | - fix(markdown): indented lists (#2004)
|
1148 | - fix(styles/school-book): don't style all the pre, use .hljs instead (#2034)
|
1149 | - fix(JSX): Modify JSX tag detection to use XML language regex in place of simplistic \w+
|
1150 |
|
1151 | ## Version 9.15.6
|
1152 | New languages:
|
1153 | none.
|
1154 | New styles:
|
1155 | none.
|
1156 | Improvements:
|
1157 | - Move dependencies to be devDependencies.
|
1158 | - Fixed security issues in dev dependencies.
|
1159 |
|
1160 | ## Version 9.15.5
|
1161 | New languages:
|
1162 | none.
|
1163 | New styles:
|
1164 | none.
|
1165 | Improvements:
|
1166 | 🔥 Hot fix: updated build tool.
|
1167 |
|
1168 | ## Version 9.15.4
|
1169 | New languages:
|
1170 | none.
|
1171 | New styles:
|
1172 | none.
|
1173 | Improvements:
|
1174 | 🔥 Hot fix: reverted hljs cli build tool, as it was causing issues with install.
|
1175 |
|
1176 | ## Version 9.15.3
|
1177 | New languages:
|
1178 | none.
|
1179 | New styles:
|
1180 | none.
|
1181 | Improvements:
|
1182 | 🔥 Hot fix: reverted hljs cli build tool, as it was causing issues with install.
|
1183 |
|
1184 | ## Version 9.15.2
|
1185 | New languages:
|
1186 | none.
|
1187 | New styles:
|
1188 | none.
|
1189 | Improvements:
|
1190 | 🔥 Hot fix that was preventing highlight.js from installing.
|
1191 |
|
1192 | ## Version 9.15.1
|
1193 |
|
1194 | New languages:
|
1195 | none.
|
1196 |
|
1197 | New styles:
|
1198 | none.
|
1199 |
|
1200 | Improvements:
|
1201 |
|
1202 | - Pony: Fixed keywords without spaces at line ends, highlighting of `iso` in class definitions, and function heads without bodies in traits and interfaces. Removed FUNCTION and CLASS modes until they are found to be needed and to provide some of the fixes.
|
1203 | - Support external language files in minified version of highlight.js (#1888)
|
1204 |
|
1205 | ## Version 9.15
|
1206 |
|
1207 | New languages:
|
1208 | none.
|
1209 |
|
1210 | New styles:
|
1211 | none.
|
1212 |
|
1213 | Improvements:
|
1214 | - new cli tool `hljs` - allows easier [building from command line](docs/building-testing.rst#building-a-bundle-from-the-command-line).
|
1215 | - cpp: Fully support C++11 raw strings. (#1897)
|
1216 | - Python: Treat False None and True as literals (#1920)
|
1217 |
|
1218 | ## Version 9.14.2
|
1219 |
|
1220 | New languages:
|
1221 | none.
|
1222 | New styles:
|
1223 | none.
|
1224 | Improvements:
|
1225 | - *Gauss* fixed to stop global namespace pollution [Scott Hyndman][].
|
1226 | - fix(Tcl): removed apostrophe string delimiters (don't exist)
|
1227 |
|
1228 | [Scott Hyndman]: https://github.com/shyndman
|
1229 |
|
1230 | ## Version 9.14.1
|
1231 |
|
1232 | New languages:
|
1233 | none.
|
1234 | New styles:
|
1235 | none.
|
1236 | Improvements:
|
1237 | - Pony: language improvements (#1958)
|
1238 |
|
1239 | ## Version 9.14.0
|
1240 |
|
1241 | New languages:
|
1242 | none.
|
1243 | New styles:
|
1244 | none.
|
1245 | Improvements:
|
1246 | - Pony: add missing "object" highlighting (#1932)
|
1247 | - Added *XQuery* built-in functions, prolog declarations, as well as parsing of function bodies, computed and direct constructors, by [Duncan Paterson][]
|
1248 | - fix(dart): Corrects highlighting with string interpolation. (#1946)
|
1249 | - fix(swift): be eager on optional-using types (!/?) (#1919)
|
1250 | - fix(tex): Changed cyrillic to unicode (IE11 throw SCRIPT5021) (#1601)
|
1251 | - fix(JavaScript): Recognize get/set accessor keywords (#1940)
|
1252 | - Fixed Dockerfile definition when using highlight continuation parameter, by [Laurent Voullemier][]
|
1253 | - Added tests & new `annotation` and `verbatim` keywords to *Crystal*, by [Benoit de Chezelles][]
|
1254 | - Added missing dockerfile markup tests, by [Laurent Voullemier][]
|
1255 | Allow empty prompt text in clojure-repl, by [Egor Rogov][]
|
1256 | - Fixed several issues with *Crystal* language definition, by [Johannes Müller][]
|
1257 | - Added `C#` as an alias for *CSharp* language, by [Ahmed Atito][]
|
1258 | - Added generic user-defined proc support, new compiler define, refactor to re-use rules, and add tests to *GAUSS*, by [Matthew Evans][]
|
1259 | - Improve *Crystal* language to highlight regexes after some keywords, by [Tsuyusato Kitsune][]
|
1260 | - Fix filterByQualifiers: fileInfo can be null
|
1261 | - Fixed String interpolation in Dart, by [Scott Hyndman][].
|
1262 |
|
1263 | [Laurent Voullemier]: https://github.com/l-vo
|
1264 | [Benoit de Chezelles]: https://github.com/bew
|
1265 | [Johannes Müller]: https://github.com/straight-shoota
|
1266 | [Ahmed Atito]: https://github.com/atitoa93
|
1267 | [Matthew Evans]: https://github.com/matthewevans
|
1268 | [Tsuyusato Kitsune]: https://github.com/MakeNowJust
|
1269 | [Scott Hyndman]: https://github.com/shyndman
|
1270 | [Duncan Paterson]: https://github.com/duncdrum
|
1271 |
|
1272 | ## Version 9.13.1
|
1273 |
|
1274 | Improvements:
|
1275 |
|
1276 | - *C#* function declarations no longer include trailing whitespace, by [JeremyTCD][]
|
1277 | - Added new and missing keywords to *AngelScript*, by [Melissa Geels][]
|
1278 | - *TypeScript* decorator factories highlighting fix, by [Antoine Boisier-Michaud][]
|
1279 | - Added support for multiline strings to *Swift*, by [Alejandro Isaza][]
|
1280 | - Fixed issue that was causing some minifiers to fail.
|
1281 | - Fixed `autoDetection` to accept language aliases.
|
1282 |
|
1283 | [JeremyTCD]: https://github.com/JeremyTCD
|
1284 | [Melissa Geels]: https://github.com/codecat
|
1285 | [Antoine Boisier-Michaud]: https://github.com/Aboisier
|
1286 | [Alejandro Isaza]: https://github.com/alejandro-isaza
|
1287 |
|
1288 | ## Version 9.13.0
|
1289 |
|
1290 | New languages:
|
1291 |
|
1292 | - *ArcGIS Arcade* by [John Foster][]
|
1293 | - *AngelScript* by [Melissa Geels][]
|
1294 | - *GML* by [meseta][]
|
1295 | - *isbl* built-in language DIRECTUM and Conterra by [Dmitriy Tarasov][].
|
1296 | - *PostgreSQL* SQL dialect and PL/pgSQL language by [Egor Rogov][].
|
1297 | - *ReasonML* by [Gidi Meir Morris][]
|
1298 | - *SAS* by [Mauricio Caceres Bravo][]
|
1299 | - *Plaintext* by [Egor Rogov][]
|
1300 | - *.properties* by [bostko][] and [Egor Rogov][]
|
1301 |
|
1302 | New styles:
|
1303 |
|
1304 | - *a11y-dark theme* by [Eric Bailey][]
|
1305 | - *a11y-light theme* by [Eric Bailey][]
|
1306 | - *An Old Hope* by [Gustavo Costa][]
|
1307 | - *Atom One Dark Reasonable* by [Gidi Meir Morris][]
|
1308 | - *isbl editor dark* by [Dmitriy Tarasov][]
|
1309 | - *isbl editor light* by [Dmitriy Tarasov][]
|
1310 | - *Lightfair* by [Tristian Kelly][]
|
1311 | - [*Nord*][nord-highlightjs] by [Arctic Ice Studio][]
|
1312 | - *[🦄 Shades of Purple](https://github.com/ahmadawais/Shades-of-Purple-HighlightJS)* by [Ahmad Awais][]
|
1313 |
|
1314 | Improvements:
|
1315 |
|
1316 | - New attribute `endSameAsBegin` for nested constructs with variable names
|
1317 | by [Egor Rogov][].
|
1318 | - *Python* highlighting of escaped quotes fixed by [Harmon][]
|
1319 | - *PHP*: Added alias for php7, by [Vijaya Chandran Mani][]
|
1320 | - *C++* string handling, by [David Benjamin][]
|
1321 | - *Swift* Add `@objcMembers` to `@attributes`, by [Berk Çebi][]
|
1322 | - Infrastructural changes by [Marcos Cáceres][]
|
1323 | - Fixed metachars highighting for *NSIS* by [Jan T. Sott][]
|
1324 | - *Yaml* highlight local tags as types by [Léo Lam][]
|
1325 | - Improved highlighting for *Elixir* by [Piotr Kaminski][]
|
1326 | - New attribute `disableAutodetect` for preventing autodetection by [Egor Rogov][]
|
1327 | - *Matlab*: transpose operators and double quote strings, by [JohnC32][] and [Egor Rogov][]
|
1328 | - Various documentation typos and improvemets by [Jimmy Wärting][], [Lutz Büch][], [bcleland][]
|
1329 | - *Cmake* updated with new keywords and commands by [Deniz Bahadir][]
|
1330 |
|
1331 | [Ahmad Awais]: https://github.com/ahmadawais
|
1332 | [Arctic Ice Studio]: https://github.com/arcticicestudio
|
1333 | [Dmitriy Tarasov]: https://github.com/MedvedTMN
|
1334 | [Egor Rogov]: https://github.com/egor-rogov
|
1335 | [Eric Bailey]: https://github.com/ericwbailey
|
1336 | [Gidi Meir Morris]: https://github.com/gmmorris
|
1337 | [Gustavo Costa]: https://github.com/gusbemacbe
|
1338 | [Harmon]: https://github.com/Harmon758
|
1339 | [Melissa Geels]: https://github.com/codecat
|
1340 | [meseta]: https://github.com/meseta
|
1341 | [nord-highlightjs]: https://github.com/arcticicestudio/nord-highlightjs
|
1342 | [Tristian Kelly]: https://github.com/TristianK3604
|
1343 | [Vijaya Chandran Mani]: https://github.com/vijaycs85
|
1344 | [John Foster]: https://github.com/jf990
|
1345 | [David Benjamin]: https://github.com/davidben
|
1346 | [Berk Çebi]: https://github.com/berkcebi
|
1347 | [Mauricio Caceres Bravo]: https://github.com/mcaceresb
|
1348 | [bostko]: https://github.com/bostko
|
1349 | [Deniz Bahadir]: https://github.com/Bagira80
|
1350 | [bcleland]: https://github.com/bcleland
|
1351 | [JohnC32]: https://github.com/JohnC32
|
1352 | [Lutz Büch]: https://github.com/lutz-100worte
|
1353 | [Piotr Kaminski]: https://github.com/pkaminski
|
1354 | [Léo Lam]: https://github.com/leoetlino
|
1355 | [Jan T. Sott]: https://github.com/idleberg
|
1356 | [Jimmy Wärting]: https://github.com/jimmywarting
|
1357 | [Marcos Cáceres]: https://github.com/marcoscaceres
|
1358 |
|
1359 | ## Version 9.12.0
|
1360 |
|
1361 | New language:
|
1362 |
|
1363 | - *MikroTik* RouterOS Scripting language by [Ivan Dementev][].
|
1364 |
|
1365 | New style:
|
1366 |
|
1367 | - *VisualStudio 2015 Dark* by [Nicolas LLOBERA][]
|
1368 |
|
1369 | Improvements:
|
1370 | - *Crystal* updated with new keywords and syntaxes by [Tsuyusato Kitsune][].
|
1371 | - *Julia* updated to the modern definitions by [Alex Arslan][].
|
1372 | - *julia-repl* added by [Morten Piibeleht][].
|
1373 | - [Stanislav Belov][] wrote a new definition for *1C*, replacing the one that
|
1374 | has not been updated for more than 8 years. The new version supports syntax
|
1375 | for versions 7.7 and 8.
|
1376 | - [Nicolas LLOBERA][] improved C# definition fixing edge cases with function
|
1377 | titles detection and added highlighting of `[Attributes]`.
|
1378 | - [nnnik][] provided a few correctness fixes for *Autohotkey*.
|
1379 | - [Martin Clausen][] made annotation collections in *Clojure* to look
|
1380 | consistently with other kinds.
|
1381 | - [Alejandro Alonso][] updated *Swift* keywords.
|
1382 |
|
1383 | [Tsuyusato Kitsune]: https://github.com/MakeNowJust
|
1384 | [Alex Arslan]: https://github.com/ararslan
|
1385 | [Morten Piibeleht]: https://github.com/mortenpi
|
1386 | [Stanislav Belov]: https://github.com/4ppl
|
1387 | [Ivan Dementev]: https://github.com/DiVAN1x
|
1388 | [Nicolas LLOBERA]: https://github.com/Nicolas01
|
1389 | [nnnik]: https://github.com/nnnik
|
1390 | [Martin Clausen]: https://github.com/maacl
|
1391 | [Alejandro Alonso]: https://github.com/Azoy
|
1392 |
|
1393 | ## Version 9.11.0
|
1394 |
|
1395 | New languages:
|
1396 |
|
1397 | - *Shell* by [Tsuyusato Kitsune][]
|
1398 | - *jboss-cli* by [Raphaël Parrëe][]
|
1399 |
|
1400 | Improvements:
|
1401 |
|
1402 | - [Joël Porquet] has [greatly improved the definition of *makefile*][5b3e0e6].
|
1403 | - *C++* class titles are now highlighted as in other languages with classes.
|
1404 | - [Jordi Petit][] added rarely used `or`, `and` and `not` keywords to *C++*.
|
1405 | - [Pieter Vantorre][] fixed highlighting of negative floating point values.
|
1406 |
|
1407 |
|
1408 | [Tsuyusato Kitsune]: https://github.com/MakeNowJust
|
1409 | [Jordi Petit]: https://github.com/jordi-petit
|
1410 | [Raphaël Parrëe]: https://github.com/rparree
|
1411 | [Pieter Vantorre]: https://github.com/NuclearCookie
|
1412 | [5b3e0e6]: https://github.com/isagalaev/highlight.js/commit/5b3e0e68bfaae282faff6697d6a490567fa9d44b
|
1413 |
|
1414 |
|
1415 | ## Version 9.10.0
|
1416 |
|
1417 | Apologies for missing the previous release cycle. Some thing just can't be
|
1418 | automated… Anyway, we're back!
|
1419 |
|
1420 | New languages:
|
1421 |
|
1422 | - *Hy* by [Sergey Sobko][]
|
1423 | - *Leaf* by [Hale Chan][]
|
1424 | - *N1QL* by [Andres Täht][] and [Rene Saarsoo][]
|
1425 |
|
1426 | Improvements:
|
1427 |
|
1428 | - *Rust* got updated with new keywords by [Kasper Andersen][] and then
|
1429 | significantly modernized even more by [Eduard-Mihai Burtescu][] (yes, @eddyb,
|
1430 | Rust core team member!)
|
1431 | - *Python* updated with f-literals by [Philipp A][].
|
1432 | - *YAML* updated with unquoted strings support.
|
1433 | - *Gauss* updated with new keywords by [Matt Evans][].
|
1434 | - *Lua* updated with new keywords by [Joe Blow][].
|
1435 | - *Kotlin* updated with new keywords by [Philipp Hauer][].
|
1436 | - *TypeScript* got highlighting of function params and updated keywords by
|
1437 | [Ike Ku][].
|
1438 | - *Scheme* now correctly handles \`-quoted lists thanks to [Guannan Wei].
|
1439 | - [Sam Wu][] fixed handling of `<<` in *C++* defines.
|
1440 |
|
1441 | [Philipp A]: https://github.com/flying-sheep
|
1442 | [Philipp Hauer]: https://github.com/phauer
|
1443 | [Sergey Sobko]: https://github.com/profitware
|
1444 | [Hale Chan]: https://github.com/halechan
|
1445 | [Matt Evans]: https://github.com/matthewevans
|
1446 | [Joe Blow]: https://github.com/mossarelli
|
1447 | [Kasper Andersen]: https://github.com/kasma1990
|
1448 | [Eduard-Mihai Burtescu]: https://github.com/eddyb
|
1449 | [Andres Täht]: https://github.com/andrestaht
|
1450 | [Rene Saarsoo]: https://github.com/nene
|
1451 | [Philipp Hauer]: https://github.com/phauer
|
1452 | [Ike Ku]: https://github.com/dempfi
|
1453 | [Guannan Wei]: https://github.com/Kraks
|
1454 | [Sam Wu]: https://github.com/samsam2310
|
1455 |
|
1456 |
|
1457 | ## Version 9.9.0
|
1458 |
|
1459 | New languages
|
1460 |
|
1461 | - *LLVM* by [Michael Rodler][]
|
1462 |
|
1463 | Improvements:
|
1464 |
|
1465 | - *TypeScript* updated with annotations and param lists inside constructors, by
|
1466 | [Raphael Parree][].
|
1467 | - *CoffeeScript* updated with new keywords and fixed to recognize JavaScript
|
1468 | in \`\`\`, thanks to thanks to [Geoffrey Booth][].
|
1469 | - Compiler directives in *Delphi* are now correctly highlighted as "meta".
|
1470 |
|
1471 | [Raphael Parree]: https://github.com/rparree
|
1472 | [Michael Rodler]: https://github.com/f0rki
|
1473 | [Geoffrey Booth]: https://github.com/GeoffreyBooth
|
1474 |
|
1475 |
|
1476 | ## Version 9.8.0 "New York"
|
1477 |
|
1478 | This version is the second one that deserved a name. Because I'm in New York,
|
1479 | and the release isn't missing the deadline only because it's still Tuesday on
|
1480 | West Coast.
|
1481 |
|
1482 | New languages:
|
1483 |
|
1484 | - *Clean* by [Camil Staps][]
|
1485 | - *Flix* by [Magnus Madsen][]
|
1486 |
|
1487 | Improvements:
|
1488 |
|
1489 | - [Kenton Hamaluik][] did a comprehensive update for *Haxe*.
|
1490 | - New commands for *PowerShell* from [Nicolas Le Gall][].
|
1491 | - [Jan T. Sott][] updated *NSIS*.
|
1492 | - *Java* and *Swift* support unicode characters in identifiers thanks to
|
1493 | [Alexander Lichter][].
|
1494 |
|
1495 | [Camil Staps]: https://github.com/camilstaps
|
1496 | [Magnus Madsen]: https://github.com/magnus-madsen
|
1497 | [Kenton Hamaluik]: https://github.com/FuzzyWuzzie
|
1498 | [Nicolas Le Gall]: https://github.com/darkitty
|
1499 | [Jan T. Sott]: https://github.com/idleberg
|
1500 | [Alexander Lichter]: https://github.com/manniL
|
1501 |
|
1502 |
|
1503 | ## Version 9.7.0
|
1504 |
|
1505 | A comprehensive bugfix release. This is one of the best things about
|
1506 | highlight.js: even boring things keep getting better (even if slow).
|
1507 |
|
1508 | - VHDL updated with PSL keywords and uses more consistent styling.
|
1509 | - Nested C-style comments no longer break highlighting in many languages.
|
1510 | - JavaScript updated with `=>` functions, highlighted object attributes and
|
1511 | parsing within template string substitution blocks (`${...}`).
|
1512 | - Fixed another corner case with self-closing `<tag/>` in JSX.
|
1513 | - Added `HEALTHCHECK` directive in Docker.
|
1514 | - Delphi updated with new Free Pascal keywords.
|
1515 | - Fixed digit separator parsing in C++.
|
1516 | - C# updated with new keywords and fixed to allow multiple identifiers within
|
1517 | generics `<...>`.
|
1518 | - Fixed another slow regex in Less.
|
1519 |
|
1520 |
|
1521 | ## Version 9.6.0
|
1522 |
|
1523 | New languages:
|
1524 |
|
1525 | - *ABNF* and *EBNF* by [Alex McKibben][]
|
1526 | - *Awk* by [Matthew Daly][]
|
1527 | - *SubUnit* by [Sergey Bronnikov][]
|
1528 |
|
1529 | New styles:
|
1530 |
|
1531 | - *Atom One* in both Dark and Light variants by [Daniel Gamage][]
|
1532 |
|
1533 | Plus, a few smaller updates for *Lasso*, *Elixir*, *C++* and *SQL*.
|
1534 |
|
1535 | [Alex McKibben]: https://github.com/mckibbenta
|
1536 | [Daniel Gamage]: https://github.com/danielgamage
|
1537 | [Matthew Daly]: https://github.com/matthewbdaly
|
1538 | [Sergey Bronnikov]: https://github.com/ligurio
|
1539 |
|
1540 |
|
1541 | ## Version 9.5.0
|
1542 |
|
1543 | New languages:
|
1544 |
|
1545 | - *Excel* by [Victor Zhou][]
|
1546 | - *Linden Scripting Language* by [Builder's Brewery][]
|
1547 | - *TAP* (Test Anything Protocol) by [Sergey Bronnikov][]
|
1548 | - *Pony* by [Joe Eli McIlvain][]
|
1549 | - *Coq* by [Stephan Boyer][]
|
1550 | - *dsconfig* and *LDIF* by [Jacob Childress][]
|
1551 |
|
1552 | New styles:
|
1553 |
|
1554 | - *Ocean Dark* by [Gavin Siu][]
|
1555 |
|
1556 | Notable changes:
|
1557 |
|
1558 | - [Minh Nguyễn][] added more built-ins to Objective C.
|
1559 | - [Jeremy Hull][] fixed corner cases in C++ preprocessor directives and Diff
|
1560 | comments.
|
1561 | - [Victor Zhou][] added support for digit separators in C++ numbers.
|
1562 |
|
1563 | [Gavin Siu]: https://github.com/gavsiu
|
1564 | [Builder's Brewery]: https://github.com/buildersbrewery
|
1565 | [Victor Zhou]: https://github.com/OiCMudkips
|
1566 | [Sergey Bronnikov]: https://github.com/ligurio
|
1567 | [Joe Eli McIlvain]: https://github.com/jemc
|
1568 | [Stephan Boyer]: https://github.com/boyers
|
1569 | [Jacob Childress]: https://github.com/braveulysses
|
1570 | [Minh Nguyễn]: https://github.com/1ec5
|
1571 | [Jeremy Hull]: https://github.com/sourrust
|
1572 |
|
1573 |
|
1574 | ## Version 9.4.0
|
1575 |
|
1576 | New languages:
|
1577 |
|
1578 | - *PureBASIC* by [Tristano Ajmone][]
|
1579 | - *BNF* by [Oleg Efimov][]
|
1580 | - *Ada* by [Lars Schulna][]
|
1581 |
|
1582 | New styles:
|
1583 |
|
1584 | - *PureBASIC* by [Tristano Ajmone][]
|
1585 |
|
1586 | Improvements to existing languages and styles:
|
1587 |
|
1588 | - We now highlight function declarations in Go.
|
1589 | - [Taisuke Fujimoto][] contributed very convoluted rules for raw and
|
1590 | interpolated strings in C#.
|
1591 | - [Boone Severson][] updated Verilog to comply with IEEE 1800-2012
|
1592 | SystemVerilog.
|
1593 | - [Victor Zhou][] improved rules for comments and strings in PowerShell files.
|
1594 | - [Janis Voigtländer][] updated the definition of Elm to version 0.17 of the
|
1595 | languages. Elm is now featured on the front page of <https://highlightjs.org>.
|
1596 | - Special variable `$this` is highlighted as a keyword in PHP.
|
1597 | - `usize` and `isize` are now highlighted in Rust.
|
1598 | - Fixed labels and directives in x86 assembler.
|
1599 |
|
1600 | [Tristano Ajmone]: https://github.com/tajmone
|
1601 | [Taisuke Fujimoto]: https://github.com/temp-impl
|
1602 | [Oleg Efimov]: https://github.com/Sannis
|
1603 | [Boone Severson]: https://github.com/BooneJS
|
1604 | [Victor Zhou]: https://github.com/OiCMudkips
|
1605 | [Lars Schulna]: https://github.com/captain-hanuta
|
1606 | [Janis Voigtländer]: https://github.com/jvoigtlaender
|
1607 |
|
1608 |
|
1609 | ## Version 9.3.0
|
1610 |
|
1611 | New languages:
|
1612 |
|
1613 | - *Tagger Script* by [Philipp Wolfer][]
|
1614 | - *MoonScript* by [Billy Quith][]
|
1615 |
|
1616 | New styles:
|
1617 |
|
1618 | - *xt256* by [Herbert Shin][]
|
1619 |
|
1620 | Improvements to existing languages and styles:
|
1621 |
|
1622 | - More robust handling of unquoted HTML tag attributes
|
1623 | - Relevance tuning for QML which was unnecessary eager at seizing other
|
1624 | languages' code
|
1625 | - Improve GAMS language parsing
|
1626 | - Fixed a bunch of bugs around selectors in Less
|
1627 | - Kotlin's got a new definition for annotations, updated keywords and other
|
1628 | minor improvements
|
1629 | - Added `move` to Rust keywords
|
1630 | - Markdown now recognizes \`\`\`-fenced code blocks
|
1631 | - Improved detection of function declarations in C++ and C#
|
1632 |
|
1633 | [Philipp Wolfer]: https://github.com/phw
|
1634 | [Billy Quith]: https://github.com/billyquith
|
1635 | [Herbert Shin]: https://github.com/initbar
|
1636 |
|
1637 |
|
1638 | ## Version 9.2.0
|
1639 |
|
1640 | New languages:
|
1641 |
|
1642 | - *QML* by [John Foster][]
|
1643 | - *HTMLBars* by [Michael Johnston][]
|
1644 | - *CSP* by [Taras][]
|
1645 | - *Maxima* by [Robert Dodier][]
|
1646 |
|
1647 | New styles:
|
1648 |
|
1649 | - *Gruvbox* by [Qeole][]
|
1650 | - *Dracula* by [Denis Ciccale][]
|
1651 |
|
1652 | Improvements to existing languages and styles:
|
1653 |
|
1654 | - We now correctly handle JSX with arbitrary node tree depth.
|
1655 | - Argument list for `(lambda)` in Scheme is no longer highlighted as a function
|
1656 | call.
|
1657 | - Stylus syntax doesn't break on valid CSS.
|
1658 | - More correct handling of comments and strings and other improvements for
|
1659 | VimScript.
|
1660 | - More subtle work on the default style.
|
1661 | - We now use anonymous modules for AMD.
|
1662 | - `macro_rules!` is now recognized as a built-in in Rust.
|
1663 |
|
1664 | [John Foster]: https://github.com/jf990
|
1665 | [Qeole]: https://github.com/Qeole
|
1666 | [Denis Ciccale]: https://github.com/dciccale
|
1667 | [Michael Johnston]: https://github.com/lastobelus
|
1668 | [Taras]: https://github.com/oxdef
|
1669 | [Robert Dodier]: https://github.com/robert-dodier
|
1670 |
|
1671 |
|
1672 | ## Version 9.1.0
|
1673 |
|
1674 | New languages:
|
1675 |
|
1676 | - *Stan* by [Brendan Rocks][]
|
1677 | - *BASIC* by [Raphaël Assénat][]
|
1678 | - *GAUSS* by [Matt Evans][]
|
1679 | - *DTS* by [Martin Braun][]
|
1680 | - *Arduino* by [Stefania Mellai][]
|
1681 |
|
1682 | New Styles:
|
1683 |
|
1684 | - *Arduino Light* by [Stefania Mellai][]
|
1685 |
|
1686 | Improvements to existing languages and styles:
|
1687 |
|
1688 | - Handle return type annotations in Python
|
1689 | - Allow shebang headers in Javascript
|
1690 | - Support strings in Rust meta
|
1691 | - Recognize `struct` as a class-level definition in Rust
|
1692 | - Recognize b-prefixed chars and strings in Rust
|
1693 | - Better numbers handling in Verilog
|
1694 |
|
1695 | [Brendan Rocks]: http://brendanrocks.com
|
1696 | [Raphaël Assénat]: https://github.com/raphnet
|
1697 | [Matt Evans]: https://github.com/matthewevans
|
1698 | [Martin Braun]: https://github.com/mbr0wn
|
1699 | [Stefania Mellai]: https://github.com/smellai
|
1700 |
|
1701 |
|
1702 | ## Version 9.0.0
|
1703 |
|
1704 | The new major version brings a reworked styling system. Highlight.js now defines
|
1705 | a limited set of highlightable classes giving a consistent result across all the
|
1706 | styles and languages. You can read a more detailed explanation and background in
|
1707 | the [tracking issue][#348] that started this long process back in May.
|
1708 |
|
1709 | This change is backwards incompatible for those who uses highlight.js with a
|
1710 | custom stylesheet. The [new style guide][sg] explains how to write styles
|
1711 | in this new world.
|
1712 |
|
1713 | Bundled themes have also suffered a significant amount of improvements and may
|
1714 | look different in places, but all the things now consistent and make more sense.
|
1715 | Among others, the Default style has got a refresh and will probably be tweaked
|
1716 | some more in next releases. Please do give your feedback in our
|
1717 | [issue tracker][issues].
|
1718 |
|
1719 | New languages in this release:
|
1720 |
|
1721 | - *Caché Object Script* by [Nikita Savchenko][]
|
1722 | - *YAML* by [Stefan Wienert][]
|
1723 | - *MIPS Assembler* by [Nebuleon Fumika][]
|
1724 | - *HSP* by [prince][]
|
1725 |
|
1726 | Improvements to existing languages and styles:
|
1727 |
|
1728 | - ECMAScript 6 modules import now do not require closing semicolon.
|
1729 | - ECMAScript 6 classes constructors now highlighted.
|
1730 | - Template string support for Typescript, as for ECMAScript 6.
|
1731 | - Scala case classes params highlight fixed.
|
1732 | - Built-in names introduced in Julia v0.4 added by [Kenta Sato][].
|
1733 | - Refreshed Default style.
|
1734 |
|
1735 | Other notable changes:
|
1736 |
|
1737 | - [Web workers support][webworkers] added bu [Jan Kühle][].
|
1738 | - We now have tests for compressed browser builds as well.
|
1739 | - The building tool chain has been switched to node.js 4.x. and is now
|
1740 | shamelessly uses ES6 features all over the place, courtesy of [Jeremy Hull][].
|
1741 | - License added to non-compressed browser build.
|
1742 |
|
1743 | [Jan Kühle]: https://github.com/frigus02
|
1744 | [Stefan Wienert]: https://github.com/zealot128
|
1745 | [Kenta Sato]: https://github.com/bicycle1885
|
1746 | [Nikita Savchenko]: https://github.com/ZitRos
|
1747 | [webworkers]: https://github.com/isagalaev/highlight.js#web-workers
|
1748 | [Jeremy Hull]: https://github.com/sourrust
|
1749 | [#348]: https://github.com/isagalaev/highlight.js/issues/348
|
1750 | [sg]: http://highlightjs.readthedocs.org/en/latest/style-guide.html
|
1751 | [issues]: https://github.com/isagalaev/highlight.js/issues
|
1752 | [Nebuleon Fumika]: https://github.com/Nebuleon
|
1753 | [prince]: https://github.com/prince-0203
|
1754 |
|
1755 |
|
1756 | ## Version 8.9.1
|
1757 |
|
1758 | Some last-minute changes reverted due to strange bug with minified browser build:
|
1759 |
|
1760 | - Scala case classes params highlight fixed
|
1761 | - ECMAScript 6 modules import now do not require closing semicolon
|
1762 | - ECMAScript 6 classes constructors now highlighted
|
1763 | - Template string support for Typescript, as for ECMAScript 6
|
1764 | - License added to not minified browser build
|
1765 |
|
1766 |
|
1767 | ## Version 8.9.0
|
1768 |
|
1769 | New languages:
|
1770 |
|
1771 | - *crmsh* by [Kristoffer Gronlund][]
|
1772 | - *SQF* by [Soren Enevoldsen][]
|
1773 |
|
1774 | [Kristoffer Gronlund]: https://github.com/krig
|
1775 | [Soren Enevoldsen]: https://github.com/senevoldsen90
|
1776 |
|
1777 | Notable fixes and improvements to existing languages:
|
1778 |
|
1779 | - Added `abstract` and `namespace` keywords to TypeScript by [Daniel Rosenwasser][]
|
1780 | - Added `label` support to Dockerfile by [Ladislav Prskavec][]
|
1781 | - Crystal highlighting improved by [Tsuyusato Kitsune][]
|
1782 | - Missing Swift keywords added by [Nate Cook][]
|
1783 | - Improve detection of C block comments
|
1784 | - ~~Scala case classes params highlight fixed~~
|
1785 | - ~~ECMAScript 6 modules import now do not require closing semicolon~~
|
1786 | - ~~ECMAScript 6 classes constructors now highlighted~~
|
1787 | - ~~Template string support for Typescript, as for ECMAScript 6~~
|
1788 |
|
1789 | Other notable changes:
|
1790 |
|
1791 | - ~~License added to not minified browser build~~
|
1792 |
|
1793 | [Kristoffer Gronlund]: https://github.com/krig
|
1794 | [Søren Enevoldsen]: https://github.com/senevoldsen90
|
1795 | [Daniel Rosenwasser]: https://github.com/DanielRosenwasser
|
1796 | [Ladislav Prskavec]: https://github.com/abtris
|
1797 | [Tsuyusato Kitsune]: https://github.com/MakeNowJust
|
1798 | [Nate Cook]: https://github.com/natecook1000
|
1799 |
|
1800 |
|
1801 | ## Version 8.8.0
|
1802 |
|
1803 | New languages:
|
1804 |
|
1805 | - *Golo* by [Philippe Charrière][]
|
1806 | - *GAMS* by [Stefan Bechert][]
|
1807 | - *IRPF90* by [Anthony Scemama][]
|
1808 | - *Access logs* by [Oleg Efimov][]
|
1809 | - *Crystal* by [Tsuyusato Kitsune][]
|
1810 |
|
1811 | Notable fixes and improvements to existing languages:
|
1812 |
|
1813 | - JavaScript highlighting no longer fails with ES6 default parameters
|
1814 | - Added keywords `async` and `await` to Python
|
1815 | - PHP heredoc support improved
|
1816 | - Allow preprocessor directives within C++ functions
|
1817 |
|
1818 | Other notable changes:
|
1819 |
|
1820 | - Change versions to X.Y.Z SemVer-compatible format
|
1821 | - Added ability to build all targets at once
|
1822 |
|
1823 | [Philippe Charrière]: https://github.com/k33g
|
1824 | [Stefan Bechert]: https://github.com/b-pos465
|
1825 | [Anthony Scemama]: https://github.com/scemama
|
1826 | [Oleg Efimov]: https://github.com/Sannis
|
1827 | [Tsuyusato Kitsune]: https://github.com/MakeNowJust
|
1828 |
|
1829 |
|
1830 | ## Version 8.7
|
1831 |
|
1832 | New languages:
|
1833 |
|
1834 | - *Zephir* by [Oleg Efimov][]
|
1835 | - *Elm* by [Janis Voigtländer][]
|
1836 | - *XQuery* by [Dirk Kirsten][]
|
1837 | - *Mojolicious* by [Dotan Dimet][]
|
1838 | - *AutoIt* by Manh Tuan from [J2TeaM][]
|
1839 | - *Toml* (ini extension) by [Guillaume Gomez][]
|
1840 |
|
1841 | New styles:
|
1842 |
|
1843 | - *Hopscotch* by [Jan T. Sott][]
|
1844 | - *Grayscale* by [MY Sun][]
|
1845 |
|
1846 | Notable fixes and improvements to existing languages:
|
1847 |
|
1848 | - Fix encoding of images when copied over in certain builds
|
1849 | - Fix incorrect highlighting of the word "bug" in comments
|
1850 | - Treat decorators different from matrix multiplication in Python
|
1851 | - Fix traits inheritance highlighting in Rust
|
1852 | - Fix incorrect document
|
1853 | - Oracle keywords added to SQL language definition by [Vadimtro][]
|
1854 | - Postgres keywords added to SQL language definition by [Benjamin Auder][]
|
1855 | - Fix registers in x86asm being highlighted as a hex number
|
1856 | - Fix highlighting for numbers with a leading decimal point
|
1857 | - Correctly highlight numbers and strings inside of C/C++ macros
|
1858 | - C/C++ functions now support pointer, reference, and move returns
|
1859 |
|
1860 | [Oleg Efimov]: https://github.com/Sannis
|
1861 | [Guillaume Gomez]: https://github.com/GuillaumeGomez
|
1862 | [Janis Voigtländer]: https://github.com/jvoigtlaender
|
1863 | [Jan T. Sott]: https://github.com/idleberg
|
1864 | [Dirk Kirsten]: https://github.com/dirkk
|
1865 | [MY Sun]: https://github.com/simonmysun
|
1866 | [Vadimtro]: https://github.com/Vadimtro
|
1867 | [Benjamin Auder]: https://github.com/ghost
|
1868 | [Dotan Dimet]: https://github.com/dotandimet
|
1869 | [J2TeaM]: https://github.com/J2TeaM
|
1870 |
|
1871 |
|
1872 | ## Version 8.6
|
1873 |
|
1874 | New languages:
|
1875 |
|
1876 | - *C/AL* by [Kenneth Fuglsang][]
|
1877 | - *DNS zone file* by [Tim Schumacher][]
|
1878 | - *Ceylon* by [Lucas Werkmeister][]
|
1879 | - *OpenSCAD* by [Dan Panzarella][]
|
1880 | - *Inform7* by [Bruno Dias][]
|
1881 | - *armasm* by [Dan Panzarella][]
|
1882 | - *TP* by [Jay Strybis][]
|
1883 |
|
1884 | New styles:
|
1885 |
|
1886 | - *Atelier Cave*, *Atelier Estuary*,
|
1887 | *Atelier Plateau* and *Atelier Savanna* by [Bram de Haan][]
|
1888 | - *Github Gist* by [Louis Barranqueiro][]
|
1889 |
|
1890 | Notable fixes and improvements to existing languages:
|
1891 |
|
1892 | - Multi-line raw strings from C++11 are now supported
|
1893 | - Fix class names with dashes in HAML
|
1894 | - The `async` keyword from ES6/7 is now supported
|
1895 | - TypeScript functions handle type and parameter complexity better
|
1896 | - We unified phpdoc/javadoc/yardoc etc modes across all languages
|
1897 | - CSS .class selectors relevance was dropped to prevent wrong language detection
|
1898 | - Images is now included to CDN build
|
1899 | - Release process is now automated
|
1900 |
|
1901 | [Bram de Haan]: https://github.com/atelierbram
|
1902 | [Kenneth Fuglsang]: https://github.com/kfuglsang
|
1903 | [Louis Barranqueiro]: https://github.com/LouisBarranqueiro
|
1904 | [Tim Schumacher]: https://github.com/enko
|
1905 | [Lucas Werkmeister]: https://github.com/lucaswerkmeister
|
1906 | [Dan Panzarella]: https://github.com/pzl
|
1907 | [Bruno Dias]: https://github.com/sequitur
|
1908 | [Jay Strybis]: https://github.com/unreal
|
1909 |
|
1910 |
|
1911 | ## Version 8.5
|
1912 |
|
1913 | New languages:
|
1914 |
|
1915 | - *pf.conf* by [Peter Piwowarski][]
|
1916 | - *Julia* by [Kenta Sato][]
|
1917 | - *Prolog* by [Raivo Laanemets][]
|
1918 | - *Docker* by [Alexis Hénaut][]
|
1919 | - *Fortran* by [Anthony Scemama][] and [Thomas Applencourt][]
|
1920 | - *Kotlin* by [Sergey Mashkov][]
|
1921 |
|
1922 | New styles:
|
1923 |
|
1924 | - *Agate* by [Taufik Nurrohman][]
|
1925 | - *Darcula* by [JetBrains][]
|
1926 | - *Atelier Sulphurpool* by [Bram de Haan][]
|
1927 | - *Android Studio* by [Pedro Oliveira][]
|
1928 |
|
1929 | Notable fixes and improvements to existing languages:
|
1930 |
|
1931 | - ES6 features in JavaScript are better supported now by [Gu Yiling][].
|
1932 | - Swift now recognizes body-less method definitions.
|
1933 | - Single expression functions `def foo, do: ... ` now work in Elixir.
|
1934 | - More uniform detection of built-in classes in Objective C.
|
1935 | - Fixes for number literals and processor directives in Rust.
|
1936 | - HTML `<script>` tag now allows any language, not just JavaScript.
|
1937 | - Multi-line comments are supported now in MatLab.
|
1938 |
|
1939 | [Taufik Nurrohman]: https://github.com/taufik-nurrohman
|
1940 | [Jet Brains]: https://www.jetbrains.com/
|
1941 | [Peter Piwowarski]: https://github.com/oldlaptop
|
1942 | [Kenta Sato]: https://github.com/bicycle1885
|
1943 | [Bram de Haan]: https://github.com/atelierbram
|
1944 | [Raivo Laanemets]: https://github.com/rla
|
1945 | [Alexis Hénaut]: https://github.com/AlexisNo
|
1946 | [Anthony Scemama]: https://github.com/scemama
|
1947 | [Pedro Oliveira]: https://github.com/kanytu
|
1948 | [Gu Yiling]: https://github.com/Justineo
|
1949 | [Sergey Mashkov]: https://github.com/cy6erGn0m
|
1950 | [Thomas Applencourt]: https://github.com/TApplencourt
|
1951 |
|
1952 |
|
1953 | ## Version 8.4
|
1954 |
|
1955 | We've got the new [demo page][]! The obvious new feature is the new look, but
|
1956 | apart from that it's got smarter: by presenting languages in groups it avoids
|
1957 | running 10000 highlighting attempts after first load which was slowing it down
|
1958 | and giving bad overall impression. It is now also being generated from test
|
1959 | code snippets so the authors of new languages don't have to update both tests
|
1960 | and the demo page with the same thing.
|
1961 |
|
1962 | Other notable changes:
|
1963 |
|
1964 | - The `template_comment` class is gone in favor of the more general `comment`.
|
1965 | - Number parsing unified and improved across languages.
|
1966 | - C++, Java and C# now use unified grammar to highlight titles in
|
1967 | function/method definitions.
|
1968 | - The browser build is now usable as an AMD module, there's no separate build
|
1969 | target for that anymore.
|
1970 | - OCaml has got a [comprehensive overhaul][ocaml] by [Mickaël Delahaye][].
|
1971 | - Clojure's data structures and literals are now highlighted outside of lists
|
1972 | and we can now highlight Clojure's REPL sessions.
|
1973 |
|
1974 | New languages:
|
1975 |
|
1976 | - *AspectJ* by [Hakan Özler][]
|
1977 | - *STEP Part 21* by [Adam Joseph Cook][]
|
1978 | - *SML* derived by [Edwin Dalorzo][] from OCaml definition
|
1979 | - *Mercury* by [mucaho][]
|
1980 | - *Smali* by [Dennis Titze][]
|
1981 | - *Verilog* by [Jon Evans][]
|
1982 | - *Stata* by [Brian Quistorff][]
|
1983 |
|
1984 | [Hakan Özler]: https://github.com/ozlerhakan
|
1985 | [Adam Joseph Cook]: https://github.com/adamjcook
|
1986 | [demo page]: https://highlightjs.org/static/demo/
|
1987 | [Ivan Sagalaev]: https://github.com/isagalaev
|
1988 | [Edwin Dalorzo]: https://github.com/edalorzo
|
1989 | [mucaho]: https://github.com/mucaho
|
1990 | [Dennis Titze]: https://github.com/titze
|
1991 | [Jon Evans]: https://github.com/craftyjon
|
1992 | [Brian Quistorff]: https://github.com/bquistorff
|
1993 | [ocaml]: https://github.com/isagalaev/highlight.js/pull/608#issue-46190207
|
1994 | [Mickaël Delahaye]: https://github.com/polazarus
|
1995 |
|
1996 |
|
1997 | ## Version 8.3
|
1998 |
|
1999 | We streamlined our tool chain, it is now based entirely on node.js instead of
|
2000 | being a mix of node.js, Python and Java. The build script options and arguments
|
2001 | remained the same, and we've noted all the changes in the [documentation][b].
|
2002 | Apart from reducing complexity, the new build script is also faster from not
|
2003 | having to start Java machine repeatedly. The credits for the work go to [Jeremy
|
2004 | Hull][].
|
2005 |
|
2006 | Some notable fixes:
|
2007 |
|
2008 | - PHP and JavaScript mixed in HTML now live happily with each other.
|
2009 | - JavaScript regexes now understand ES6 flags "u" and "y".
|
2010 | - `throw` keyword is no longer detected as a method name in Java.
|
2011 | - Fixed parsing of numbers and symbols in Clojure thanks to [input from Ivan
|
2012 | Kleshnin][ik].
|
2013 |
|
2014 | New languages in this release:
|
2015 |
|
2016 | - *Less* by [Max Mikhailov][]
|
2017 | - *Stylus* by [Bryant Williams][]
|
2018 | - *Tcl* by [Radek Liska][]
|
2019 | - *Puppet* by [Jose Molina Colmenero][]
|
2020 | - *Processing* by [Erik Paluka][]
|
2021 | - *Twig* templates by [Luke Holder][]
|
2022 | - *PowerShell* by [David Mohundro][], based on [the work of Nicholas Blumhardt][ps]
|
2023 | - *XL* by [Christophe de Dinechin][]
|
2024 | - *LiveScript* by [Taneli Vatanen][] and [Jen Evers-Corvina][]
|
2025 | - *ERB* (Ruby in HTML) by [Lucas Mazza][]
|
2026 | - *Roboconf* by [Vincent Zurczak][]
|
2027 |
|
2028 | [b]: http://highlightjs.readthedocs.org/en/latest/building-testing.html
|
2029 | [Jeremy Hull]: https://github.com/sourrust
|
2030 | [ik]: https://twitter.com/IvanKleshnin/status/514041599484231680
|
2031 | [Max Mikhailov]: https://github.com/seven-phases-max
|
2032 | [Bryant Williams]: https://github.com/scien
|
2033 | [Radek Liska]: https://github.com/Nindaleth
|
2034 | [Jose Molina Colmenero]: https://github.com/Moliholy
|
2035 | [Erik Paluka]: https://github.com/paluka
|
2036 | [Luke Holder]: https://github.com/lukeholder
|
2037 | [David Mohundro]: https://github.com/drmohundro
|
2038 | [ps]: https://github.com/OctopusDeploy/Library/blob/master/app/shared/presentation/highlighting/powershell.js
|
2039 | [Christophe de Dinechin]: https://github.com/c3d
|
2040 | [Taneli Vatanen]: https://github.com/Daiz-
|
2041 | [Jen Evers-Corvina]: https://github.com/sevvie
|
2042 | [Lucas Mazza]: https://github.com/lucasmazza
|
2043 | [Vincent Zurczak]: https://github.com/vincent-zurczak
|
2044 |
|
2045 |
|
2046 | ## Version 8.2
|
2047 |
|
2048 | We've finally got [real tests][test] and [continuous testing on Travis][ci]
|
2049 | thanks to [Jeremy Hull][] and [Chris Eidhof][]. The tests designed to cover
|
2050 | everything: language detection, correct parsing of individual language features
|
2051 | and various special cases. This is a very important change that gives us
|
2052 | confidence in extending language definitions and refactoring library core.
|
2053 |
|
2054 | We're going to redesign the old [demo/test suite][demo] into an interactive
|
2055 | demo web app. If you're confident front-end developer or designer and want to
|
2056 | help us with it, drop a comment into [the issue][#542] on GitHub.
|
2057 |
|
2058 | [test]: https://github.com/isagalaev/highlight.js/tree/master/test
|
2059 | [demo]: https://highlightjs.org/static/test.html
|
2060 | [#542]: https://github.com/isagalaev/highlight.js/issues/542
|
2061 | [ci]: https://travis-ci.org/isagalaev/highlight.js
|
2062 | [Jeremy Hull]: https://github.com/sourrust
|
2063 | [Chris Eidhof]: https://github.com/chriseidhof
|
2064 |
|
2065 | As usually there's a handful of new languages in this release:
|
2066 |
|
2067 | - *Groovy* by [Guillaume Laforge][]
|
2068 | - *Dart* by [Maxim Dikun][]
|
2069 | - *Dust* by [Michael Allen][]
|
2070 | - *Scheme* by [JP Verkamp][]
|
2071 | - *G-Code* by [Adam Joseph Cook][]
|
2072 | - *Q* from Kx Systems by [Sergey Vidyuk][]
|
2073 |
|
2074 | [Guillaume Laforge]: https://github.com/glaforge
|
2075 | [Maxim Dikun]: https://github.com/dikmax
|
2076 | [Michael Allen]: https://github.com/bfui
|
2077 | [JP Verkamp]: https://github.com/jpverkamp
|
2078 | [Adam Joseph Cook]: https://github.com/adamjcook
|
2079 | [Sergey Vidyuk]: https://github.com/sv
|
2080 |
|
2081 | Other improvements:
|
2082 |
|
2083 | - [Erik Osheim][] heavily reworked Scala definitions making it richer.
|
2084 | - [Lucas Mazza][] fixed Ruby hashes highlighting
|
2085 | - Lisp variants (Lisp, Clojure and Scheme) are unified in regard to naming
|
2086 | the first symbol in parentheses: it's "keyword" in general case and also
|
2087 | "built_in" for built-in functions in Clojure and Scheme.
|
2088 |
|
2089 | [Erik Osheim]: https://github.com/non
|
2090 | [Lucas Mazza]: https://github.com/lucasmazza
|
2091 |
|
2092 |
|
2093 | ## Version 8.1
|
2094 |
|
2095 | New languages:
|
2096 |
|
2097 | - *Gherkin* by [Sam Pikesley][]
|
2098 | - *Elixir* by [Josh Adams][]
|
2099 | - *NSIS* by [Jan T. Sott][]
|
2100 | - *VIM script* by [Jun Yang][]
|
2101 | - *Protocol Buffers* by [Dan Tao][]
|
2102 | - *Nix* by [Domen Kožar][]
|
2103 | - *x86asm* by [innocenat][]
|
2104 | - *Cap'n Proto* and *Thrift* by [Oleg Efimov][]
|
2105 | - *Monkey* by [Arthur Bikmullin][]
|
2106 | - *TypeScript* by [Panu Horsmalahti][]
|
2107 | - *Nimrod* by [Flaviu Tamas][]
|
2108 | - *Gradle* by [Damian Mee][]
|
2109 | - *Haxe* by [Christopher Kaster][]
|
2110 | - *Swift* by [Chris Eidhof][] and [Nate Cook][]
|
2111 |
|
2112 | New styles:
|
2113 |
|
2114 | - *Kimbie*, light and dark variants by [Jan T. Sott][]
|
2115 | - *Color brewer* by [Fabrício Tavares de Oliveira][]
|
2116 | - *Codepen.io embed* by [Justin Perry][]
|
2117 | - *Hybrid* by [Nic West][]
|
2118 |
|
2119 | [Sam Pikesley]: https://github.com/pikesley
|
2120 | [Sindre Sorhus]: https://github.com/sindresorhus
|
2121 | [Josh Adams]: https://github.com/knewter
|
2122 | [Jan T. Sott]: https://github.com/idleberg
|
2123 | [Jun Yang]: https://github.com/harttle
|
2124 | [Dan Tao]: https://github.com/dtao
|
2125 | [Domen Kožar]: https://github.com/iElectric
|
2126 | [innocenat]: https://github.com/innocenat
|
2127 | [Oleg Efimov]: https://github.com/Sannis
|
2128 | [Arthur Bikmullin]: https://github.com/devolonter
|
2129 | [Panu Horsmalahti]: https://github.com/panuhorsmalahti
|
2130 | [Flaviu Tamas]: https://github.com/flaviut
|
2131 | [Damian Mee]: https://github.com/chester1000
|
2132 | [Christopher Kaster]: http://christopher.kaster.ws
|
2133 | [Fabrício Tavares de Oliveira]: https://github.com/fabriciotav
|
2134 | [Justin Perry]: https://github.com/ourmaninamsterdam
|
2135 | [Nic West]: https://github.com/nicwest
|
2136 | [Chris Eidhof]: https://github.com/chriseidhof
|
2137 | [Nate Cook]: https://github.com/natecook1000
|
2138 |
|
2139 | Other improvements:
|
2140 |
|
2141 | - The README is heavily reworked and brought up to date by [Jeremy Hull][].
|
2142 | - Added [`listLanguages()`][ll] method in the API.
|
2143 | - Improved C/C++/C# detection.
|
2144 | - Added a bunch of new language aliases, documented the existing ones. Thanks to
|
2145 | [Sindre Sorhus][] for background research.
|
2146 | - Added phrasal English words to boost relevance in comments.
|
2147 | - Many improvements to SQL definition made by [Heiko August][],
|
2148 | [Nikolay Lisienko][] and [Travis Odom][].
|
2149 | - The shorter `lang-` prefix for language names in HTML classes supported
|
2150 | alongside `language-`. Thanks to [Jeff Escalante][].
|
2151 | - Ruby's got support for interactive console sessions. Thanks to
|
2152 | [Pascal Hurni][].
|
2153 | - Added built-in functions for R language. Thanks to [Artem A. Klevtsov][].
|
2154 | - Rust's got definition for lifetime parameters and improved string syntax.
|
2155 | Thanks to [Roman Shmatov][].
|
2156 | - Various improvements to Objective-C definition by [Matt Diephouse][].
|
2157 | - Fixed highlighting of generics in Java.
|
2158 |
|
2159 | [ll]: http://highlightjs.readthedocs.org/en/latest/api.html#listlanguages
|
2160 | [Sindre Sorhus]: https://github.com/sindresorhus
|
2161 | [Heiko August]: https://github.com/auge8472
|
2162 | [Nikolay Lisienko]: https://github.com/neor-ru
|
2163 | [Travis Odom]: https://github.com/Burstaholic
|
2164 | [Jeff Escalante]: https://github.com/jenius
|
2165 | [Pascal Hurni]: https://github.com/phurni
|
2166 | [Jiyin Yiyong]: https://github.com/jiyinyiyong
|
2167 | [Artem A. Klevtsov]: https://github.com/unikum
|
2168 | [Roman Shmatov]: https://github.com/shmatov
|
2169 | [Jeremy Hull]: https://github.com/sourrust
|
2170 | [Matt Diephouse]: https://github.com/mdiep
|
2171 |
|
2172 |
|
2173 | ## Version 8.0
|
2174 |
|
2175 | This new major release is quite a big overhaul bringing both new features and
|
2176 | some backwards incompatible changes. However, chances are that the majority of
|
2177 | users won't be affected by the latter: the basic scenario described in the
|
2178 | README is left intact.
|
2179 |
|
2180 | Here's what did change in an incompatible way:
|
2181 |
|
2182 | - We're now prefixing all classes located in [CSS classes reference][cr] with
|
2183 | `hljs-`, by default, because some class names would collide with other
|
2184 | people's stylesheets. If you were using an older version, you might still want
|
2185 | the previous behavior, but still want to upgrade. To suppress this new
|
2186 | behavior, you would initialize like so:
|
2187 |
|
2188 | ```html
|
2189 | <script type="text/javascript">
|
2190 | hljs.configure({classPrefix: ''});
|
2191 | hljs.initHighlightingOnLoad();
|
2192 | </script>
|
2193 | ```
|
2194 |
|
2195 | - `tabReplace` and `useBR` that were used in different places are also unified
|
2196 | into the global options object and are to be set using `configure(options)`.
|
2197 | This function is documented in our [API docs][]. Also note that these
|
2198 | parameters are gone from `highlightBlock` and `fixMarkup` which are now also
|
2199 | rely on `configure`.
|
2200 |
|
2201 | - We removed public-facing (though undocumented) object `hljs.LANGUAGES` which
|
2202 | was used to register languages with the library in favor of two new methods:
|
2203 | `registerLanguage` and `getLanguage`. Both are documented in our [API docs][].
|
2204 |
|
2205 | - Result returned from `highlight` and `highlightAuto` no longer contains two
|
2206 | separate attributes contributing to relevance score, `relevance` and
|
2207 | `keyword_count`. They are now unified in `relevance`.
|
2208 |
|
2209 | Another technically compatible change that nonetheless might need attention:
|
2210 |
|
2211 | - The structure of the NPM package was refactored, so if you had installed it
|
2212 | locally, you'll have to update your paths. The usual `require('highlight.js')`
|
2213 | works as before. This is contributed by [Dmitry Smolin][].
|
2214 |
|
2215 | New features:
|
2216 |
|
2217 | - Languages now can be recognized by multiple names like "js" for JavaScript or
|
2218 | "html" for, well, HTML (which earlier insisted on calling it "xml"). These
|
2219 | aliases can be specified in the class attribute of the code container in your
|
2220 | HTML as well as in various API calls. For now there are only a few very common
|
2221 | aliases but we'll expand it in the future. All of them are listed in the
|
2222 | [class reference][cr].
|
2223 |
|
2224 | - Language detection can now be restricted to a subset of languages relevant in
|
2225 | a given context — a web page or even a single highlighting call. This is
|
2226 | especially useful for node.js build that includes all the known languages.
|
2227 | Another example is a StackOverflow-style site where users specify languages
|
2228 | as tags rather than in the markdown-formatted code snippets. This is
|
2229 | documented in the [API reference][] (see methods `highlightAuto` and
|
2230 | `configure`).
|
2231 |
|
2232 | - Language definition syntax streamlined with [variants][] and
|
2233 | [beginKeywords][].
|
2234 |
|
2235 | New languages and styles:
|
2236 |
|
2237 | - *Oxygene* by [Carlo Kok][]
|
2238 | - *Mathematica* by [Daniel Kvasnička][]
|
2239 | - *Autohotkey* by [Seongwon Lee][]
|
2240 | - *Atelier* family of styles in 10 variants by [Bram de Haan][]
|
2241 | - *Paraíso* styles by [Jan T. Sott][]
|
2242 |
|
2243 | Miscellaneous improvements:
|
2244 |
|
2245 | - Highlighting `=>` prompts in Clojure.
|
2246 | - [Jeremy Hull][] fixed a lot of styles for consistency.
|
2247 | - Finally, highlighting PHP and HTML [mixed in peculiar ways][php-html].
|
2248 | - Objective C and C# now properly highlight titles in method definition.
|
2249 | - Big overhaul of relevance counting for a number of languages. Please do report
|
2250 | bugs about mis-detection of non-trivial code snippets!
|
2251 |
|
2252 | [API reference]: http://highlightjs.readthedocs.org/en/latest/api.html
|
2253 |
|
2254 | [cr]: http://highlightjs.readthedocs.org/en/latest/css-classes-reference.html
|
2255 | [api docs]: http://highlightjs.readthedocs.org/en/latest/api.html
|
2256 | [variants]: https://groups.google.com/d/topic/highlightjs/VoGC9-1p5vk/discussion
|
2257 | [beginKeywords]: https://github.com/isagalaev/highlight.js/commit/6c7fdea002eb3949577a85b3f7930137c7c3038d
|
2258 | [php-html]: https://twitter.com/highlightjs/status/408890903017689088
|
2259 |
|
2260 | [Carlo Kok]: https://github.com/carlokok
|
2261 | [Bram de Haan]: https://github.com/atelierbram
|
2262 | [Daniel Kvasnička]: https://github.com/dkvasnicka
|
2263 | [Dmitry Smolin]: https://github.com/dimsmol
|
2264 | [Jeremy Hull]: https://github.com/sourrust
|
2265 | [Seongwon Lee]: https://github.com/dlimpid
|
2266 | [Jan T. Sott]: https://github.com/idleberg
|
2267 |
|
2268 |
|
2269 | ## Version 7.5
|
2270 |
|
2271 | A catch-up release dealing with some of the accumulated contributions. This one
|
2272 | is probably will be the last before the 8.0 which will be slightly backwards
|
2273 | incompatible regarding some advanced use-cases.
|
2274 |
|
2275 | One outstanding change in this version is the addition of 6 languages to the
|
2276 | [hosted script][d]: Markdown, ObjectiveC, CoffeeScript, Apache, Nginx and
|
2277 | Makefile. It now weighs about 6K more but we're going to keep it under 30K.
|
2278 |
|
2279 | New languages:
|
2280 |
|
2281 | - OCaml by [Mehdi Dogguy][mehdid] and [Nicolas Braud-Santoni][nbraud]
|
2282 | - [LiveCode Server][lcs] by [Ralf Bitter][revig]
|
2283 | - Scilab by [Sylvestre Ledru][sylvestre]
|
2284 | - basic support for Makefile by [Ivan Sagalaev][isagalaev]
|
2285 |
|
2286 | Improvements:
|
2287 |
|
2288 | - Ruby's got support for characters like `?A`, `?1`, `?\012` etc. and `%r{..}`
|
2289 | regexps.
|
2290 | - Clojure now allows a function call in the beginning of s-expressions
|
2291 | `(($filter "myCount") (arr 1 2 3 4 5))`.
|
2292 | - Haskell's got new keywords and now recognizes more things like pragmas,
|
2293 | preprocessors, modules, containers, FFIs etc. Thanks to [Zena Treep][treep]
|
2294 | for the implementation and to [Jeremy Hull][sourrust] for guiding it.
|
2295 | - Miscellaneous fixes in PHP, Brainfuck, SCSS, Asciidoc, CMake, Python and F#.
|
2296 |
|
2297 | [mehdid]: https://github.com/mehdid
|
2298 | [nbraud]: https://github.com/nbraud
|
2299 | [revig]: https://github.com/revig
|
2300 | [lcs]: http://livecode.com/developers/guides/server/
|
2301 | [sylvestre]: https://github.com/sylvestre
|
2302 | [isagalaev]: https://github.com/isagalaev
|
2303 | [treep]: https://github.com/treep
|
2304 | [sourrust]: https://github.com/sourrust
|
2305 | [d]: http://highlightjs.org/download/
|
2306 |
|
2307 |
|
2308 | ## New core developers
|
2309 |
|
2310 | The latest long period of almost complete inactivity in the project coincided
|
2311 | with growing interest to it led to a decision that now seems completely obvious:
|
2312 | we need more core developers.
|
2313 |
|
2314 | So without further ado let me welcome to the core team two long-time
|
2315 | contributors: [Jeremy Hull][] and [Oleg
|
2316 | Efimov][].
|
2317 |
|
2318 | Hope now we'll be able to work through stuff faster!
|
2319 |
|
2320 | P.S. The historical commit is [here][1] for the record.
|
2321 |
|
2322 | [Jeremy Hull]: https://github.com/sourrust
|
2323 | [Oleg Efimov]: https://github.com/sannis
|
2324 | [1]: https://github.com/isagalaev/highlight.js/commit/f3056941bda56d2b72276b97bc0dd5f230f2473f
|
2325 |
|
2326 |
|
2327 | ## Version 7.4
|
2328 |
|
2329 | This long overdue version is a snapshot of the current source tree with all the
|
2330 | changes that happened during the past year. Sorry for taking so long!
|
2331 |
|
2332 | Along with the changes in code highlight.js has finally got its new home at
|
2333 | <http://highlightjs.org/>, moving from its cradle on Software Maniacs which it
|
2334 | outgrew a long time ago. Be sure to report any bugs about the site to
|
2335 | <mailto:info@highlightjs.org>.
|
2336 |
|
2337 | On to what's new…
|
2338 |
|
2339 | New languages:
|
2340 |
|
2341 | - Handlebars templates by [Robin Ward][]
|
2342 | - Oracle Rules Language by [Jason Jacobson][]
|
2343 | - F# by [Joans Follesø][]
|
2344 | - AsciiDoc and Haml by [Dan Allen][]
|
2345 | - Lasso by [Eric Knibbe][]
|
2346 | - SCSS by [Kurt Emch][]
|
2347 | - VB.NET by [Poren Chiang][]
|
2348 | - Mizar by [Kelley van Evert][]
|
2349 |
|
2350 | [Robin Ward]: https://github.com/eviltrout
|
2351 | [Jason Jacobson]: https://github.com/jayce7
|
2352 | [Joans Follesø]: https://github.com/follesoe
|
2353 | [Dan Allen]: https://github.com/mojavelinux
|
2354 | [Eric Knibbe]: https://github.com/EricFromCanada
|
2355 | [Kurt Emch]: https://github.com/kemch
|
2356 | [Poren Chiang]: https://github.com/rschiang
|
2357 | [Kelley van Evert]: https://github.com/kelleyvanevert
|
2358 |
|
2359 | New style themes:
|
2360 |
|
2361 | - Monokai Sublime by [noformnocontent][]
|
2362 | - Railscasts by [Damien White][]
|
2363 | - Obsidian by [Alexander Marenin][]
|
2364 | - Docco by [Simon Madine][]
|
2365 | - Mono Blue by [Ivan Sagalaev][] (uses a single color hue for everything)
|
2366 | - Foundation by [Dan Allen][]
|
2367 |
|
2368 | [noformnocontent]: http://nn.mit-license.org/
|
2369 | [Damien White]: https://github.com/visoft
|
2370 | [Alexander Marenin]: https://github.com/ioncreature
|
2371 | [Simon Madine]: https://github.com/thingsinjars
|
2372 | [Ivan Sagalaev]: https://github.com/isagalaev
|
2373 |
|
2374 | Other notable changes:
|
2375 |
|
2376 | - Corrected many corner cases in CSS.
|
2377 | - Dropped Python 2 version of the build tool.
|
2378 | - Implemented building for the AMD format.
|
2379 | - Updated Rust keywords (thanks to [Dmitry Medvinsky][]).
|
2380 | - Literal regexes can now be used in language definitions.
|
2381 | - CoffeeScript highlighting is now significantly more robust and rich due to
|
2382 | input from [Cédric Néhémie][].
|
2383 |
|
2384 | [Dmitry Medvinsky]: https://github.com/dmedvinsky
|
2385 | [Cédric Néhémie]: https://github.com/abe33
|
2386 |
|
2387 |
|
2388 | ## Version 7.3
|
2389 |
|
2390 | - Since this version highlight.js no longer works in IE version 8 and older.
|
2391 | It's made it possible to reduce the library size and dramatically improve code
|
2392 | readability and made it easier to maintain. Time to go forward!
|
2393 |
|
2394 | - New languages: AppleScript (by [Nathan Grigg][ng] and [Dr. Drang][dd]) and
|
2395 | Brainfuck (by [Evgeny Stepanischev][bolk]).
|
2396 |
|
2397 | - Improvements to existing languages:
|
2398 |
|
2399 | - interpreter prompt in Python (`>>>` and `...`)
|
2400 | - @-properties and classes in CoffeeScript
|
2401 | - E4X in JavaScript (by [Oleg Efimov][oe])
|
2402 | - new keywords in Perl (by [Kirk Kimmel][kk])
|
2403 | - big Ruby syntax update (by [Vasily Polovnyov][vast])
|
2404 | - small fixes in Bash
|
2405 |
|
2406 | - Also Oleg Efimov did a great job of moving all the docs for language and style
|
2407 | developers and contributors from the old wiki under the source code in the
|
2408 | "docs" directory. Now these docs are nicely presented at
|
2409 | <http://highlightjs.readthedocs.org/>.
|
2410 |
|
2411 | [ng]: https://github.com/nathan11g
|
2412 | [dd]: https://github.com/drdrang
|
2413 | [bolk]: https://github.com/bolknote
|
2414 | [oe]: https://github.com/Sannis
|
2415 | [kk]: https://github.com/kimmel
|
2416 | [vast]: https://github.com/vast
|
2417 |
|
2418 |
|
2419 | ## Version 7.2
|
2420 |
|
2421 | A regular bug-fix release without any significant new features. Enjoy!
|
2422 |
|
2423 |
|
2424 | ## Version 7.1
|
2425 |
|
2426 | A Summer crop:
|
2427 |
|
2428 | - [Marc Fornos][mf] made the definition for Clojure along with the matching
|
2429 | style Rainbow (which, of course, works for other languages too).
|
2430 | - CoffeeScript support continues to improve getting support for regular
|
2431 | expressions.
|
2432 | - Yoshihide Jimbo ported to highlight.js [five Tomorrow styles][tm] from the
|
2433 | [project by Chris Kempson][tm0].
|
2434 | - Thanks to [Casey Duncun][cd] the library can now be built in the popular
|
2435 | [AMD format][amd].
|
2436 | - And last but not least, we've got a fair number of correctness and consistency
|
2437 | fixes, including a pretty significant refactoring of Ruby.
|
2438 |
|
2439 | [mf]: https://github.com/mfornos
|
2440 | [tm]: http://jmblog.github.com/color-themes-for-highlightjs/
|
2441 | [tm0]: https://github.com/ChrisKempson/Tomorrow-Theme
|
2442 | [cd]: https://github.com/caseman
|
2443 | [amd]: http://requirejs.org/docs/whyamd.html
|
2444 |
|
2445 |
|
2446 | ## Version 7.0
|
2447 |
|
2448 | The reason for the new major version update is a global change of keyword syntax
|
2449 | which resulted in the library getting smaller once again. For example, the
|
2450 | hosted build is 2K less than at the previous version while supporting two new
|
2451 | languages.
|
2452 |
|
2453 | Notable changes:
|
2454 |
|
2455 | - The library now works not only in a browser but also with [node.js][]. It is
|
2456 | installable with `npm install highlight.js`. [API][] docs are available on our
|
2457 | wiki.
|
2458 |
|
2459 | - The new unique feature (apparently) among syntax highlighters is highlighting
|
2460 | *HTTP* headers and an arbitrary language in the request body. The most useful
|
2461 | languages here are *XML* and *JSON* both of which highlight.js does support.
|
2462 | Here's [the detailed post][p] about the feature.
|
2463 |
|
2464 | - Two new style themes: a dark "south" *[Pojoaque][]* by Jason Tate and an
|
2465 | emulation of*XCode* IDE by [Angel Olloqui][ao].
|
2466 |
|
2467 | - Three new languages: *D* by [Aleksandar Ružičić][ar], *R* by [Joe Cheng][jc]
|
2468 | and *GLSL* by [Sergey Tikhomirov][st].
|
2469 |
|
2470 | - *Nginx* syntax has become a million times smaller and more universal thanks to
|
2471 | remaking it in a more generic manner that doesn't require listing all the
|
2472 | directives in the known universe.
|
2473 |
|
2474 | - Function titles are now highlighted in *PHP*.
|
2475 |
|
2476 | - *Haskell* and *VHDL* were significantly reworked to be more rich and correct
|
2477 | by their respective maintainers [Jeremy Hull][sr] and [Igor Kalnitsky][ik].
|
2478 |
|
2479 | And last but not least, many bugs have been fixed around correctness and
|
2480 | language detection.
|
2481 |
|
2482 | Overall highlight.js currently supports 51 languages and 20 style themes.
|
2483 |
|
2484 | [node.js]: http://nodejs.org/
|
2485 | [api]: http://softwaremaniacs.org/wiki/doku.php/highlight.js:api
|
2486 | [p]: http://softwaremaniacs.org/blog/2012/05/10/http-and-json-in-highlight-js/en/
|
2487 | [pojoaque]: http://web-cms-designs.com/ftopict-10-pojoaque-style-for-highlight-js-code-highlighter.html
|
2488 | [ao]: https://github.com/angelolloqui
|
2489 | [ar]: https://github.com/raleksandar
|
2490 | [jc]: https://github.com/jcheng5
|
2491 | [st]: https://github.com/tikhomirov
|
2492 | [sr]: https://github.com/sourrust
|
2493 | [ik]: https://github.com/ikalnitsky
|
2494 |
|
2495 |
|
2496 | ## Version 6.2
|
2497 |
|
2498 | A lot of things happened in highlight.js since the last version! We've got nine
|
2499 | new contributors, the discussion group came alive, and the main branch on GitHub
|
2500 | now counts more than 350 followers. Here are most significant results coming
|
2501 | from all this activity:
|
2502 |
|
2503 | - 5 (five!) new languages: Rust, ActionScript, CoffeeScript, MatLab and
|
2504 | experimental support for markdown. Thanks go to [Andrey Vlasovskikh][av],
|
2505 | [Alexander Myadzel][am], [Dmytrii Nagirniak][dn], [Oleg Efimov][oe], [Denis
|
2506 | Bardadym][db] and [John Crepezzi][jc].
|
2507 |
|
2508 | - 2 new style themes: Monokai by [Luigi Maselli][lm] and stylistic imitation of
|
2509 | another well-known highlighter Google Code Prettify by [Aahan Krish][ak].
|
2510 |
|
2511 | - A vast number of [correctness fixes and code refactorings][log], mostly made
|
2512 | by [Oleg Efimov][oe] and [Evgeny Stepanischev][es].
|
2513 |
|
2514 | [av]: https://github.com/vlasovskikh
|
2515 | [am]: https://github.com/myadzel
|
2516 | [dn]: https://github.com/dnagir
|
2517 | [oe]: https://github.com/Sannis
|
2518 | [db]: https://github.com/btd
|
2519 | [jc]: https://github.com/seejohnrun
|
2520 | [lm]: http://grigio.org/
|
2521 | [ak]: https://github.com/geekpanth3r
|
2522 | [es]: https://github.com/bolknote
|
2523 | [log]: https://github.com/isagalaev/highlight.js/commits/
|
2524 |
|
2525 |
|
2526 | ## Version 6.1 — Solarized
|
2527 |
|
2528 | [Jeremy Hull][jh] has implemented my dream feature — a port of [Solarized][]
|
2529 | style theme famous for being based on the intricate color theory to achieve
|
2530 | correct contrast and color perception. It is now available for highlight.js in
|
2531 | both variants — light and dark.
|
2532 |
|
2533 | This version also adds a new original style Arta. Its author pumbur maintains a
|
2534 | [heavily modified fork of highlight.js][pb] on GitHub.
|
2535 |
|
2536 | [jh]: https://github.com/sourrust
|
2537 | [solarized]: http://ethanschoonover.com/solarized
|
2538 | [pb]: https://github.com/pumbur/highlight.js
|
2539 |
|
2540 |
|
2541 | ## Version 6.0
|
2542 |
|
2543 | New major version of the highlighter has been built on a significantly
|
2544 | refactored syntax. Due to this it's even smaller than the previous one while
|
2545 | supporting more languages!
|
2546 |
|
2547 | New languages are:
|
2548 |
|
2549 | - Haskell by [Jeremy Hull][sourrust]
|
2550 | - Erlang in two varieties — module and REPL — made collectively by [Nikolay
|
2551 | Zakharov][desh], [Dmitry Kovega][arhibot] and [Sergey Ignatov][ignatov]
|
2552 | - Objective C by [Valerii Hiora][vhbit]
|
2553 | - Vala by [Antono Vasiljev][antono]
|
2554 | - Go by [Stephan Kountso][steplg]
|
2555 |
|
2556 | [sourrust]: https://github.com/sourrust
|
2557 | [desh]: http://desh.su/
|
2558 | [arhibot]: https://github.com/arhibot
|
2559 | [ignatov]: https://github.com/ignatov
|
2560 | [vhbit]: https://github.com/vhbit
|
2561 | [antono]: https://github.com/antono
|
2562 | [steplg]: https://github.com/steplg
|
2563 |
|
2564 | Also this version is marginally faster and fixes a number of small long-standing
|
2565 | bugs.
|
2566 |
|
2567 | Developer overview of the new language syntax is available in a [blog post about
|
2568 | recent beta release][beta].
|
2569 |
|
2570 | [beta]: http://softwaremaniacs.org/blog/2011/04/25/highlight-js-60-beta/en/
|
2571 |
|
2572 | P.S. New version is not yet available on a Yandex CDN, so for now you have to
|
2573 | download [your own copy][d].
|
2574 |
|
2575 | [d]: /soft/highlight/en/download/
|
2576 |
|
2577 |
|
2578 | ## Version 5.14
|
2579 |
|
2580 | Fixed bugs in HTML/XML detection and relevance introduced in previous
|
2581 | refactoring.
|
2582 |
|
2583 | Also test.html now shows the second best result of language detection by
|
2584 | relevance.
|
2585 |
|
2586 |
|
2587 | ## Version 5.13
|
2588 |
|
2589 | Past weekend began with a couple of simple additions for existing languages but
|
2590 | ended up in a big code refactoring bringing along nice improvements for language
|
2591 | developers.
|
2592 |
|
2593 | ### For users
|
2594 |
|
2595 | - Description of C++ has got new keywords from the upcoming [C++ 0x][] standard.
|
2596 | - Description of HTML has got new tags from [HTML 5][].
|
2597 | - CSS-styles have been unified to use consistent padding and also have lost
|
2598 | pop-outs with names of detected languages.
|
2599 | - [Igor Kalnitsky][ik] has sent two new language descriptions: CMake & VHDL.
|
2600 |
|
2601 | This makes total number of languages supported by highlight.js to reach 35.
|
2602 |
|
2603 | Bug fixes:
|
2604 |
|
2605 | - Custom classes on `<pre>` tags are not being overridden anymore
|
2606 | - More correct highlighting of code blocks inside non-`<pre>` containers:
|
2607 | highlighter now doesn't insist on replacing them with its own container and
|
2608 | just replaces the contents.
|
2609 | - Small fixes in browser compatibility and heuristics.
|
2610 |
|
2611 | [c++ 0x]: http://ru.wikipedia.org/wiki/C%2B%2B0x
|
2612 | [html 5]: http://en.wikipedia.org/wiki/HTML5
|
2613 | [ik]: http://kalnitsky.org.ua/
|
2614 |
|
2615 | ### For developers
|
2616 |
|
2617 | The most significant change is the ability to include language submodes right
|
2618 | under `contains` instead of defining explicit named submodes in the main array:
|
2619 |
|
2620 | contains: [
|
2621 | 'string',
|
2622 | 'number',
|
2623 | {begin: '\\n', end: hljs.IMMEDIATE_RE}
|
2624 | ]
|
2625 |
|
2626 | This is useful for auxiliary modes needed only in one place to define parsing.
|
2627 | Note that such modes often don't have `className` and hence won't generate a
|
2628 | separate `<span>` in the resulting markup. This is similar in effect to
|
2629 | `noMarkup: true`. All existing languages have been refactored accordingly.
|
2630 |
|
2631 | Test file test.html has at last become a real test. Now it not only puts the
|
2632 | detected language name under the code snippet but also tests if it matches the
|
2633 | expected one. Test summary is displayed right above all language snippets.
|
2634 |
|
2635 |
|
2636 | ## CDN
|
2637 |
|
2638 | Fine people at [Yandex][] agreed to host highlight.js on their big fast servers.
|
2639 | [Link up][l]!
|
2640 |
|
2641 | [yandex]: http://yandex.com/
|
2642 | [l]: http://softwaremaniacs.org/soft/highlight/en/download/
|
2643 |
|
2644 |
|
2645 | ## Version 5.10 — "Paris".
|
2646 |
|
2647 | Though I'm on a vacation in Paris, I decided to release a new version with a
|
2648 | couple of small fixes:
|
2649 |
|
2650 | - Tomas Vitvar discovered that TAB replacement doesn't always work when used
|
2651 | with custom markup in code
|
2652 | - SQL parsing is even more rigid now and doesn't step over SmallTalk in tests
|
2653 |
|
2654 |
|
2655 | ## Version 5.9
|
2656 |
|
2657 | A long-awaited version is finally released.
|
2658 |
|
2659 | New languages:
|
2660 |
|
2661 | - Andrew Fedorov made a definition for Lua
|
2662 | - a long-time highlight.js contributor [Peter Leonov][pl] made a definition for
|
2663 | Nginx config
|
2664 | - [Vladimir Moskva][vm] made a definition for TeX
|
2665 |
|
2666 | [pl]: http://kung-fu-tzu.ru/
|
2667 | [vm]: http://fulc.ru/
|
2668 |
|
2669 | Fixes for existing languages:
|
2670 |
|
2671 | - [Loren Segal][ls] reworked the Ruby definition and added highlighting for
|
2672 | [YARD][] inline documentation
|
2673 | - the definition of SQL has become more solid and now it shouldn't be overly
|
2674 | greedy when it comes to language detection
|
2675 |
|
2676 | [ls]: http://gnuu.org/
|
2677 | [yard]: http://yardoc.org/
|
2678 |
|
2679 | The highlighter has become more usable as a library allowing to do highlighting
|
2680 | from initialization code of JS frameworks and in ajax methods (see.
|
2681 | readme.eng.txt).
|
2682 |
|
2683 | Also this version drops support for the [WordPress][wp] plugin. Everyone is
|
2684 | welcome to [pick up its maintenance][p] if needed.
|
2685 |
|
2686 | [wp]: http://wordpress.org/
|
2687 | [p]: http://bazaar.launchpad.net/~isagalaev/+junk/highlight/annotate/342/src/wp_highlight.js.php
|
2688 |
|
2689 |
|
2690 | ## Version 5.8
|
2691 |
|
2692 | - Jan Berkel has contributed a definition for Scala. +1 to hotness!
|
2693 | - All CSS-styles are rewritten to work only inside `<pre>` tags to avoid
|
2694 | conflicts with host site styles.
|
2695 |
|
2696 |
|
2697 | ## Version 5.7.
|
2698 |
|
2699 | Fixed escaping of quotes in VBScript strings.
|
2700 |
|
2701 |
|
2702 | ## Version 5.5
|
2703 |
|
2704 | This version brings a small change: now .ini-files allow digits, underscores and
|
2705 | square brackets in key names.
|
2706 |
|
2707 |
|
2708 | ## Version 5.4
|
2709 |
|
2710 | Fixed small but upsetting bug in the packer which caused incorrect highlighting
|
2711 | of explicitly specified languages. Thanks to Andrew Fedorov for precise
|
2712 | diagnostics!
|
2713 |
|
2714 |
|
2715 | ## Version 5.3
|
2716 |
|
2717 | The version to fulfil old promises.
|
2718 |
|
2719 | The most significant change is that highlight.js now preserves custom user
|
2720 | markup in code along with its own highlighting markup. This means that now it's
|
2721 | possible to use, say, links in code. Thanks to [Vladimir Dolzhenko][vd] for the
|
2722 | [initial proposal][1] and for making a proof-of-concept patch.
|
2723 |
|
2724 | Also in this version:
|
2725 |
|
2726 | - [Vasily Polovnyov][vp] has sent a GitHub-like style and has implemented
|
2727 | support for CSS @-rules and Ruby symbols.
|
2728 | - Yura Zaripov has sent two styles: Brown Paper and School Book.
|
2729 | - Oleg Volchkov has sent a definition for [Parser 3][p3].
|
2730 |
|
2731 | [1]: http://softwaremaniacs.org/forum/highlightjs/6612/
|
2732 | [p3]: http://www.parser.ru/
|
2733 | [vp]: http://vasily.polovnyov.ru/
|
2734 | [vd]: http://dolzhenko.blogspot.com/
|
2735 |
|
2736 |
|
2737 | ## Version 5.2
|
2738 |
|
2739 | - at last it's possible to replace indentation TABs with something sensible
|
2740 | (e.g. 2 or 4 spaces)
|
2741 | - new keywords and built-ins for 1C by Sergey Baranov
|
2742 | - a couple of small fixes to Apache highlighting
|
2743 |
|
2744 |
|
2745 | ## Version 5.1
|
2746 |
|
2747 | This is one of those nice version consisting entirely of new and shiny
|
2748 | contributions!
|
2749 |
|
2750 | - [Vladimir Ermakov][vooon] created highlighting for AVR Assembler
|
2751 | - [Ruslan Keba][rukeba] created highlighting for Apache config file. Also his
|
2752 | original visual style for it is now available for all highlight.js languages
|
2753 | under the name "Magula".
|
2754 | - [Shuen-Huei Guan][drake] (aka Drake) sent new keywords for RenderMan
|
2755 | languages. Also thanks go to [Konstantin Evdokimenko][ke] for his advice on
|
2756 | the matter.
|
2757 |
|
2758 | [vooon]: http://vehq.ru/about/
|
2759 | [rukeba]: http://rukeba.com/
|
2760 | [drake]: http://drakeguan.org/
|
2761 | [ke]: http://k-evdokimenko.moikrug.ru/
|
2762 |
|
2763 |
|
2764 | ## Version 5.0
|
2765 |
|
2766 | The main change in the new major version of highlight.js is a mechanism for
|
2767 | packing several languages along with the library itself into a single compressed
|
2768 | file. Now sites using several languages will load considerably faster because
|
2769 | the library won't dynamically include additional files while loading.
|
2770 |
|
2771 | Also this version fixes a long-standing bug with Javascript highlighting that
|
2772 | couldn't distinguish between regular expressions and division operations.
|
2773 |
|
2774 | And as usually there were a couple of minor correctness fixes.
|
2775 |
|
2776 | Great thanks to all contributors! Keep using highlight.js.
|
2777 |
|
2778 |
|
2779 | ## Version 4.3
|
2780 |
|
2781 | This version comes with two contributions from [Jason Diamond][jd]:
|
2782 |
|
2783 | - language definition for C# (yes! it was a long-missed thing!)
|
2784 | - Visual Studio-like highlighting style
|
2785 |
|
2786 | Plus there are a couple of minor bug fixes for parsing HTML and XML attributes.
|
2787 |
|
2788 | [jd]: http://jason.diamond.name/weblog/
|
2789 |
|
2790 |
|
2791 | ## Version 4.2
|
2792 |
|
2793 | The biggest news is highlighting for Lisp, courtesy of Vasily Polovnyov. It's
|
2794 | somewhat experimental meaning that for highlighting "keywords" it doesn't use
|
2795 | any pre-defined set of a Lisp dialect. Instead it tries to highlight first word
|
2796 | in parentheses wherever it makes sense. I'd like to ask people programming in
|
2797 | Lisp to confirm if it's a good idea and send feedback to [the forum][f].
|
2798 |
|
2799 | Other changes:
|
2800 |
|
2801 | - Smalltalk was excluded from DEFAULT_LANGUAGES to save traffic
|
2802 | - [Vladimir Epifanov][voldmar] has implemented javascript style switcher for
|
2803 | test.html
|
2804 | - comments now allowed inside Ruby function definition
|
2805 | - [MEL][] language from [Shuen-Huei Guan][drake]
|
2806 | - whitespace now allowed between `<pre>` and `<code>`
|
2807 | - better auto-detection of C++ and PHP
|
2808 | - HTML allows embedded VBScript (`<% .. %>`)
|
2809 |
|
2810 | [f]: http://softwaremaniacs.org/forum/highlightjs/
|
2811 | [voldmar]: http://voldmar.ya.ru/
|
2812 | [mel]: http://en.wikipedia.org/wiki/Maya_Embedded_Language
|
2813 | [drake]: http://drakeguan.org/
|
2814 |
|
2815 |
|
2816 | ## Version 4.1
|
2817 |
|
2818 | Languages:
|
2819 |
|
2820 | - Bash from Vah
|
2821 | - DOS bat-files from Alexander Makarov (Sam)
|
2822 | - Diff files from Vasily Polovnyov
|
2823 | - Ini files from myself though initial idea was from Sam
|
2824 |
|
2825 | Styles:
|
2826 |
|
2827 | - Zenburn from Vladimir Epifanov, this is an imitation of a
|
2828 | [well-known theme for Vim][zenburn].
|
2829 | - Ascetic from myself, as a realization of ideals of non-flashy highlighting:
|
2830 | just one color in only three gradations :-)
|
2831 |
|
2832 | In other news. [One small bug][bug] was fixed, built-in keywords were added for
|
2833 | Python and C++ which improved auto-detection for the latter (it was shame that
|
2834 | [my wife's blog][alenacpp] had issues with it from time to time). And lastly
|
2835 | thanks go to Sam for getting rid of my stylistic comments in code that were
|
2836 | getting in the way of [JSMin][].
|
2837 |
|
2838 | [zenburn]: http://en.wikipedia.org/wiki/Zenburn
|
2839 | [alenacpp]: http://alenacpp.blogspot.com/
|
2840 | [bug]: http://softwaremaniacs.org/forum/viewtopic.php?id=1823
|
2841 | [jsmin]: http://code.google.com/p/jsmin-php/
|
2842 |
|
2843 |
|
2844 | ## Version 4.0
|
2845 |
|
2846 | New major version is a result of vast refactoring and of many contributions.
|
2847 |
|
2848 | Visible new features:
|
2849 |
|
2850 | - Highlighting of embedded languages. Currently is implemented highlighting of
|
2851 | Javascript and CSS inside HTML.
|
2852 | - Bundled 5 ready-made style themes!
|
2853 |
|
2854 | Invisible new features:
|
2855 |
|
2856 | - Highlight.js no longer pollutes global namespace. Only one object and one
|
2857 | function for backward compatibility.
|
2858 | - Performance is further increased by about 15%.
|
2859 |
|
2860 | Changing of a major version number caused by a new format of language definition
|
2861 | files. If you use some third-party language files they should be updated.
|
2862 |
|
2863 |
|
2864 | ## Version 3.5
|
2865 |
|
2866 | A very nice version in my opinion fixing a number of small bugs and slightly
|
2867 | increased speed in a couple of corner cases. Thanks to everybody who reports
|
2868 | bugs in he [forum][f] and by email!
|
2869 |
|
2870 | There is also a new language — XML. A custom XML formerly was detected as HTML
|
2871 | and didn't highlight custom tags. In this version I tried to make custom XML to
|
2872 | be detected and highlighted by its own rules. Which by the way include such
|
2873 | things as CDATA sections and processing instructions (`<? ... ?>`).
|
2874 |
|
2875 | [f]: http://softwaremaniacs.org/forum/viewforum.php?id=6
|
2876 |
|
2877 |
|
2878 | ## Version 3.3
|
2879 |
|
2880 | [Vladimir Gubarkov][xonix] has provided an interesting and useful addition.
|
2881 | File export.html contains a little program that shows and allows to copy and
|
2882 | paste an HTML code generated by the highlighter for any code snippet. This can
|
2883 | be useful in situations when one can't use the script itself on a site.
|
2884 |
|
2885 |
|
2886 | [xonix]: http://xonixx.blogspot.com/
|
2887 |
|
2888 |
|
2889 | ## Version 3.2 consists completely of contributions:
|
2890 |
|
2891 | - Vladimir Gubarkov has described SmallTalk
|
2892 | - Yuri Ivanov has described 1C
|
2893 | - Peter Leonov has packaged the highlighter as a Firefox extension
|
2894 | - Vladimir Ermakov has compiled a mod for phpBB
|
2895 |
|
2896 | Many thanks to you all!
|
2897 |
|
2898 |
|
2899 | ## Version 3.1
|
2900 |
|
2901 | Three new languages are available: Django templates, SQL and Axapta. The latter
|
2902 | two are sent by [Dmitri Roudakov][1]. However I've almost entirely rewrote an
|
2903 | SQL definition but I'd never started it be it from the ground up :-)
|
2904 |
|
2905 | The engine itself has got a long awaited feature of grouping keywords
|
2906 | ("keyword", "built-in function", "literal"). No more hacks!
|
2907 |
|
2908 | [1]: http://roudakov.ru/
|
2909 |
|
2910 |
|
2911 | ## Version 3.0
|
2912 |
|
2913 | It is major mainly because now highlight.js has grown large and has become
|
2914 | modular. Now when you pass it a list of languages to highlight it will
|
2915 | dynamically load into a browser only those languages.
|
2916 |
|
2917 | Also:
|
2918 |
|
2919 | - Konstantin Evdokimenko of [RibKit][] project has created a highlighting for
|
2920 | RenderMan Shading Language and RenderMan Interface Bytestream. Yay for more
|
2921 | languages!
|
2922 | - Heuristics for C++ and HTML got better.
|
2923 | - I've implemented (at last) a correct handling of backslash escapes in C-like
|
2924 | languages.
|
2925 |
|
2926 | There is also a small backwards incompatible change in the new version. The
|
2927 | function initHighlighting that was used to initialize highlighting instead of
|
2928 | initHighlightingOnLoad a long time ago no longer works. If you by chance still
|
2929 | use it — replace it with the new one.
|
2930 |
|
2931 | [RibKit]: http://ribkit.sourceforge.net/
|
2932 |
|
2933 |
|
2934 | ## Version 2.9
|
2935 |
|
2936 | Highlight.js is a parser, not just a couple of regular expressions. That said
|
2937 | I'm glad to announce that in the new version 2.9 has support for:
|
2938 |
|
2939 | - in-string substitutions for Ruby -- `#{...}`
|
2940 | - strings from from numeric symbol codes (like #XX) for Delphi
|
2941 |
|
2942 |
|
2943 | ## Version 2.8
|
2944 |
|
2945 | A maintenance release with more tuned heuristics. Fully backwards compatible.
|
2946 |
|
2947 |
|
2948 | ## Version 2.7
|
2949 |
|
2950 | - Nikita Ledyaev presents highlighting for VBScript, yay!
|
2951 | - A couple of bugs with escaping in strings were fixed thanks to Mickle
|
2952 | - Ongoing tuning of heuristics
|
2953 |
|
2954 | Fixed bugs were rather unpleasant so I encourage everyone to upgrade!
|
2955 |
|
2956 |
|
2957 | ## Version 2.4
|
2958 |
|
2959 | - Peter Leonov provides another improved highlighting for Perl
|
2960 | - Javascript gets a new kind of keywords — "literals". These are the words
|
2961 | "true", "false" and "null"
|
2962 |
|
2963 | Also highlight.js homepage now lists sites that use the library. Feel free to
|
2964 | add your site by [dropping me a message][mail] until I find the time to build a
|
2965 | submit form.
|
2966 |
|
2967 | [mail]: mailto:Maniac@SoftwareManiacs.Org
|
2968 |
|
2969 |
|
2970 | ## Version 2.3
|
2971 |
|
2972 | This version fixes IE breakage in previous version. My apologies to all who have
|
2973 | already downloaded that one!
|
2974 |
|
2975 |
|
2976 | ## Version 2.2
|
2977 |
|
2978 | - added highlighting for Javascript
|
2979 | - at last fixed parsing of Delphi's escaped apostrophes in strings
|
2980 | - in Ruby fixed highlighting of keywords 'def' and 'class', same for 'sub' in
|
2981 | Perl
|
2982 |
|
2983 |
|
2984 | ## Version 2.0
|
2985 |
|
2986 | - Ruby support by [Anton Kovalyov][ak]
|
2987 | - speed increased by orders of magnitude due to new way of parsing
|
2988 | - this same way allows now correct highlighting of keywords in some tricky
|
2989 | places (like keyword "End" at the end of Delphi classes)
|
2990 |
|
2991 | [ak]: http://anton.kovalyov.net/
|
2992 |
|
2993 |
|
2994 | ## Version 1.0
|
2995 |
|
2996 | Version 1.0 of javascript syntax highlighter is released!
|
2997 |
|
2998 | It's the first version available with English description. Feel free to post
|
2999 | your comments and question to [highlight.js forum][forum]. And don't be afraid
|
3000 | if you find there some fancy Cyrillic letters -- it's for Russian users too :-)
|
3001 |
|
3002 | [forum]: http://softwaremaniacs.org/forum/viewforum.php?id=6
|
3003 |
|
\ | No newline at end of file |