Skip to content

suchitadoshi1987/vscode-ember

 
 

Repository files navigation

vscode-ember

Note: This extension is experimental and will be migrated to the original Ember Language Server extension in the future

This is the VSCode extension to use the Experimental Ember Language Server.

Experimental Ember Language Server is full-featured fork of Unstable Ember Language Server. It's stable and extremely power-featured.

All Ember Language Server features included.

preview

Features

  • Autocomplete (including installed addons and in-repo addons)

    • Components (Curly, Angle Bracket)
    • Component Arguments (if used in template)
    • Services
    • Route/Controller transition functions route names
    • Model names (store methods, model relation definition)
    • Transform names (model definition)
    • Helpers
    • Modifiers
    • Get / Set / ... / Computed macros
    • Local paths in templates (this...)
    • Route autocompletion in link-to
    • <LinkTo /> @route argument autocomplete
  • Definition providers for (enable features like "Go To Definition" or "Peek Definition"):

    • Components (in Templates)
    • Helpers (in Templates)
    • Modfiers
    • Models
    • Transforms
    • Routes
    • Services
    • Ember-addons imports
    • Component block arguments (as | name | )
    • Any local paths (this...)
  • Lense provider

    • Related Files (tests, styles, templates, etc)
  • Component usages

    • Route Templates
    • Component Templates
  • ember-template-lint Diagnostics integration (if it is included in a project)

    • Template parsing issues
    • Template linting
    • Template linting inside tests
    • Auto-fix action for fixable linting issues
  • Supported layouts

    • Classic
    • Template Collocation
    • Pods
    • Module Unification
  • Supported Script Files

    • JavaScript
    • TypeScript

Settings

  • els.codeLens.relatedFiles - disable / enable related files
  • els.local.addons - globally defined local language server addons entry folders, for example:
{
    "els.local.addons": ["C:\\Users\\ember\\els-addon-typed-templates"],
}
  • els.local.ignoredProjects - Supports Ignoring of LS initialization on unneeded projects, for example, the below setting will ignore the initialization of the project named, sample-project-name:
{
    "els.local.ignoredProjects": ["sample-project-name"],
}
  • els.local.disableInitialization - Disabling eager initialization of projects
{
    "els.local.disableInitialization": true,
}
  • els.local.includeModules - node_modules packages to be included during the lazy init phase for autocomplete.
{
    "els.local.includeModules": ['@foo', '@bar'],
}

Note: ignoredProjects leverages the projectName from the name property of the project's package.json

Packages

No packages published

Languages

  • TypeScript 98.7%
  • Other 1.3%