Skip to content
This repository was archived by the owner on Sep 6, 2021. It is now read-only.
This repository was archived by the owner on Sep 6, 2021. It is now read-only.

ES6 Support #11644

@marcelgerber

Description

@marcelgerber

As a long term goal, we should look into adding proper ES6 (ES2015) (guides: 1 2) support.
ES6 is already being used in a whole lot of applications, ranging from server-side code running on Node/io.js to client-side code transpiled with Babel and the like.

This includes:

  • Updating JSLint or switching to another linter (JSHint/ESLint)

  • Adding some new keywords to the JS Code Hints

    Off the top of my head, there is (in no particular order):

    • for ... of
    • let
    • const
    • class
      • ... extends
      • constructor
      • super
    • yield
    • export
    • import
      • ... as
      • ... from
  • Proper Syntax Highlighting

    This is mostly CodeMirror's part, but we should make sure to pick up fixes related to ES6

  • Adding ES6 support to JS Code Hints

    Marijn has just today updated his awesome Tern (see what's new) to support most of ES6's syntax. I've already tested it locally and it looks very promising. I was able to simply drop the new version in, without the need for many adaptions.

    This work will soon be part of Update Tern & Acorn #11569.

  • Some changes to JSUtils

    One example is the detection of both arrow functions (example) and shorthand method definitions as object literals (example) as valid functions.

  • Making sure JS Quick Edit still works the way it should

  • A whole lot of testing

I'd love to hear your feedback on these points. Feel free to elaborate on them, add new ones, or simply add your two cents. You can talk about the cool new feature you saw in this cool new editor, too. Thanks!

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions