Skip to content

Releases: Thom1729/Sublime-JS-Custom

v3.0.0

20 Apr 16:06
Compare
Choose a tag to compare

v3.0.0

Designed for Sublime Text 4

Version 3 takes advantage of Sublime Text 4's new features to provide significantly improved highlighting. The most visible change is that arrow function argument lists should always be correctly detected, but there are many more fixes and improvements.

This release still uses the 3.3 plugin runtime. Most likely, a future minor version will switch to the 3.8 runtime.

Greatly improved TypeScript support

Version 3 provides the same high-quality TypeScript support as Sublime 4, which is a great improvement over the beta-quality support from version 2.4. The only currently missing feature should be arrow function type parameter detection, which is not yet implemented in core.

Restructured documentation

The docs have been rearranged to make the readme less monolithic:

  • A new “recipes” page provides example configurations for common use cases.
  • Complete documentation for syntax configuration options has been moved to a separate page.
  • Settings other than syntax configuration options are now documented in the default settings themselves.

Other internal changes

  • JS Custom is now “downstream” of the core JSX and TypeScript syntax extensions, just like the base JavaScript syntax itself. Improvements to JSX and TypeScript should be made to the core packages.
  • Change the structure of syntax extensions to be similar to ST4's syntax extensions.
  • Add a new internal js_custom_rebase command to make it more convenient to rebase from new versions of the core JavaScript package.
  • Add comprehensive type checking with MyPy.

v3.0.2

21 Apr 15:00
Compare
Choose a tag to compare

Emergency fix for v3 going out for ST3. Once the current problem is resolved, I'll put out a 3.1 tag for ST4.

v2.4.1: Merge pull request #99 from Thom1729/jsx-close-tag-selector

16 Jul 20:55
7748c99
Compare
Choose a tag to compare

Bug fixes

The following now work for files with the scopes source.ts and source.tsx:

  • The core toggle_comment command.
  • The jsx_close_tag command.

v3.0.3

21 Apr 16:32
7748c99
Compare
Choose a tag to compare

Fix JSX regression.

v3.0.5

07 May 02:46
7748c99
Compare
Choose a tag to compare

Use correct branch.

v2.4.0

13 Jul 19:17
Compare
Choose a tag to compare

JS Custom now supports TypeScript!

TypeScript support is currently beta-quality, meaning that it should work well for most people but that I expect there to be bugs. If you find a bug, please help out JS Custom by reporting it on the issue tracker at https://github.com/Thom1729/Sublime-JS-Custom/issues.

Known issues at present:

  • Type arguments in method calls and template strings are not implemented.
  • Arrow function type parameters are not implemented.
  • Arrow function detection is iffy.
  • TypeScript 4.0 features are not yet implemented.
  • Some features like the built-in toggle_comment command do not work if you specify a custom scope, including source.ts.

The next major release will require Sublime 4 (TODO: fix wording)

Sublime Text 4 offers major improvements to the syntax highlighting engine that will allow JS Custom to provide more accurate highlighting with fewer corner cases. JS Custom version 3.0 will require Sublime Text 4 and will not run on older versions. The 2.4 release will still be available for Sublime 3, but it will not receive new feature updates.

The known TypeScript issues listed above will definitely be fixed for 3.0, but they may not be completely fixed in 2.4.

Other changes.

  • When the rebuild_syntaxes command deletes a compiled syntax because the configuration doesn't exist anymore, it will find any views using that syntax and reassign them to a default to avoid error messages. This is configurable via the reassign_when_deleting setting.
  • When rebuild_syntaxes is run with an explicit versions argument, it will never delete syntaxes that are not specified in versions.

v2.4.0-beta.4

24 Jun 21:45
Compare
Choose a tag to compare
v2.4.0-beta.4 Pre-release
Pre-release
  • Add default configurations for TypeScript, with and without JSX.
  • Fix a bug where JS Custom would try to rebuild a deleted configuration, causing an error.
  • When rebuild_js_custom_syntaxes is called with a versions argument, don't delete syntaxes that don't match versions.
  • Add separate tests for TypeScript with and without JSX.

v2.4.0-beta.3

24 Jun 18:04
Compare
Choose a tag to compare
v2.4.0-beta.3 Pre-release
Pre-release
  • Implement old-style type assertions via the old_style_assertions sub-option.
  • Support generic parameters in extends and implements clauses.

v2.4.0-beta.2

19 Jun 21:29
Compare
Choose a tag to compare
v2.4.0-beta.2 Pre-release
Pre-release

A few TypeScript fixes:

  • String literal members in enum declarations.
  • Export syntax for interfaces and namespaces.
  • Different scoping for namespace keyword.
  • Optional properties in class declarations.

v2.4.0-beta.1

16 Jun 19:05
Compare
Choose a tag to compare
v2.4.0-beta.1 Pre-release
Pre-release

Same as v2.4.0-alpha.10, but merged onto the master branch.