Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(109)

Side by Side Diff: highlight_js_8.3.0/CHANGES.md

Issue 1771863004: Add highlight.js 8.3 from the highlight.js standalone repo. (Closed) Base URL: https://chromium.googlesource.com/infra/third_party/npm_modules.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | highlight_js_8.3.0/LICENSE » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 ## Version 8.3
2
3 We streamlined our tool chain, it is now based entirely on node.js instead of
4 being a mix of node.js, Python and Java. The build script options and arguments
5 remained the same, and we've noted all the changes in the [documentation][b].
6 Apart from reducing complexity, the new build script is also faster from not
7 having to start Java machine repeatedly. The credits for the work go to [Jeremy
8 Hull][].
9
10 Some notable fixes:
11
12 - PHP and JavaScript mixed in HTML now live happily with each other.
13 - JavaScript regexes now understand ES6 flags "u" and "y".
14 - `throw` keyword is no longer detected as a method name in Java.
15 - Fixed parsing of numbers and symbols in Clojure thanks to [input from Ivan
16 Kleshnin][ik].
17
18 New languages in this release:
19
20 - *Less* by [Max Mikhailov][]
21 - *Stylus* by [Bryant Williams][]
22 - *Tcl* by [Radek Liska][]
23 - *Puppet* by [Jose Molina Colmenero][]
24 - *Processing* by [Erik Paluka][]
25 - *Twig* templates by [Luke Holder][]
26 - *PowerShell* by [David Mohundro][], based on [the work of Nicholas
27 Blumhardt][ps]
28 - *XL* by [Christophe de Dinechin][]
29 - *LiveScript* by [Taneli Vatanen][] and [Jen Evers-Corvina][]
30 - *ERB* (Ruby in HTML) by [Lucas Mazza][]
31
32 [b]: http://highlightjs.readthedocs.org/en/latest/building-testing.html
33 [Jeremy Hull]: https://github.com/sourrust
34 [ik]: https://twitter.com/IvanKleshnin/status/514041599484231680
35 [Max Mikhailov]: https://github.com/seven-phases-max
36 [Bryant Williams]: https://github.com/scien
37 [Radek Liska]: https://github.com/Nindaleth
38 [Jose Molina Colmenero]: https://github.com/Moliholy
39 [Erik Paluka]: https://github.com/paluka
40 [Luke Holder]: https://github.com/lukeholder
41 [David Mohundro]: https://github.com/drmohundro
42 [ps]: https://github.com/OctopusDeploy/Library/blob/master/app/shared/presentati on/highlighting/powershell.js
43 [Christophe de Dinechin]: https://github.com/c3d
44 [Taneli Vatanen]: https://github.com/Daiz-
45 [Jen Evers-Corvina]: https://github.com/sevvie
46 [Lucas Mazza]: https://github.com/lucasmazza
47
48 ## Version 8.2
49
50 We've finally got [real tests][test] and [continuous testing on Travis][ci]
51 thanks to [Jeremy Hull][] and [Chris Eidhof][]. The tests designed to cover
52 everything: language detection, correct parsing of individual language features
53 and various special cases. This is a very important change that gives us
54 confidence in extending language definitions and refactoring library core.
55
56 We're going to redesign the old [demo/test suite][demo] into an interactive
57 demo web app. If you're confident front-end developer or designer and want to
58 help us with it, drop a comment into [the issue][#542] on GitHub.
59
60 [test]: https://github.com/isagalaev/highlight.js/tree/master/test
61 [demo]: https://highlightjs.org/static/test.html
62 [#542]: https://github.com/isagalaev/highlight.js/issues/542
63 [ci]: https://travis-ci.org/isagalaev/highlight.js
64 [Jeremy Hull]: https://github.com/sourrust
65 [Chris Eidhof]: https://github.com/chriseidhof
66
67 As usually there's a handful of new languages in this release:
68
69 - *Groovy* by [Guillaume Laforge][]
70 - *Dart* by [Maxim Dikun][]
71 - *Dust* by [Michael Allen][]
72 - *Scheme* by [JP Verkamp][]
73 - *G-Code* by [Adam Joseph Cook][]
74 - *Q* from Kx Systems by [Sergey Vidyuk][]
75
76 [Guillaume Laforge]: https://github.com/glaforge
77 [Maxim Dikun]: https://github.com/dikmax
78 [Michael Allen]: https://github.com/bfui
79 [JP Verkamp]: https://github.com/jpverkamp
80 [Adam Joseph Cook]: https://github.com/adamjcook
81 [Sergey Vidyuk]: https://github.com/sv
82
83 Other improvements:
84
85 - [Erik Osheim][] heavily reworked Scala definitions making it richer.
86 - [Lucas Mazza][] fixed Ruby hashes highlighting
87 - Lisp variants (Lisp, Clojure and Scheme) are unified in regard to naming
88 the first symbol in parentheses: it's "keyword" in general case and also
89 "built_in" for built-in functions in Clojure and Scheme.
90
91 [Erik Osheim]: https://github.com/non
92 [Lucas Mazza]: https://github.com/lucasmazza
93
94 ## Version 8.1
95
96 New languages:
97
98 - *Gherkin* by [Sam Pikesley][]
99 - *Elixir* by [Josh Adams][]
100 - *NSIS* by [Jan T. Sott][]
101 - *VIM script* by [Jun Yang][]
102 - *Protocol Buffers* by [Dan Tao][]
103 - *Nix* by [Domen Kožar][]
104 - *x86asm* by [innocenat][]
105 - *Cap’n Proto* and *Thrift* by [Oleg Efimov][]
106 - *Monkey* by [Arthur Bikmullin][]
107 - *TypeScript* by [Panu Horsmalahti][]
108 - *Nimrod* by [Flaviu Tamas][]
109 - *Gradle* by [Damian Mee][]
110 - *Haxe* by [Christopher Kaster][]
111 - *Swift* by [Chris Eidhof][] and [Nate Cook][]
112
113 New styles:
114
115 - *Kimbie*, light and dark variants by [Jan T. Sott][]
116 - *Color brewer* by [Fabrício Tavares de Oliveira][]
117 - *Codepen.io embed* by [Justin Perry][]
118 - *Hybrid* by [Nic West][]
119
120 [Sam Pikesley]: https://github.com/pikesley
121 [Sindre Sorhus]: https://github.com/sindresorhus
122 [Josh Adams]: https://github.com/knewter
123 [Jan T. Sott]: https://github.com/idleberg
124 [Jun Yang]: https://github.com/harttle
125 [Dan Tao]: https://github.com/dtao
126 [Domen Kožar]: https://github.com/iElectric
127 [innocenat]: https://github.com/innocenat
128 [Oleg Efimov]: https://github.com/Sannis
129 [Arthur Bikmullin]: https://github.com/devolonter
130 [Panu Horsmalahti]: https://github.com/panuhorsmalahti
131 [Flaviu Tamas]: https://github.com/flaviut
132 [Damian Mee]: https://github.com/chester1000
133 [Christopher Kaster]: http://christopher.kaster.ws
134 [Fabrício Tavares de Oliveira]: https://github.com/fabriciotav
135 [Justin Perry]: https://github.com/ourmaninamsterdam
136 [Nic West]: https://github.com/nicwest
137 [Chris Eidhof]: https://github.com/chriseidhof
138 [Nate Cook]: https://github.com/natecook1000
139
140 Other improvements:
141
142 - The README is heavily reworked and brought up to date by [Jeremy Hull][].
143 - Added [`listLanguages()`][ll] method in the API.
144 - Improved C/C++/C# detection.
145 - Added a bunch of new language aliases, documented the existing ones. Thanks to
146 [Sindre Sorhus][] for background research.
147 - Added phrasal English words to boost relevance in comments.
148 - Many improvements to SQL definition made by [Heiko August][],
149 [Nikolay Lisienko][] and [Travis Odom][].
150 - The shorter `lang-` prefix for language names in HTML classes supported
151 alongside `language-`. Thanks to [Jeff Escalante][].
152 - Ruby's got support for interactive console sessions. Thanks to
153 [Pascal Hurni][].
154 - Added built-in functions for R language. Thanks to [Artem A. Klevtsov][].
155 - Rust's got definition for lifetime parameters and improved string syntax.
156 Thanks to [Roman Shmatov][].
157 - Various improvements to Objective-C definition by [Matt Diephouse][].
158 - Fixed highlighting of generics in Java.
159
160 [ll]: http://highlightjs.readthedocs.org/en/latest/api.html#listlanguages
161 [Sindre Sorhus]: https://github.com/sindresorhus
162 [Heiko August]: https://github.com/auge8472
163 [Nikolay Lisienko]: https://github.com/neor-ru
164 [Travis Odom]: https://github.com/Burstaholic
165 [Jeff Escalante]: https://github.com/jenius
166 [Pascal Hurni]: https://github.com/phurni
167 [Jiyin Yiyong]: https://github.com/jiyinyiyong
168 [Artem A. Klevtsov]: https://github.com/unikum
169 [Roman Shmatov]: https://github.com/shmatov
170 [Jeremy Hull]: https://github.com/sourrust
171 [Matt Diephouse]: https://github.com/mdiep
172
173
174 ## Version 8.0
175
176 This new major release is quite a big overhaul bringing both new features and
177 some backwards incompatible changes. However, chances are that the majority of
178 users won't be affected by the latter: the basic scenario described in the
179 README is left intact.
180
181 Here's what did change in an incompatible way:
182
183 - We're now prefixing all classes located in [CSS classes reference][cr] with
184 `hljs-`, by default, because some class names would collide with other
185 people's stylesheets. If you were using an older version, you might still want
186 the previous behavior, but still want to upgrade. To suppress this new
187 behavior, you would initialize like so:
188
189 ```html
190 <script type="text/javascript">
191 hljs.configure({classPrefix: ''});
192 hljs.initHighlightingOnLoad();
193 </script>
194 ```
195
196 - `tabReplace` and `useBR` that were used in different places are also unified
197 into the global options object and are to be set using `configure(options)`.
198 This function is documented in our [API docs][]. Also note that these
199 parameters are gone from `highlightBlock` and `fixMarkup` which are now also
200 rely on `configure`.
201
202 - We removed public-facing (though undocumented) object `hljs.LANGUAGES` which
203 was used to register languages with the library in favor of two new methods:
204 `registerLanguage` and `getLanguage`. Both are documented in our [API docs][].
205
206 - Result returned from `highlight` and `highlightAuto` no longer contains two
207 separate attributes contributing to relevance score, `relevance` and
208 `keyword_count`. They are now unified in `relevance`.
209
210 Another technically compatible change that nonetheless might need attention:
211
212 - The structure of the NPM package was refactored, so if you had installed it
213 locally, you'll have to update your paths. The usual `require('highlight.js')`
214 works as before. This is contributed by [Dmitry Smolin][].
215
216 New features:
217
218 - Languages now can be recognized by multiple names like "js" for JavaScript or
219 "html" for, well, HTML (which earlier insisted on calling it "xml"). These
220 aliases can be specified in the class attribute of the code container in your
221 HTML as well as in various API calls. For now there are only a few very common
222 aliases but we'll expand it in the future. All of them are listed in the
223 [class reference][cr].
224
225 - Language detection can now be restricted to a subset of languages relevant in
226 a given context — a web page or even a single highlighting call. This is
227 especially useful for node.js build that includes all the known languages.
228 Another example is a StackOverflow-style site where users specify languages
229 as tags rather than in the markdown-formatted code snippets. This is
230 documented in the [API reference][] (see methods `highlightAuto` and
231 `configure`).
232
233 - Language definition syntax streamlined with [variants][] and
234 [beginKeywords][].
235
236 New languages and styles:
237
238 - *Oxygene* by [Carlo Kok][]
239 - *Mathematica* by [Daniel Kvasnička][]
240 - *Autohotkey* by [Seongwon Lee][]
241 - *Atelier* family of styles in 10 variants by [Bram de Haan][]
242 - *Paraíso* styles by [Jan T. Sott][]
243
244 Miscellaneous improvements:
245
246 - Highlighting `=>` prompts in Clojure.
247 - [Jeremy Hull][] fixed a lot of styles for consistency.
248 - Finally, highlighting PHP and HTML [mixed in peculiar ways][php-html].
249 - Objective C and C# now properly highlight titles in method definition.
250 - Big overhaul of relevance counting for a number of languages. Please do report
251 bugs about mis-detection of non-trivial code snippets!
252
253 [cr]: http://highlightjs.readthedocs.org/en/latest/css-classes-reference.html
254 [api docs]: http://highlightjs.readthedocs.org/en/latest/api.html
255 [variants]: https://groups.google.com/d/topic/highlightjs/VoGC9-1p5vk/discussion
256 [beginKeywords]: https://github.com/isagalaev/highlight.js/commit/6c7fdea002eb39 49577a85b3f7930137c7c3038d
257 [php-html]: https://twitter.com/highlightjs/status/408890903017689088
258
259 [Carlo Kok]: https://github.com/carlokok
260 [Bram de Haan]: https://github.com/atelierbram
261 [Daniel Kvasnička]: https://github.com/dkvasnicka
262 [Dmitry Smolin]: https://github.com/dimsmol
263 [Jeremy Hull]: https://github.com/sourrust
264 [Seongwon Lee]: https://github.com/dlimpid
265 [Jan T. Sott]: https://github.com/idleberg
266
267
268 ## Version 7.5
269
270 A catch-up release dealing with some of the accumulated contributions. This one
271 is probably will be the last before the 8.0 which will be slightly backwards
272 incompatible regarding some advanced use-cases.
273
274 One outstanding change in this version is the addition of 6 languages to the
275 [hosted script][d]: Markdown, ObjectiveC, CoffeeScript, Apache, Nginx and
276 Makefile. It now weighs about 6K more but we're going to keep it under 30K.
277
278 New languages:
279
280 - OCaml by [Mehdi Dogguy][mehdid] and [Nicolas Braud-Santoni][nbraud]
281 - [LiveCode Server][lcs] by [Ralf Bitter][revig]
282 - Scilab by [Sylvestre Ledru][sylvestre]
283 - basic support for Makefile by [Ivan Sagalaev][isagalaev]
284
285 Improvements:
286
287 - Ruby's got support for characters like `?A`, `?1`, `?\012` etc. and `%r{..}`
288 regexps.
289 - Clojure now allows a function call in the beginning of s-expressions
290 `(($filter "myCount") (arr 1 2 3 4 5))`.
291 - Haskell's got new keywords and now recognizes more things like pragmas,
292 preprocessors, modules, containers, FFIs etc. Thanks to [Zena Treep][treep]
293 for the implementation and to [Jeremy Hull][sourrust] for guiding it.
294 - Miscellaneous fixes in PHP, Brainfuck, SCSS, Asciidoc, CMake, Python and F#.
295
296 [mehdid]: https://github.com/mehdid
297 [nbraud]: https://github.com/nbraud
298 [revig]: https://github.com/revig
299 [lcs]: http://livecode.com/developers/guides/server/
300 [sylvestre]: https://github.com/sylvestre
301 [isagalaev]: https://github.com/isagalaev
302 [treep]: https://github.com/treep
303 [sourrust]: https://github.com/sourrust
304 [d]: http://highlightjs.org/download/
305
306
307 ## New core developers
308
309 The latest long period of almost complete inactivity in the project coincided
310 with growing interest to it led to a decision that now seems completely obvious:
311 we need more core developers.
312
313 So without further ado let me welcome to the core team two long-time
314 contributors: [Jeremy Hull][] and [Oleg
315 Efimov][].
316
317 Hope now we'll be able to work through stuff faster!
318
319 P.S. The historical commit is [here][1] for the record.
320
321 [Jeremy Hull]: https://github.com/sourrust
322 [Oleg Efimov]: https://github.com/sannis
323 [1]: https://github.com/isagalaev/highlight.js/commit/f3056941bda56d2b72276b97bc 0dd5f230f2473f
324
325
326 ## Version 7.4
327
328 This long overdue version is a snapshot of the current source tree with all the
329 changes that happened during the past year. Sorry for taking so long!
330
331 Along with the changes in code highlight.js has finally got its new home at
332 <http://highlightjs.org/>, moving from its cradle on Software Maniacs which it
333 outgrew a long time ago. Be sure to report any bugs about the site to
334 <mailto:info@highlightjs.org>.
335
336 On to what's new…
337
338 New languages:
339
340 - Handlebars templates by [Robin Ward][]
341 - Oracle Rules Language by [Jason Jacobson][]
342 - F# by [Joans Follesø][]
343 - AsciiDoc and Haml by [Dan Allen][]
344 - Lasso by [Eric Knibbe][]
345 - SCSS by [Kurt Emch][]
346 - VB.NET by [Poren Chiang][]
347 - Mizar by [Kelley van Evert][]
348
349 [Robin Ward]: https://github.com/eviltrout
350 [Jason Jacobson]: https://github.com/jayce7
351 [Joans Follesø]: https://github.com/follesoe
352 [Dan Allen]: https://github.com/mojavelinux
353 [Eric Knibbe]: https://github.com/EricFromCanada
354 [Kurt Emch]: https://github.com/kemch
355 [Poren Chiang]: https://github.com/rschiang
356 [Kelley van Evert]: https://github.com/kelleyvanevert
357
358 New style themes:
359
360 - Monokai Sublime by [noformnocontent][]
361 - Railscasts by [Damien White][]
362 - Obsidian by [Alexander Marenin][]
363 - Docco by [Simon Madine][]
364 - Mono Blue by [Ivan Sagalaev][] (uses a single color hue for everything)
365 - Foundation by [Dan Allen][]
366
367 [noformnocontent]: http://nn.mit-license.org/
368 [Damien White]: https://github.com/visoft
369 [Alexander Marenin]: https://github.com/ioncreature
370 [Simon Madine]: https://github.com/thingsinjars
371 [Ivan Sagalaev]: https://github.com/isagalaev
372
373 Other notable changes:
374
375 - Corrected many corner cases in CSS.
376 - Dropped Python 2 version of the build tool.
377 - Implemented building for the AMD format.
378 - Updated Rust keywords (thanks to [Dmitry Medvinsky][]).
379 - Literal regexes can now be used in language definitions.
380 - CoffeeScript highlighting is now significantly more robust and rich due to
381 input from [Cédric Néhémie][].
382
383 [Dmitry Medvinsky]: https://github.com/dmedvinsky
384 [Cédric Néhémie]: https://github.com/abe33
385
386
387 ## Version 7.3
388
389 - Since this version highlight.js no longer works in IE version 8 and older.
390 It's made it possible to reduce the library size and dramatically improve code
391 readability and made it easier to maintain. Time to go forward!
392
393 - New languages: AppleScript (by [Nathan Grigg][ng] and [Dr. Drang][dd]) and
394 Brainfuck (by [Evgeny Stepanischev][bolk]).
395
396 - Improvements to existing languages:
397
398 - interpreter prompt in Python (`>>>` and `...`)
399 - @-properties and classes in CoffeeScript
400 - E4X in JavaScript (by [Oleg Efimov][oe])
401 - new keywords in Perl (by [Kirk Kimmel][kk])
402 - big Ruby syntax update (by [Vasily Polovnyov][vast])
403 - small fixes in Bash
404
405 - Also Oleg Efimov did a great job of moving all the docs for language and style
406 developers and contributors from the old wiki under the source code in the
407 "docs" directory. Now these docs are nicely presented at
408 <http://highlightjs.readthedocs.org/>.
409
410 [ng]: https://github.com/nathan11g
411 [dd]: https://github.com/drdrang
412 [bolk]: https://github.com/bolknote
413 [oe]: https://github.com/Sannis
414 [kk]: https://github.com/kimmel
415 [vast]: https://github.com/vast
416
417
418 ## Version 7.2
419
420 A regular bug-fix release without any significant new features. Enjoy!
421
422
423 ## Version 7.1
424
425 A Summer crop:
426
427 - [Marc Fornos][mf] made the definition for Clojure along with the matching
428 style Rainbow (which, of course, works for other languages too).
429 - CoffeeScript support continues to improve getting support for regular
430 expressions.
431 - Yoshihide Jimbo ported to highlight.js [five Tomorrow styles][tm] from the
432 [project by Chris Kempson][tm0].
433 - Thanks to [Casey Duncun][cd] the library can now be built in the popular
434 [AMD format][amd].
435 - And last but not least, we've got a fair number of correctness and consistency
436 fixes, including a pretty significant refactoring of Ruby.
437
438 [mf]: https://github.com/mfornos
439 [tm]: http://jmblog.github.com/color-themes-for-highlightjs/
440 [tm0]: https://github.com/ChrisKempson/Tomorrow-Theme
441 [cd]: https://github.com/caseman
442 [amd]: http://requirejs.org/docs/whyamd.html
443
444
445 ## Version 7.0
446
447 The reason for the new major version update is a global change of keyword syntax
448 which resulted in the library getting smaller once again. For example, the
449 hosted build is 2K less than at the previous version while supporting two new
450 languages.
451
452 Notable changes:
453
454 - The library now works not only in a browser but also with [node.js][]. It is
455 installable with `npm install highlight.js`. [API][] docs are available on our
456 wiki.
457
458 - The new unique feature (apparently) among syntax highlighters is highlighting
459 *HTTP* headers and an arbitrary language in the request body. The most useful
460 languages here are *XML* and *JSON* both of which highlight.js does support.
461 Here's [the detailed post][p] about the feature.
462
463 - Two new style themes: a dark "south" *[Pojoaque][]* by Jason Tate and an
464 emulation of*XCode* IDE by [Angel Olloqui][ao].
465
466 - Three new languages: *D* by [Aleksandar Ružičić][ar], *R* by [Joe Cheng][jc]
467 and *GLSL* by [Sergey Tikhomirov][st].
468
469 - *Nginx* syntax has become a million times smaller and more universal thanks to
470 remaking it in a more generic manner that doesn't require listing all the
471 directives in the known universe.
472
473 - Function titles are now highlighted in *PHP*.
474
475 - *Haskell* and *VHDL* were significantly reworked to be more rich and correct
476 by their respective maintainers [Jeremy Hull][sr] and [Igor Kalnitsky][ik].
477
478 And last but not least, many bugs have been fixed around correctness and
479 language detection.
480
481 Overall highlight.js currently supports 51 languages and 20 style themes.
482
483 [node.js]: http://nodejs.org/
484 [api]: http://softwaremaniacs.org/wiki/doku.php/highlight.js:api
485 [p]: http://softwaremaniacs.org/blog/2012/05/10/http-and-json-in-highlight-js/en /
486 [pojoaque]: http://web-cms-designs.com/ftopict-10-pojoaque-style-for-highlight-j s-code-highlighter.html
487 [ao]: https://github.com/angelolloqui
488 [ar]: https://github.com/raleksandar
489 [jc]: https://github.com/jcheng5
490 [st]: https://github.com/tikhomirov
491 [sr]: https://github.com/sourrust
492 [ik]: https://github.com/ikalnitsky
493
494
495 ## Version 6.2
496
497 A lot of things happened in highlight.js since the last version! We've got nine
498 new contributors, the discussion group came alive, and the main branch on GitHub
499 now counts more than 350 followers. Here are most significant results coming
500 from all this activity:
501
502 - 5 (five!) new languages: Rust, ActionScript, CoffeeScript, MatLab and
503 experimental support for markdown. Thanks go to [Andrey Vlasovskikh][av],
504 [Alexander Myadzel][am], [Dmytrii Nagirniak][dn], [Oleg Efimov][oe], [Denis
505 Bardadym][db] and [John Crepezzi][jc].
506
507 - 2 new style themes: Monokai by [Luigi Maselli][lm] and stylistic imitation of
508 another well-known highlighter Google Code Prettify by [Aahan Krish][ak].
509
510 - A vast number of [correctness fixes and code refactorings][log], mostly made
511 by [Oleg Efimov][oe] and [Evgeny Stepanischev][es].
512
513 [av]: https://github.com/vlasovskikh
514 [am]: https://github.com/myadzel
515 [dn]: https://github.com/dnagir
516 [oe]: https://github.com/Sannis
517 [db]: https://github.com/btd
518 [jc]: https://github.com/seejohnrun
519 [lm]: http://grigio.org/
520 [ak]: https://github.com/geekpanth3r
521 [es]: https://github.com/bolknote
522 [log]: https://github.com/isagalaev/highlight.js/commits/
523
524
525 ## Version 6.1 — Solarized
526
527 [Jeremy Hull][jh] has implemented my dream feature — a port of [Solarized][]
528 style theme famous for being based on the intricate color theory to achieve
529 correct contrast and color perception. It is now available for highlight.js in
530 both variants — light and dark.
531
532 This version also adds a new original style Arta. Its author pumbur maintains a
533 [heavily modified fork of highlight.js][pb] on GitHub.
534
535 [jh]: https://github.com/sourrust
536 [solarized]: http://ethanschoonover.com/solarized
537 [pb]: https://github.com/pumbur/highlight.js
538
539
540 ## Version 6.0
541
542 New major version of the highlighter has been built on a significantly
543 refactored syntax. Due to this it's even smaller than the previous one while
544 supporting more languages!
545
546 New languages are:
547
548 - Haskell by [Jeremy Hull][sourrust]
549 - Erlang in two varieties — module and REPL — made collectively by [Nikolay
550 Zakharov][desh], [Dmitry Kovega][arhibot] and [Sergey Ignatov][ignatov]
551 - Objective C by [Valerii Hiora][vhbit]
552 - Vala by [Antono Vasiljev][antono]
553 - Go by [Stephan Kountso][steplg]
554
555 [sourrust]: https://github.com/sourrust
556 [desh]: http://desh.su/
557 [arhibot]: https://github.com/arhibot
558 [ignatov]: https://github.com/ignatov
559 [vhbit]: https://github.com/vhbit
560 [antono]: https://github.com/antono
561 [steplg]: https://github.com/steplg
562
563 Also this version is marginally faster and fixes a number of small long-standing
564 bugs.
565
566 Developer overview of the new language syntax is available in a [blog post about
567 recent beta release][beta].
568
569 [beta]: http://softwaremaniacs.org/blog/2011/04/25/highlight-js-60-beta/en/
570
571 P.S. New version is not yet available on a Yandex CDN, so for now you have to
572 download [your own copy][d].
573
574 [d]: /soft/highlight/en/download/
575
576
577 ## Version 5.14
578
579 Fixed bugs in HTML/XML detection and relevance introduced in previous
580 refactoring.
581
582 Also test.html now shows the second best result of language detection by
583 relevance.
584
585
586 ## Version 5.13
587
588 Past weekend began with a couple of simple additions for existing languages but
589 ended up in a big code refactoring bringing along nice improvements for language
590 developers.
591
592 ### For users
593
594 - Description of C++ has got new keywords from the upcoming [C++ 0x][] standard.
595 - Description of HTML has got new tags from [HTML 5][].
596 - CSS-styles have been unified to use consistent padding and also have lost
597 pop-outs with names of detected languages.
598 - [Igor Kalnitsky][ik] has sent two new language descriptions: CMake & VHDL.
599
600 This makes total number of languages supported by highlight.js to reach 35.
601
602 Bug fixes:
603
604 - Custom classes on `<pre>` tags are not being overridden anymore
605 - More correct highlighting of code blocks inside non-`<pre>` containers:
606 highlighter now doesn't insist on replacing them with its own container and
607 just replaces the contents.
608 - Small fixes in browser compatibility and heuristics.
609
610 [c++ 0x]: http://ru.wikipedia.org/wiki/C%2B%2B0x
611 [html 5]: http://en.wikipedia.org/wiki/HTML5
612 [ik]: http://kalnitsky.org.ua/
613
614 ### For developers
615
616 The most significant change is the ability to include language submodes right
617 under `contains` instead of defining explicit named submodes in the main array:
618
619 contains: [
620 'string',
621 'number',
622 {begin: '\\n', end: hljs.IMMEDIATE_RE}
623 ]
624
625 This is useful for auxiliary modes needed only in one place to define parsing.
626 Note that such modes often don't have `className` and hence won't generate a
627 separate `<span>` in the resulting markup. This is similar in effect to
628 `noMarkup: true`. All existing languages have been refactored accordingly.
629
630 Test file test.html has at last become a real test. Now it not only puts the
631 detected language name under the code snippet but also tests if it matches the
632 expected one. Test summary is displayed right above all language snippets.
633
634
635 ## CDN
636
637 Fine people at [Yandex][] agreed to host highlight.js on their big fast servers.
638 [Link up][l]!
639
640 [yandex]: http://yandex.com/
641 [l]: http://softwaremaniacs.org/soft/highlight/en/download/
642
643
644 ## Version 5.10 — "Paris".
645
646 Though I'm on a vacation in Paris, I decided to release a new version with a
647 couple of small fixes:
648
649 - Tomas Vitvar discovered that TAB replacement doesn't always work when used
650 with custom markup in code
651 - SQL parsing is even more rigid now and doesn't step over SmallTalk in tests
652
653
654 ## Version 5.9
655
656 A long-awaited version is finally released.
657
658 New languages:
659
660 - Andrew Fedorov made a definition for Lua
661 - a long-time highlight.js contributor [Peter Leonov][pl] made a definition for
662 Nginx config
663 - [Vladimir Moskva][vm] made a definition for TeX
664
665 [pl]: http://kung-fu-tzu.ru/
666 [vm]: http://fulc.ru/
667
668 Fixes for existing languages:
669
670 - [Loren Segal][ls] reworked the Ruby definition and added highlighting for
671 [YARD][] inline documentation
672 - the definition of SQL has become more solid and now it shouldn't be overly
673 greedy when it comes to language detection
674
675 [ls]: http://gnuu.org/
676 [yard]: http://yardoc.org/
677
678 The highlighter has become more usable as a library allowing to do highlighting
679 from initialization code of JS frameworks and in ajax methods (see.
680 readme.eng.txt).
681
682 Also this version drops support for the [WordPress][wp] plugin. Everyone is
683 welcome to [pick up its maintenance][p] if needed.
684
685 [wp]: http://wordpress.org/
686 [p]: http://bazaar.launchpad.net/~isagalaev/+junk/highlight/annotate/342/src/wp_ highlight.js.php
687
688
689 ## Version 5.8
690
691 - Jan Berkel has contributed a definition for Scala. +1 to hotness!
692 - All CSS-styles are rewritten to work only inside `<pre>` tags to avoid
693 conflicts with host site styles.
694
695
696 ## Version 5.7.
697
698 Fixed escaping of quotes in VBScript strings.
699
700
701 ## Version 5.5
702
703 This version brings a small change: now .ini-files allow digits, underscores and
704 square brackets in key names.
705
706
707 ## Version 5.4
708
709 Fixed small but upsetting bug in the packer which caused incorrect highlighting
710 of explicitly specified languages. Thanks to Andrew Fedorov for precise
711 diagnostics!
712
713
714 ## Version 5.3
715
716 The version to fulfil old promises.
717
718 The most significant change is that highlight.js now preserves custom user
719 markup in code along with its own highlighting markup. This means that now it's
720 possible to use, say, links in code. Thanks to [Vladimir Dolzhenko][vd] for the
721 [initial proposal][1] and for making a proof-of-concept patch.
722
723 Also in this version:
724
725 - [Vasily Polovnyov][vp] has sent a GitHub-like style and has implemented
726 support for CSS @-rules and Ruby symbols.
727 - Yura Zaripov has sent two styles: Brown Paper and School Book.
728 - Oleg Volchkov has sent a definition for [Parser 3][p3].
729
730 [1]: http://softwaremaniacs.org/forum/highlightjs/6612/
731 [p3]: http://www.parser.ru/
732 [vp]: http://vasily.polovnyov.ru/
733 [vd]: http://dolzhenko.blogspot.com/
734
735
736 ## Version 5.2
737
738 - at last it's possible to replace indentation TABs with something sensible
739 (e.g. 2 or 4 spaces)
740 - new keywords and built-ins for 1C by Sergey Baranov
741 - a couple of small fixes to Apache highlighting
742
743
744 ## Version 5.1
745
746 This is one of those nice version consisting entirely of new and shiny
747 contributions!
748
749 - [Vladimir Ermakov][vooon] created highlighting for AVR Assembler
750 - [Ruslan Keba][rukeba] created highlighting for Apache config file. Also his
751 original visual style for it is now available for all highlight.js languages
752 under the name "Magula".
753 - [Shuen-Huei Guan][drake] (aka Drake) sent new keywords for RenderMan
754 languages. Also thanks go to [Konstantin Evdokimenko][ke] for his advice on
755 the matter.
756
757 [vooon]: http://vehq.ru/about/
758 [rukeba]: http://rukeba.com/
759 [drake]: http://drakeguan.org/
760 [ke]: http://k-evdokimenko.moikrug.ru/
761
762
763 ## Version 5.0
764
765 The main change in the new major version of highlight.js is a mechanism for
766 packing several languages along with the library itself into a single compressed
767 file. Now sites using several languages will load considerably faster because
768 the library won't dynamically include additional files while loading.
769
770 Also this version fixes a long-standing bug with Javascript highlighting that
771 couldn't distinguish between regular expressions and division operations.
772
773 And as usually there were a couple of minor correctness fixes.
774
775 Great thanks to all contributors! Keep using highlight.js.
776
777
778 ## Version 4.3
779
780 This version comes with two contributions from [Jason Diamond][jd]:
781
782 - language definition for C# (yes! it was a long-missed thing!)
783 - Visual Studio-like highlighting style
784
785 Plus there are a couple of minor bug fixes for parsing HTML and XML attributes.
786
787 [jd]: http://jason.diamond.name/weblog/
788
789
790 ## Version 4.2
791
792 The biggest news is highlighting for Lisp, courtesy of Vasily Polovnyov. It's
793 somewhat experimental meaning that for highlighting "keywords" it doesn't use
794 any pre-defined set of a Lisp dialect. Instead it tries to highlight first word
795 in parentheses wherever it makes sense. I'd like to ask people programming in
796 Lisp to confirm if it's a good idea and send feedback to [the forum][f].
797
798 Other changes:
799
800 - Smalltalk was excluded from DEFAULT_LANGUAGES to save traffic
801 - [Vladimir Epifanov][voldmar] has implemented javascript style switcher for
802 test.html
803 - comments now allowed inside Ruby function definition
804 - [MEL][] language from [Shuen-Huei Guan][drake]
805 - whitespace now allowed between `<pre>` and `<code>`
806 - better auto-detection of C++ and PHP
807 - HTML allows embedded VBScript (`<% .. %>`)
808
809 [f]: http://softwaremaniacs.org/forum/highlightjs/
810 [voldmar]: http://voldmar.ya.ru/
811 [mel]: http://en.wikipedia.org/wiki/Maya_Embedded_Language
812 [drake]: http://drakeguan.org/
813
814
815 ## Version 4.1
816
817 Languages:
818
819 - Bash from Vah
820 - DOS bat-files from Alexander Makarov (Sam)
821 - Diff files from Vasily Polovnyov
822 - Ini files from myself though initial idea was from Sam
823
824 Styles:
825
826 - Zenburn from Vladimir Epifanov, this is an imitation of a
827 [well-known theme for Vim][zenburn].
828 - Ascetic from myself, as a realization of ideals of non-flashy highlighting:
829 just one color in only three gradations :-)
830
831 In other news. [One small bug][bug] was fixed, built-in keywords were added for
832 Python and C++ which improved auto-detection for the latter (it was shame that
833 [my wife's blog][alenacpp] had issues with it from time to time). And lastly
834 thanks go to Sam for getting rid of my stylistic comments in code that were
835 getting in the way of [JSMin][].
836
837 [zenburn]: http://en.wikipedia.org/wiki/Zenburn
838 [alenacpp]: http://alenacpp.blogspot.com/
839 [bug]: http://softwaremaniacs.org/forum/viewtopic.php?id=1823
840 [jsmin]: http://code.google.com/p/jsmin-php/
841
842
843 ## Version 4.0
844
845 New major version is a result of vast refactoring and of many contributions.
846
847 Visible new features:
848
849 - Highlighting of embedded languages. Currently is implemented highlighting of
850 Javascript and CSS inside HTML.
851 - Bundled 5 ready-made style themes!
852
853 Invisible new features:
854
855 - Highlight.js no longer pollutes global namespace. Only one object and one
856 function for backward compatibility.
857 - Performance is further increased by about 15%.
858
859 Changing of a major version number caused by a new format of language definition
860 files. If you use some third-party language files they should be updated.
861
862
863 ## Version 3.5
864
865 A very nice version in my opinion fixing a number of small bugs and slightly
866 increased speed in a couple of corner cases. Thanks to everybody who reports
867 bugs in he [forum][f] and by email!
868
869 There is also a new language — XML. A custom XML formerly was detected as HTML
870 and didn't highlight custom tags. In this version I tried to make custom XML to
871 be detected and highlighted by its own rules. Which by the way include such
872 things as CDATA sections and processing instructions (`<? ... ?>`).
873
874 [f]: http://softwaremaniacs.org/forum/viewforum.php?id=6
875
876
877 ## Version 3.3
878
879 [Vladimir Gubarkov][xonix] has provided an interesting and useful addition.
880 File export.html contains a little program that shows and allows to copy and
881 paste an HTML code generated by the highlighter for any code snippet. This can
882 be useful in situations when one can't use the script itself on a site.
883
884
885 [xonix]: http://xonixx.blogspot.com/
886
887
888 ## Version 3.2 consists completely of contributions:
889
890 - Vladimir Gubarkov has described SmallTalk
891 - Yuri Ivanov has described 1C
892 - Peter Leonov has packaged the highlighter as a Firefox extension
893 - Vladimir Ermakov has compiled a mod for phpBB
894
895 Many thanks to you all!
896
897
898 ## Version 3.1
899
900 Three new languages are available: Django templates, SQL and Axapta. The latter
901 two are sent by [Dmitri Roudakov][1]. However I've almost entirely rewrote an
902 SQL definition but I'd never started it be it from the ground up :-)
903
904 The engine itself has got a long awaited feature of grouping keywords
905 ("keyword", "built-in function", "literal"). No more hacks!
906
907 [1]: http://roudakov.ru/
908
909
910 ## Version 3.0
911
912 It is major mainly because now highlight.js has grown large and has become
913 modular. Now when you pass it a list of languages to highlight it will
914 dynamically load into a browser only those languages.
915
916 Also:
917
918 - Konstantin Evdokimenko of [RibKit][] project has created a highlighting for
919 RenderMan Shading Language and RenderMan Interface Bytestream. Yay for more
920 languages!
921 - Heuristics for C++ and HTML got better.
922 - I've implemented (at last) a correct handling of backslash escapes in C-like
923 languages.
924
925 There is also a small backwards incompatible change in the new version. The
926 function initHighlighting that was used to initialize highlighting instead of
927 initHighlightingOnLoad a long time ago no longer works. If you by chance still
928 use it — replace it with the new one.
929
930 [RibKit]: http://ribkit.sourceforge.net/
931
932
933 ## Version 2.9
934
935 Highlight.js is a parser, not just a couple of regular expressions. That said
936 I'm glad to announce that in the new version 2.9 has support for:
937
938 - in-string substitutions for Ruby -- `#{...}`
939 - strings from from numeric symbol codes (like #XX) for Delphi
940
941
942 ## Version 2.8
943
944 A maintenance release with more tuned heuristics. Fully backwards compatible.
945
946
947 ## Version 2.7
948
949 - Nikita Ledyaev presents highlighting for VBScript, yay!
950 - A couple of bugs with escaping in strings were fixed thanks to Mickle
951 - Ongoing tuning of heuristics
952
953 Fixed bugs were rather unpleasant so I encourage everyone to upgrade!
954
955
956 ## Version 2.4
957
958 - Peter Leonov provides another improved highlighting for Perl
959 - Javascript gets a new kind of keywords — "literals". These are the words
960 "true", "false" and "null"
961
962 Also highlight.js homepage now lists sites that use the library. Feel free to
963 add your site by [dropping me a message][mail] until I find the time to build a
964 submit form.
965
966 [mail]: mailto:Maniac@SoftwareManiacs.Org
967
968
969 ## Version 2.3
970
971 This version fixes IE breakage in previous version. My apologies to all who have
972 already downloaded that one!
973
974
975 ## Version 2.2
976
977 - added highlighting for Javascript
978 - at last fixed parsing of Delphi's escaped apostrophes in strings
979 - in Ruby fixed highlighting of keywords 'def' and 'class', same for 'sub' in
980 Perl
981
982
983 ## Version 2.0
984
985 - Ruby support by [Anton Kovalyov][ak]
986 - speed increased by orders of magnitude due to new way of parsing
987 - this same way allows now correct highlighting of keywords in some tricky
988 places (like keyword "End" at the end of Delphi classes)
989
990 [ak]: http://anton.kovalyov.net/
991
992
993 ## Version 1.0
994
995 Version 1.0 of javascript syntax highlighter is released!
996
997 It's the first version available with English description. Feel free to post
998 your comments and question to [highlight.js forum][forum]. And don't be afraid
999 if you find there some fancy Cyrillic letters -- it's for Russian users too :-)
1000
1001 [forum]: http://softwaremaniacs.org/forum/viewforum.php?id=6
OLDNEW
« no previous file with comments | « no previous file | highlight_js_8.3.0/LICENSE » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698