Code Monkey home page Code Monkey logo

intellij-emberjs's Introduction

Logo intellij-emberjs

This plugin provides basic Ember.js support to all JetBrains IDEs that support JavaScript.

Features

Navigate → Class...

  • Ember.js project discovery when imported from existing sources
  • Automatically sets the language level to ES6
  • Marks app, public and tests folders as source, resource and test folders
  • Marks node_modules and bower_components as library folders
  • Enable JSHint using .jshintrc
  • Quick navigation via Navigate → Class... and Navigate → Related Symbol... for all major app components
  • Generate Ember.js files via ember generate
  • Basic reference resolving and completion for e.g. DS.belongsTo('user')
  • Live templates

more...

Installation

This plugin is published on the JetBrains Plugin Repository:

Preferences... → Plugins → Browse Repositories ... → Search for "Ember.js"

From Source

Clone this repository:

git clone https://github.com/Turbo87/intellij-emberjs.git
cd intellij-emberjs

Build a plugin zip file:

./gradlew buildPlugin

Install the plugin from /build/distributions/Ember.js.zip:

Preferences... → Plugins → Install plugin from disk ...

Development

Run IntelliJ IDEA Ultimate with the current plugin pre-installed:

./gradlew runIdea

Run the test suite:

./gradlew test

Links

License

This project is licensed under the Apache 2.0 License.

intellij-emberjs's People

Contributors

chriscarini avatar dan-ste avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar dwickern avatar lonelyghost avatar makepanic avatar mvb-zimmermq avatar nether-cat avatar patricklx avatar pongo avatar raido avatar renovate-bot avatar renovate[bot] avatar serabe avatar stukalin avatar tolke avatar tomblachut avatar turbo87 avatar valich avatar zoltan-nz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

intellij-emberjs's Issues

Plugin failed to find 'ember' executable

When I try to create a new EmberJS file it fails because it cannot find 'ember':

08:23:51 Problem running ember-cli:
         Cannot run program "ember" (in directory "/path/to/project"): error=2, No such file or directory
% which ember
/opt/local/bin/ember

% ember -v
Future versions of Ember CLI will not support v4.2.1. Please update to Node 0.12 or io.js.
version: 1.13.8
node: 4.2.1
npm: 2.13.4
os: darwin x64

I didn't find if we could specify a path to the ember executable to use.

Navigate to class does not support pod layout

When using pod layout, the navigate to class feature does not work.

For example

/routes/something/test.js

Correctly resolves when navigating to classes.

/something/test/route.js

Shows as a route (as indicated by the icon changing), but does not show when trying to navigate to class.

Cannot run program "./node_modules/.bin/ember"

Whenever I try to run the Ember commands, I get the following error:

Problem running ember-cli:
Cannot run program "./node_modules/.bin/ember": error=2, No such file or directory

Ember-CLI works fine from the command line (including running exactly that command). Might be a configuration error on my end; happy to provide more details to help suss out the cause.

Optionally exclude node_modules and bower_components folder

As suggested in #22 we should add a plugin-wide option whether the node_modules and bower_components folder should be marked as library folders or instead excluded from indexing at all. I would personally use the first option because once the initial index is done it usually stays quite fast but I can see that people might disagree.

Poor visibility of icons on dark theme

I use IntelliJ using the dracula theme and because pretty much all icons are black there is poorly visible:

v57s7km

It would be nice to have icons that display better either on a dark or light theme.

Keep up the good work!

Ember-cli editor documentation

On the Ember-cli website under Editors, I've included a section for setting up WebStorm.

Wouldn't it be nice if you could also have a link for this plugin put there?

Dasherized model names CTRL-Click not working

First, thanks for this! Been looking awhile for something like this to come out!

I found that if I have a dasherized model like customer-location, when I CTRL-Click on the belongsTo in a related model, it doesn't link to the model. It does link to non-dasherized correctly, however.

let {Model, attr, belongsTo} = DS;

export default Model.extend({
//...
    location: belongsTo('customer-location')
//...
});

Plugin automatically creates "library roots" which kill performance

Greetings,

After a long debugging session with JetBrains' support, we've deduced that this plugin is creating library roots out of my projects node_modules and bower_components directories. I'm not sure what features this powers within the plugin, but it makes performance in any non-trivial project completely unusable.

I can try to provide as much information as I can on request, though I'm not sure what might be relevant at this time. I have a very complex Ember 1.x app (we're in the process of updating!), and would like to use this plugin, but I simply can't in its current state.

java.lang.NoClassDefFoundError: java/util/function/Consumer

Since updating to the newest release, I get a fatal IDE error which presents the following stack trace:

java/util/function/Consumer
java.lang.NoClassDefFoundError: java/util/function/Consumer
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:643)
    at com.intellij.util.lang.UrlClassLoader._defineClass(UrlClassLoader.java:257)
    at com.intellij.util.lang.UrlClassLoader.defineClass(UrlClassLoader.java:253)
    at com.intellij.util.lang.UrlClassLoader._findClass(UrlClassLoader.java:222)
    at com.intellij.ide.plugins.cl.PluginClassLoader.a(PluginClassLoader.java:124)
    at com.intellij.ide.plugins.cl.PluginClassLoader.a(PluginClassLoader.java:77)
    at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:66)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    at com.emberjs.project.EmberProjectComponent$projectOpened$3$1.run(EmberProjectComponent.kt:66)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:1002)
    at com.emberjs.project.EmberProjectComponent$projectOpened$3.run(EmberProjectComponent.kt:65)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.a(LaterInvocator.java:337)
    at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:321)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:745)
    at java.awt.EventQueue.access$300(EventQueue.java:103)
    at java.awt.EventQueue$3.run(EventQueue.java:706)
    at java.awt.EventQueue$3.run(EventQueue.java:704)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:77)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:715)
    at com.intellij.ide.IdeEventQueue.g(IdeEventQueue.java:866)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:654)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:381)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Caused by: java.lang.ClassNotFoundException: java.util.function.Consumer PluginClassLoader[com.emberjs, 1.4.0]
    at com.intellij.ide.plugins.cl.PluginClassLoader.loadClass(PluginClassLoader.java:68)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 32 more

How to fire up 'ember generate'?

I hate to ask this, but how do you fire up the "ember > generate" dbox from within RubyMine?

I've looked all through the menus and could not find an "ember" anywhere.

I did a Ctrl-Shift-a to bring up the "Enter Action" dbox, but when I type "ember" or "ember generate" nothing happens.

Specifically, when I type "ember" a bunch of options appear in a drop-down. The first one is "Ember.js files", but that is disabled => nothing happens when you select it.

When I type "ember generate" RM fires up the Settings dbox with the "Plugins > Ember.js" entry selected.

I cannot get the dbox with the drop-down "Kind:" as illustrated in your main page.

Thanks,
Larry

add compatibility with 144.* builds

I'm using PhpStorm EAP 144.3168 and the plugin is now incompatible.

I hope it doesn't need too much work to extend the compatibility with theses new builds.

Include router in class search

It would be quite helpful if router instances were included in the list of classes. I can get there fairly easily, of course, by navigating to the file proper, but especially with the notion of local routing coming at some point with engines and local resolution, it will be really nice.

This isn't urgent by any means; just a very big "would be nice."

Need to use ember.cmd on windows

windows 10, webstorm 11.0.3, ember.js plugin 1.5.0

I am trying to add new route 'ddd' and get error:

Problem running ember-cli: 
Cannot run program ".\node_modules\.bin\ember": CreateProcess error=2, Не удается найти указанный файл (cannot find the file)

I have ember in my project's node_modules\.bin\:

> cd .\node_modules\.bin\
> dir
 Содержимое папки C:\Users\Pavel\Documents\Ember\project-name\node_modules\.bin

08.04.2016  01:13    <DIR>          .
08.04.2016  01:13    <DIR>          ..
08.04.2016  01:13               309 ember
08.04.2016  01:13               186 ember.cmd
               2 файлов            495 байт
               2 папок  55 006 703 616 байт свободно

Process Monitor logs:

WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember    PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember.exe    PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember generate   PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember generate.exe   PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember generate route PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember generate route.exe PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember generate route ddd PATH NOT FOUND
WebStorm.exe    26028   CreateFile  C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin\node_modules\.bin\ember generate route ddd.exe PATH NOT FOUND

In the folder C:\Program Files (x86)\JetBrains\WebStorm 11.0.3\jre\jre\bin no folder node_modules

"esnext": true vs "esversion": 6,

Upgraded to ember-cli 2.7.0 and now I see warnings like;

'JSHINT let is available in es6 (use esnext option)'

whilst the upgrade options instructed me to replace "esnext": true, with "esversion": 6, in .jshintrc.

Does not work with old IDE versions

Hey!

I wanted to try this plugin with my Webstorm 9 installation but I can not install it. During the installation I get the following error:
Error --> Plugin Ember.js is incompatible with current installation
I have Webstorm 9.0.3 on Mac OS X Yosemite. Do I have a chance to get it running or is it really incompatible with my installation?

Thanks as lot

Webstorm Project Updating never stops

Great plugin so far. Thanks!
A small issue I face: while having the plugin active the project explorer of Webstorm never stops updating the project when expanding the project folder. I can access all files via double-shift, but a usable project explorer would be nice. If you need anymore clarification, just ask!
Thanks again, keep up the good work!

PS: I'm using Webstorm 10.0.4, I hope that counts as supported ;-)
webstormemberpluginproblem

Tons of indexing

Could we mark bower_components and node_modules as excluded? Unsure if it indexes them as library root or not, but I get a ton of indexing for no reason all the time.

InvalidVirtualFileAccessException

Accessing invalid virtual file: file:///Users/tbn/Code/.../lib/ember-cli-rollup; original:2128483; found:-
com.intellij.openapi.vfs.InvalidVirtualFileAccessException: Accessing invalid virtual file: file:///Users/tbn/Code/.../lib/ember-cli-rollup; original:2128483; found:-
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.a(VirtualDirectoryImpl.java:144)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.a(VirtualDirectoryImpl.java:92)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.findChild(VirtualDirectoryImpl.java:396)
    at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.findChild(VirtualDirectoryImpl.java:58)
    at com.intellij.openapi.vfs.VirtualFile.findFileByRelativePath(VirtualFile.java:370)
    at com.emberjs.resolver.EmberResolver.find(EmberResolver.kt:50)
    at com.emberjs.resolver.EmberResolver.findIf(EmberResolver.kt:52)
    at com.emberjs.resolver.EmberResolver.resolveNonTestForExtension(EmberResolver.kt:35)
    at com.emberjs.resolver.EmberResolver.resolveNonTest(EmberResolver.kt:28)
    at com.emberjs.resolver.EmberResolver.resolve(EmberResolver.kt:18)
    at com.emberjs.resolver.EmberResolver.resolve(EmberResolver.kt:9)
    at com.emberjs.psi.EmberJSLiteralReference$resolve$1$1$1.invoke(EmberJSLiteralReference.kt:50)
    at com.emberjs.psi.EmberJSLiteralReference$resolve$1$1$1.invoke(EmberJSLiteralReference.kt:22)
    at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:137)
    at kotlin.sequences.DistinctIterator.computeNext(Sequences.kt:484)
    at kotlin.collections.AbstractIterator.tryToComputeNext(AbstractIterator.kt:37)
    at kotlin.collections.AbstractIterator.hasNext(AbstractIterator.kt:25)
    at kotlin.sequences.FlatteningSequence$iterator$1.ensureItemIterator(Sequences.kt:242)
    at kotlin.sequences.FlatteningSequence$iterator$1.hasNext(Sequences.kt:229)
    at kotlin.sequences.FlatteningSequence$iterator$1.ensureItemIterator(Sequences.kt:233)
    at kotlin.sequences.FlatteningSequence$iterator$1.hasNext(Sequences.kt:229)
    at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:97)
    at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:121)
    at kotlin.sequences.TransformingSequence$iterator$1.hasNext(Sequences.kt:141)
    at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:97)
    at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:121)
    at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:527)
    at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:551)
    at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:544)
    at com.emberjs.psi.EmberJSLiteralReference.resolve(EmberJSLiteralReference.kt:59)
    at com.emberjs.psi.EmberJSLiteralReference.multiResolve(EmberJSLiteralReference.kt:32)
    at com.intellij.lang.javascript.inspections.JSUnusedLocalSymbolsInspection$1.visitJSLiteralExpression(JSUnusedLocalSymbolsInspection.java:140)
    at com.intellij.lang.javascript.psi.impl.JSLiteralExpressionImpl.accept(JSLiteralExpressionImpl.java:103)
    at com.intellij.codeInspection.InspectionEngine.acceptElements(InspectionEngine.java:81)
    at com.intellij.codeInsight.daemon.impl.LocalInspectionsPass.a(LocalInspectionsPass.java:310)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:123)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1026)
    at com.intellij.concurrency.ApplierCompleter.a(ApplierCompleter.java:96)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:494)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:443)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.concurrency.ApplierCompleter.b(ApplierCompleter.java:106)
    at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:91)
    at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)

Worker exited due to exception: it.virtualFile must not be null

I use the latest Webstorm EAP. It drops this error. Maybe it helps.

WebStorm WS-144.3891.13
Build #WS-144.3891, built on February 10, 2016
JRE: 1.8.0_40-release-b128 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

Worker exited due to exception: it.virtualFile must not be null
java.lang.IllegalStateException: it.virtualFile must not be null
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:20)
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:18)
    at com.intellij.util.PsiIconUtil.getProvidersIcon(PsiIconUtil.java:42)
    at com.intellij.psi.impl.ElementBase.computeIconNow(ElementBase.java:122)
    at com.intellij.psi.impl.ElementBase.access$000(ElementBase.java:51)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:62)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:55)
    at com.intellij.ui.DeferredIconImpl.evaluate(DeferredIconImpl.java:287)
    at com.intellij.ui.DeferredIconImpl$2$1$1.run(DeferredIconImpl.java:158)
    at com.intellij.ui.IconDeferrerImpl.evaluateDeferred(IconDeferrerImpl.java:122)
    at com.intellij.ui.DeferredIconImpl$2$1.run(DeferredIconImpl.java:155)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1178)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$2.run(ProgressIndicatorUtils.java:80)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$5.run(ProgressIndicatorUtils.java:141)
    at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:142)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:446)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:392)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:127)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:137)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:77)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:102)
    at com.intellij.ui.DeferredIconImpl$2.run(DeferredIconImpl.java:152)
    at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:187)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)



java.lang.IllegalStateException: it.virtualFile must not be null
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:20)
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:18)
    at com.intellij.util.PsiIconUtil.getProvidersIcon(PsiIconUtil.java:42)
    at com.intellij.psi.impl.ElementBase.computeIconNow(ElementBase.java:122)
    at com.intellij.psi.impl.ElementBase.access$000(ElementBase.java:51)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:62)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:55)
    at com.intellij.ui.DeferredIconImpl.evaluate(DeferredIconImpl.java:287)
    at com.intellij.ui.DeferredIconImpl$2$1$1.run(DeferredIconImpl.java:158)
    at com.intellij.ui.IconDeferrerImpl.evaluateDeferred(IconDeferrerImpl.java:122)
    at com.intellij.ui.DeferredIconImpl$2$1.run(DeferredIconImpl.java:155)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1178)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$2.run(ProgressIndicatorUtils.java:80)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$5.run(ProgressIndicatorUtils.java:141)
    at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:142)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:446)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:392)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:127)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:137)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:77)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:102)
    at com.intellij.ui.DeferredIconImpl$2.run(DeferredIconImpl.java:152)
    at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:187)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)



java.lang.IllegalStateException: it.virtualFile must not be null
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:20)
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:18)
    at com.intellij.util.PsiIconUtil.getProvidersIcon(PsiIconUtil.java:42)
    at com.intellij.psi.impl.ElementBase.computeIconNow(ElementBase.java:122)
    at com.intellij.psi.impl.ElementBase.access$000(ElementBase.java:51)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:62)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:55)
    at com.intellij.ui.DeferredIconImpl.evaluate(DeferredIconImpl.java:287)
    at com.intellij.ui.DeferredIconImpl$2$1$1.run(DeferredIconImpl.java:158)
    at com.intellij.ui.IconDeferrerImpl.evaluateDeferred(IconDeferrerImpl.java:122)
    at com.intellij.ui.DeferredIconImpl$2$1.run(DeferredIconImpl.java:155)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1178)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$2.run(ProgressIndicatorUtils.java:80)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$5.run(ProgressIndicatorUtils.java:141)
    at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:142)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:446)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:392)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:127)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:137)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:77)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:102)
    at com.intellij.ui.DeferredIconImpl$2.run(DeferredIconImpl.java:152)
    at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:187)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)



java.lang.IllegalStateException: it.virtualFile must not be null
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:20)
    at com.emberjs.icons.EmberIconProvider.getIcon(EmberIconProvider.kt:18)
    at com.intellij.util.PsiIconUtil.getProvidersIcon(PsiIconUtil.java:42)
    at com.intellij.psi.impl.ElementBase.computeIconNow(ElementBase.java:122)
    at com.intellij.psi.impl.ElementBase.access$000(ElementBase.java:51)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:62)
    at com.intellij.psi.impl.ElementBase$1.fun(ElementBase.java:55)
    at com.intellij.ui.DeferredIconImpl.evaluate(DeferredIconImpl.java:287)
    at com.intellij.ui.DeferredIconImpl$2$1$1.run(DeferredIconImpl.java:158)
    at com.intellij.ui.IconDeferrerImpl.evaluateDeferred(IconDeferrerImpl.java:122)
    at com.intellij.ui.DeferredIconImpl$2$1.run(DeferredIconImpl.java:155)
    at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1178)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$2.run(ProgressIndicatorUtils.java:80)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils$5.run(ProgressIndicatorUtils.java:141)
    at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:142)
    at com.intellij.openapi.progress.impl.CoreProgressManager.a(CoreProgressManager.java:446)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:392)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:54)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:127)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:137)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:77)
    at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:102)
    at com.intellij.ui.DeferredIconImpl$2.run(DeferredIconImpl.java:152)
    at com.intellij.util.concurrency.BoundedTaskExecutor$2.run(BoundedTaskExecutor.java:187)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

Java detection seems to override Ember.js

I've a ember-cli app with the ember-cli-cordova addon. This addon makes a cordova folder with lots of stuff in it.

Some of this stuff is Java for Cordova's android support.

When I attempt to import my ember project in IDEA via File → New → Project from Existing Sources..., after scanning the folders, it shows the cordova Java files:

import_project

If I temporarily remove the cordova folder, then IDEA detects my project as expected:

idea-ember-create

Support pods structure for related symbol navigation in components

Using a pods structure on a project currently has inconsistent related symbol navigation support.

The navigation seems to work in top-level directories of pods like, 'pods/application' or 'pods/someotherthing'. But it does not work for components in 'pods/components/user-list' for example.

I'm not sure if this is a bug or a feature request.

Ember      : 2.3.1
Ember Data : 2.3.3
Ember CLI  : 2.3.0

Some feature ideas

Great work, finally a usable Ember plugin :)
Couple of ideas for features:

  • {{component/helper/variable}} name completion in .hbs templates
  • completion for i18n {{t helper, for ember-intl / ember-i18next (json, different directories) and ember-i18n (.js)
  • more live templates, maybe just copy them from https://github.com/kristianmandrup/emberjs-plugin

No ember-cli support in IDE

Hi, I recently installed the ember plugin to IntelliJ (Ultimate 2016.2 edition) and then imported a new ember project. I can see that the folders have been properly identified as the description describes, but when I attempt to do File -> New -> Ember.js code I don't see this option available. Am I doing something wrong?

Plugin doesn't seem to work with multiple modules

Hi! I am not sure if I am doing it right, in which case please correct me. I have a project which consists of a few ruby services and a couple of emberjs apps. So I decided to add those as module to an empty IntelliJ project. I go to Project Structure, Add > Import module. The module is correctly identified as EmberJS. But when added the app folder is not recognized as source root, neither are node_modules and bower_components and pretty much nothing works. I want to note that if I open the folder as a separate project, rather than as module it will work just fine.

Plugin does not work in IDEs other than IntelliJ itself

Hey there, thanks for this plugin! I'm testing it out on my EmberJS project and it appears to not be detecting the app. My actual EmberJS project is inside a directory called 'frontend' (the project contains the backend code as well), so the app.js is located at 'frontend/app/app.js'. Any chance this could be picked up by the plugin?

can't use ember-cli and nvm?

Hi,

I have ember-cli installed via nvm @ ~/.nvm/versions/node/v0.12.7/bin/ember

If I try to create a new file I get this error:

Problem running ember-cli: Cannot run program "ember" (in directory "/Users/me/Developer/ember/ember-note"): error=2, No such file or directory

echo $PATH includes /Users/me/.nvm/versions/node/v0.12.7/bin

also, does the new Ember.js command support pods?

Is it possible to get it to understand relative paths in styles?

If I have file in ./app/styles referencing a file in ./public it the PyCharm linter will underline it as being a nonsense path. Like say:

background: url(../img/title_icons.png) no-repeat;

Is it possible to make it smart enough to understand it's referencing that directory?

Support `podModulePrefix` config option

Granted I'm on an older version of ember and ember-cli so maybe it's a non issue, but maybe there's something i'm missing. Here is my issue:

image

The component should be ui-panel, not pods.components.ui-panel.

{{link-to}} cross referencing

in {{#link-to "foo.bar"}}foobar{{/link-to}} we should add clickable references on foo and bar to their corresponding routes, controllers and templates

Plugin is Freezing WebStorm 11

In my workspace I have about 11 ember projects. As soon as I installed this plugin "WebStorm 11" now freezes. Previously, I had to add both bower_components and node_modules to the excluded list (right click > mark directory as > exclude) to prevent webstorm from indexing them in searches which was causing the same behaviour. I noticed that the plugin instead adds them as libraries, maybe this is causing the issue.

Support for in-repo-addons

It would be nice to have a minimal support for in-repo-addons, at least for app folder that merging wtih main application

Indexing for in-repo-addons

The changes in #72 most likely broken indexing of in-repo-addons since they have no .ember-cli file in their root folder. We can detect if the parent folder of the found package.json file is named lib though and then look for the .ember-cli file in its parent folder.

The alternative is properly parsing the package.json file and looking for an ember-cli dependency, but I'm not sure if that is feasible in terms of performance.

IOException in YesThread after new EmberJS file action

When I create a new EmberJS file I end up with the following error:

Stream closed
java.io.IOException: Stream closed
    at java.lang.ProcessBuilder$NullOutputStream.write(ProcessBuilder.java:433)
    at java.io.OutputStream.write(OutputStream.java:116)
    at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
    at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
    at sun.nio.cs.StreamEncoder.implFlush(StreamEncoder.java:297)
    at sun.nio.cs.StreamEncoder.flush(StreamEncoder.java:141)
    at java.io.OutputStreamWriter.flush(OutputStreamWriter.java:229)
    at com.emberjs.cli.YesThread.run(YesThread.kt:13)

The files are properly generated.

"Worker exited due to exception: it.virtualFile must not be null"

I'm getting the above error message multiple times a day, and I'm on:

WebStorm WS-144.3891.13
Build #WS-144.3891, built on February 10, 2016
JRE: 1.8.0_40-release-b128 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o

My Ember version is 1.10.1.

I'm not sure what's triggering it, and I'm not aware of what the implications are -- I just notice the flashing error icon in WebStorm pretty often.

Please let me know if you need more information.

Add possibility to disable JSHint

In our project we use ESLint, so there is no need for JSHint inspection. Yet, every time I open WebStorm 11 and a JS file, I see a red bar in editor window saying:

JSHint config not found

I tried unchecking "Enable" field in JSHint settings and disabling its inspection but it's back after restarting WebStorm.

Is it possible to have a way to disable it for good?

Javascript import

Consider this at the beginning of a controller:

import AwesomeMixin from 'my-cool-project/mixins/awesome-mixin';

When calling this.runMethod(), the IDE doesn't recognize the import, so runMethod gets a "unresolved function or method" warning.

Is there a way to support this through the plugin or am I missing a configuration setting in my IDE? I have set the package prefix for the app folder to 'my-cool-project' in the Project Directory settings, but that doesn't seem to do it.

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.