Prism Changelog
1.6 (2016-12-03)
New components
Updated components
- APL:
- AsciiDoc:
- Optimized block regexps to prevent struggling on large files. Fixes #1001. [
1a86d34
]
- Bash:
- CSS:
- CSS Extras:
- Match attribute inside selectors [
13fed76
]
- _Groovy__:
- Ini:
- JavaScript:
- _JSON:
- JSON: Fixed issues with properties and strings + added tests. Fix #1025 [
25a541d
]
- Markup:
- Allow for dots in Markup tag names, but not in HTML tags included in Textile. Fixes #888. [
31ea66b
]
- Make doctype case-insensitive (#1009) [
3dd7219
]
- NSIS:
- PHP:
- PowerShell:
- Puppet:
- Ruby:
- SCSS:
- Alias statement as keyword. Fix #246 [
fd09391
]
- Highlight variables inside selectors and properties. [
d6b5c2f
]
- Highlight parent selector [
8f5f1fa
]
- TypeScript:
- Add missing
from
keyword to typescript & set ts
as alias. (#1042) [cba78f3
]
New plugins
Updated plugins
- Autoloader:
- Updated documentation for Autoloader plugin [
b4f3423
]
- Download all grammars as a zip from Autoloader plugin page (#981) [
0d0a007
, 5c815d3
]
- Removed duplicated script on Autoloader plugin page [
9671996
]
- Don’t try to load “none” component. Fix #1000 [
f89b0b9
]
- WPD:
- Fix at-rule detection + don’t process if language is not handled [
2626728
]
Other changes
- Improvement to greedy-flag (#967) [
500121b
, 9893489
]
- Add setTimeout fallback for requestAnimationFrame. Fixes #987. (#988) [
c9bdcd3
]
- Added aria-hidden attributes on elements created by the Line Highlight and Line Numbers plugins. Fixes #574. [
e5587a7
]
- Don’t insert space before “>” when there is no attributes [
3dc8c9e
]
- Added missing hooks-related tests for AsciiDoc, Groovy, Handlebars, Markup, PHP and Smarty [
c1a0c1b
]
- Fix issue when using Line numbers plugin and Normalise whitespace plugin together with Handlebars, PHP or Smarty. Fix #1018, #997, #935. Revert #998. [
86aa3d2
]
- Optimized logo (#990) (#1002) [
f69e570
, 218fd25
]
- Remove unneeded prefixed CSS (#989) [
5e56833
]
- Optimize images (#1007) [
b2fa6d5
]
- Add yarn.lock to .gitignore (#1035) [
03ecf74
]
- Fix greedy flag bug. Fixes #1039 [
32cd99f
]
- Ruby: Fix test after #1023 [
b15d43b
]
- Ini: Fix test after #1047 [
25cdd3f
]
- Reduce risk of XSS (#1051) [
17e33bc
]
- env.code can be modified by before-sanity-check hook even when using language-none. Fix #1066 [
83bafbd
]
1.5.1 (2016-06-05)
Updated components
- Normalize Whitespace:
- Add class that disables the normalize whitespace plugin [
9385c54
]
- JavaScript Language:
- Rearrange the
string
and template-string
token in JavaScript [1158e46
]
- SQL Language:
- add delimeter and delimeters keywords to sql (#958) [
a9ef24e
]
- add AUTO_INCREMENT and DATE keywords to sql (#954) [
caea2af
]
- Diff Language:
Other changes
1.5.0 (2016-05-01)
New components
Updated components
- Keep Markup:
- Fix Keep Markup plugin incorrect highlighting (#880) [
24841ef
]
- Groovy Language:
- Fix double HTML-encoding bug in Groovy language [
24a0936
]
- Java Language:
- SAS Language:
- Add missing keywords for SAS (#922)
- YAML Language:
- fix hilighting of YAML keys on first line of code block (#943) [
f19db81
]
- C# Language:
- Support for generic methods in csharp [
6f75735
]
New plugins
Other changes
- Add JSPM support [
ad048ab
]
- update linear-gradient syntax from
left
to to right
[cd234dc
]
- Add after-property to allow ordering of plugins [
224b7a1
]
- Partial solution for the “Comment-like substrings”-problem [
2705c50
]
- Add property ‘aliasTitles’ to components.js [
54400fb
]
- Add before-highlightall hook [
70a8602
]
- Fix catastrophic backtracking regex issues in JavaScript [
ab65be2
]
1.4.1 (2016-02-03)
Other changes
- Fix DFS bug in Prism core [
b86c727
]
1.4.0 (2016-02-03)
New components
Updated components
- Show Language:
- Remove data-language attribute (#840) [
eb9a83c
]
- Allow custom label without a language mapping (#837) [
7e74aef
]
- JSX:
- File Highlight:
- Defer File Highlight until the full DOM has loaded. (#844) [
6f995ef
]
- Coy Theme:
- Show Invisibles:
- Ensure show-invisibles compat with autoloader (#874) [
c3cfb1f
]
- Add support for the space character for the show-invisibles plugin (#876) [
05442d3
]
New plugins
Other changes
- Use document.currentScript instead of document.getElementsByTagName() [
fa98743
]
- Add prefix for Firefox selection and move prefixed rule first [
6d54717
]
- No background for
<code>
in <pre>
[8c310bc
]
- Fixing to initial copyright year [
69cbf7a
]
- Simplify the “lang” regex [
417f54a
]
- Fix broken heading links [
a7f9e62
]
- Prevent infinite recursion in DFS [
02894e1
]
- Fix incorrect page title [
544b56f
]
- Link scss to webplatform wiki [
08d979a
]
- Revert white-space to normal when code is inline instead of in a pre [
1a971b5
]
1.3.0 (2015-10-26)
New components
Updated components
- C:
- Highlight directives in preprocessor lines (#801) [
ad316a3
]
- C#:
- F#:
- Highlight directives in preprocessor lines (#801) [
ad316a3
]
- JavaScript:
- Python:
- Highlight triple-quoted strings before comments. Fix #815 [
90fbf0b
]
New plugins
Other changes
- Increase mocha’s timeout [
f1c41db
]
- Prevent most errors in IE8. Fix #9 [
9652d75
]
- Add U.S. Web Design Standards on homepage. Fix #785 [
e10d48b
, 79ebbf8
, 2f7088d
]
- Added gulp task to autolink PRs and commits in changelog [
5ec4e4d
]
- Use child processes to run each set of tests, in order to deal with the memory leak in vm.runInNewContext() [
9a4b6fa
]
1.2.0 (2015-10-07)
New components
Updated components
- ASP.NET:
- Simplified pattern for
<script>
[29643f4
]
- Bash:
- CSS:
- Simplified pattern for
<style>
[29643f4
]
- JavaScript:
- Simplified pattern for
<script>
[29643f4
]
New plugins
Updated plugins
- Previewer: Color
- Add support for Sass variables [
3a1fb04
]
- Previewer: Easing
- Add support for Sass variables [
7c7ab4e
]
Other changes
- Test runner: Allow to run tests for only some languages [
5ade8a5
]
- Download page: Fixed wrong components order raising error in generated file (#797) [
7a6aed8
]
1.1.0 (2015-10-04)
New components
Updated components
- Bash:
- C:
- C-like:
- Add word boundary before class-name prefixes [
aa757f6
]
- Improved operator regex + add != and !== [
135ee9d
]
- Optimized string regexp [
792e35c
]
- F#:
- Fixed keywords containing exclamation mark [
09f2005
]
- Improved string pattern [
0101c89
]
- Insert preprocessor before keyword + don’t allow line feeds before # [
fdc9477
]
- Fixed numbers [
0aa0791
]
- Gherkin:
- Don’t allow spaces in tags [
48ff8b7
]
- Handle \r\n and \r + allow feature alone + don’t match blank td/th [
ce1ec3b
]
- Git:
- Go:
- Improved operator regexp + removed punctuation from it [
776ab90
]
- Haml:
- Combine both multiline-comment regexps + handle \r\n and \r [
f77b40b
]
- Handle \r\n and \r in filter regex [
bbe68ac
]
- Handlebars:
- Fix empty strings, add plus sign in exponential notation, improve block pattern and variable pattern [
c477f9a
]
- Properly escape special replacement patterns ($) in Handlebars, PHP and Smarty. Fix #772 [
895bf46
]
- Haskell:
- Removed useless backslashes and parentheses + handle \r\n and \r + simplify number regexp + fix operator regexp [
1cc8d8e
]
- HTTP:
- Fix indentation + Add multiline flag for more flexibility + Fix response status + Handle \r\n and \r [
aaa90f1
]
- Ini:
- Fix some regexps + remove unused flags [
53d5839
]
- Jade:
- Add todo list + remove single-line comment pattern + simplified most patterns with m flag + handle \r\n and \r [
a79e838
]
- Java:
- Fix number regexp + simplified number regexp and optimized operator regexp [
21e20b9
]
- JavaScript:
- JavaScript: Allow for all non-ASCII characters in function names. Fix #400 [
29e26dc
]
- JSX:
- Allow for one level of nesting in scripts (Fix #717) [
90c75d5
]
- Julia:
- Simplify comment regexp + improved number regexp + improved operator regexp [
bcac7d4
]
- Keyman:
- Move header statements above keywords [
23a444c
]
- LaTeX:
- Less:
- Remove useless part in property regexp [
80d8260
]
- LOLCODE:
- Removed useless parentheses [
8147c9b
]
- Makefile:
- Add known failures in example [
e0f8984
]
- Handle \r\n in comments and strings + fix “-include” keyword
- Markup:
- Simplify patterns + handle \r\n and \r [
4c551e8
]
- Don’t allow = to appear in tag name [
85d8a55
]
- Don’t allow dot inside tag name [
283691e
]
- MATLAB:
- Simplify string pattern to remove lookbehind [
a3cbecc
]
- NASM:
- Converted indents to tabs, removed uneeded escapes, added lookbehinds [
a92e4bd
]
- NSIS:
- Objective-C:
- Simplified regexps + fix strings + handle \r [
1d33147
]
- Fix operator regexp [
e9d382e
]
- Pascal:
- Perl:
- Simplified regexps + Made most string and regexp patterns multi-line + Added support for regexp’s n flag + Added missing operators [
71b00cc
]
- PHP:
- Simplified patterns [
f9d9452
]
- Properly escape special replacement patterns ($) in Handlebars, PHP and Smarty. Fix #772 [
895bf46
]
- PHP Extras:
- Fix $this regexp + improve global regexp [
781fdad
]
- PowerShell:
- Update definitions for command/alias/operators [
14da55c
]
- Python:
- Added async/await and @ operator (#656) [
7f1ae75
]
- Added ‘self’ keyword and support for class names (#677) [
d9d4ab2
]
- Simplified regexps + don’t capture where unneeded + fixed operators [
530f5f0
]
- R:
- Fixed and simplified patterns [
c20c3ec
]
- reST:
- Simplified some patterns, fixed others, prevented blank comments to match, moved list-bullet down to prevent breaking quotes [
e6c6b85
]
- Rip:
- Fixed some regexp + moved down numbers [
1093f7d
]
- Ruby:
- Code cleaning, handle \r\n and \r, fix some regexps [
dd4989f
]
- Add % notations for strings and regexps. Fix #590 [
2d37800
]
- Rust:
- Simplified patterns and fixed operators [
6c8494f
]
- SAS:
- Simplified datalines and optimized operator patterns [
6ebb96f
]
- Sass:
- Add missing require in components [
35b8c50
]
- Fix comments, operators and selectors and simplified patterns [
28759d0
]
- Highlight “-“ as operator only if surrounded by spaces, in order to not break hyphenated values (e.g. “ease-in-out”) [
b2763e7
]
- Scala:
- Scheme:
- Add missing lookbehind on number pattern. Fix #702 [
3120ff7
]
- Fixes and simplifications [
068704a
]
- Don’t match content of symbols starting with a parenthesis [
fa7df08
]
- Scss:
- Simplified patterns + fixed operators + don’t match empty selectors [
672c167
]
- Smalltalk:
- Smarty:
- Optimized regexps + fixed punctuation and operators [
1446700
]
- Properly escape special replacement patterns ($) in Handlebars, PHP and Smarty. Fix #772 [
895bf46
]
- SQL:
- Simplified regexp + fixed keywords and operators + add CHARSET keyword [
d49fec0
]
- Stylus:
- Rewrote the component entirely [
7729728
]
- Swift:
- Optimized keywords lists and removed duplicates [
936e429
]
- Add support for string interpolation. Fix #448 [
89cd5d0
]
- Twig:
- Prevent “other” pattern from matching blank strings [
cae2cef
]
- Optimized regexps + fixed operators + added missing operators/keywords [
2d8271f
]
- VHDL:
- Move operator overloading before strings, don’t capture if not needed, handle \r\n and \r, fix numbers [
4533f17
]
- Wiki markup:
- Fixed emphasis + merged some url patterns + added TODOs [
8cf9e6a
]
- YAML:
- Handled \r\n and \r, simplified some patterns, fixed “—” [
9e33e0a
]
New plugins
Updated plugins
- Autolinker:
- Don’t process all grammars on load, process each one in before-highlight. Should fix #760 [
a572495
]
- Line Highlight:
- Line Numbers:
- Run in
complete
hook [3f4d918
]
- Don’t run if already exists [
c89bbdb
]
- Don’t run if block is empty. Fix #669 [
ee463e8
]
- Correct calculation for number of lines (fix #385) [
14f3f80
]
- Fix computation of line numbers for single-line code blocks. Fix #721 [
02b220e
]
- Fixing word wrap on long code lines [
56b3d29
]
- Fixing coy theme + line numbers plugin overflowing on long blocks of text (#762) [
a0127eb
]
- Show Language:
- Add gulp task to build languages map in Show language plugin (Fix #671) [
39bd827
]
- Add reset styles to prevent bug in Coy theme (#703) [
08dd500
]
Other changes
- Fixed link to David Peach article (#647) [
3f679f8
]
- Added
complete
hook, which runs even when no grammar is found [e58b6c0
, fd54995
]
- Added test suite runner (#588) [
956cd85
]
- Added tests for every components
- Added
.gitattributes
to prevent line ending changes in test files [45ca8c8
]
- Split plugins into 3 columns on Download page [
a88936a
]
- Removed comment in components.js to make it easier to parse as JSON (#679) [
2cb1326
]
- Updated README.md [
1388256
]
- Updated documentation since the example was not relevant any more [
80aedb2
]
- Fixed inline style for Coy theme [
52829b3
]
- Prevent errors in nodeJS (#754) [
9f5c93c
, 0356c58
]
- Explicitly make the Worker close itself after highlighting, so that users have control on this behaviour when directly using Prism inside a Worker. Fix #492 [
e42a228
]
- Added some language aliases: js for javascript, xml, html, mathml and svg for markup [
2f9fe1e
]
- Download page: Add a “Select all” checkbox (#561) [
9a9020b
]
- Download page: Don’t add semicolon unless needed in generated code. Fix #273 [
5a5eec5
]
- Add language counter on homepage [
889cda5
]
- Improve performance by doing more work in the worker [
1316abc
]
- Replace Typeplate with SitePoint on homepage. Fix #774 [
0c54308
]
- Added basic
.editorconfig
[c48f55d
]
1.0.1 (2015-07-26)
New components
Updated components
- ActionScript:
- Fix ! operator and add ++ and – as whole operators [
6bf0794
]
- Fix XML highlighting [
90257b0
]
- Update examples to add inline XML [
2c1626a
, 3987711
]
- Apache Configuration:
- Don’t include the spaces in directive-inline [
e87efd8
]
- AppleScript:
- Allow one level of nesting in block comments [
65894c5
]
- Removed duplicates between operators and keywords [
1ec5a81
]
- Removed duplicates between keywords and classes [
e8d09f6
]
- Move numbers up so they are not broken by operator pattern [
66dac31
]
- ASP.NET:
- Prevent Markup tags from breaking ASP tags + fix MasterType directive [
1f0a336
]
- AutoHotkey:
- Allow tags (labels) to be highlighted at the end of the code [
0a1fc4b
]
- Match all operators + add comma to punctuation [
f0ccb1b
]
- Removed duplicates in keywords lists [
fe0a068
]
- Bash:
- Simplify comment regex [
2700981
]
- Removed duplicates in keywords + removed unneeded parentheses [
903b8a4
]
- C:
- Removed string pattern (inherited from C-like) [
dcce1a7
]
- Better support for macro statements [
4868635
]
- C#:
- C++:
- Removed delete[] and new[] broken keywords [
42fbeef
]
- C-like:
- Removed unused ‘ignore’ pattern [
b6535dd
]
- Use look-ahead instead of inside to match functions [
d4194c9
]
- CoffeeScript:
- Prevent strings from ending with a backslash [
cb6b824
]
- CSS:
- Highlight parentheses as punctuation [
cd0273e
]
- Improved highlighting of at-rules [
e254088
]
- Improved URL and strings [
901812c
]
- Selector regexp should not include last spaces before brace [
f2e2718
]
- Handle \r\n [
15760e1
]
- Eiffel:
- Fix string patterns order + fix /= operator [
7d1b8d7
]
- Erlang:
- Fixed quoted functions, quoted atoms, variables and <= operator [
fa286aa
]
- Fortran:
- Improved pattern for comments inside strings [
40ae215
]
- Fixed order in keyword pattern [
8a6d32d
]
- Handlebars:
- JavaScript:
- Added support for ‘y’ and ‘u’ ES6 JavaScript regex flags (#596) [
5d99957
]
- Added support for missing ES6 keywords in JavaScript (#596) [
ca68b87
]
- Added
async
and await
keywords (#575) [5458cec
]
- Added support for Template strings + interpolation [
04f72b1
]
- Added support for octal and binary numbers (#597) [
a8aa058
]
- Improve regex performance of C-like strings and JS regexps [
476cbf4
]
- Markup:
- Allow non-ASCII chars in tag names and attributes (fix #585) [
52fd55e
]
- Optimized tag’s regexp so that it stops crashing on large unclosed tags [
75452ba
]
- Highlight single quotes in attr-value as punctuation [
1ebcb8e
]
- Doctype and prolog can be multi-line [
c19a238
]
- Python:
- Added highlighting for function declaration (#601) [
a88aae8
]
- Fixed wrong highlighting of variables named a, b, c… f (#601) [
a88aae8
]
- Ruby:
- Added support for string interpolation [
c36b123
]
- Scss:
- Fixed media queries highlighting [
bf8e032
]
- Improved highlighting inside at-rules [
eef4248
]
- Match placeholders inside selectors (fix #238) [
4e42e26
]
- Swift:
Updated plugins
- File Highlight:
- Allow to specify the highlighting language. Fix #607 [
8030db9
]
- Line Highlight:
Other changes
- Removed moot
version
property from bower.json
(#594) [4693499
]
- Added repository to
bower.json
(#600) [8e5ebcc
]
- Added
.DS_Store
to .gitignore
[1707e4e
]
- Improve test drive page usability. Fix #591 [
fe60858
]
- Fixed prism-core and prism-file-highlight to prevent errors in IE8 [
5f133c8
]
- Add Ubuntu Mono font to font stack [
ed9d7e3
]
1.0.0 (2015-05-23)
- First release
- Supported languages:
- ActionScript
- Apache Configuration
- AppleScript
- ASP.NET (C#)
- AutoHotkey
- Bash
- C
- C#
- C++
- C-like
- CoffeeScript
- CSS
- CSS Extras
- Dart
- Eiffel
- Erlang
- F#
- Fortran
- Gherkin
- Git
- Go
- Groovy
- Haml
- Handlebars
- Haskell
- HTTP
- Ini
- Jade
- Java
- JavaScript
- Julia
- LaTeX
- Less
- LOLCODE
- Markdown
- Markup
- MATLAB
- NASM
- NSIS
- Objective-C
- Pascal
- Perl
- PHP
- PHP Extras
- PowerShell
- Python
- R
- React JSX
- reST
- Rip
- Ruby
- Rust
- SAS
- Sass (Scss)
- Scala
- Scheme
- Smalltalk
- Smarty
- SQL
- Stylus
- Swift
- Twig
- TypeScript
- Wiki markup
- YAML
- Plugins:
- Autolinker
- File Highlight
- Highlight Keywords
- Line Highlight
- Line Numbers
- Show Invisibles
- Show Language
- WebPlatform Docs