Slim
for IntelliJ IDEA

20.02.2017
41 504
Slim language support

Download plugin

25.07.2016
If you're experiencing a problem with endless indexing in Webstorm 2016.2 or other recent Jetbrains IDE, Jetbrains is working on the issue, you can follow progress in this ticket: https://youtrack.jetbrains.com/issue/RUBY-18278
12.07.2016
After upgrading WebStorm to 2016.2 (WebStorm 2016.2 Build #WS-162.1121.31, built on July 9, 2016, JRE: 1.8.0_76-release-b216 x86_64) and updating Slim plugin to 2016.2.20160603 WebStorm falls into an endless indexing loop. When trying to click around, it gets unresponsive. idea.log contains multiple entries of this form: 2016-07-12 14:45:51,676 [ 65938] ERROR - com.intellij.lexer.FlexAdapter - WebStorm 2016.2 Build #WS-162.1121.31 2016-07-12 14:45:51,676 [ 65938] ERROR - com.intellij.lexer.FlexAdapter - JDK: 1.8.0_76-release 2016-07-12 14:45:51,676 [ 65938] ERROR - com.intellij.lexer.FlexAdapter - VM: OpenJDK 64-Bit Server VM 2016-07-12 14:45:51,676 [ 65938] ERROR - com.intellij.lexer.FlexAdapter - Vendor: JetBrains s.r.o 2016-07-12 14:45:51,676 [ 65938] ERROR - com.intellij.lexer.FlexAdapter - OS: Mac OS X 2016-07-12 14:45:51,676 [ 65938] ERROR - com.intellij.lexer.FlexAdapter - Last Action: ShowSettings 2016-07-12 14:45:51,619 [ 65881] ERROR - com.intellij.lexer.FlexAdapter - org.jetbrains.plugins.slim.lexer._SlimLexer java.lang.Error: Error: could not match input at org.jetbrains.plugins.slim.lexer._SlimLexer.zzScanError(_SlimLexer.java:762) at org.jetbrains.plugins.slim.lexer._SlimLexer.advance(_SlimLexer.java:1399) at com.intellij.lexer.FlexAdapter.locateToken(FlexAdapter.java:105) at com.intellij.lexer.FlexAdapter.getTokenStart(FlexAdapter.java:72) at com.intellij.lexer.DelegateLexer.getTokenStart(DelegateLexer.java:55) at com.intellij.lexer.MergingLexerAdapterBase.getTokenEnd(MergingLexerAdapterBase.java:61) at com.intellij.lexer.Lexer.getTokenSequence(Lexer.java:52) at com.intellij.lexer.Lexer.getTokenText(Lexer.java:57) at org.jetbrains.plugins.slim.lexer.SlimLexer.advance(SlimLexer.java:53) at com.intellij.lang.impl.PsiBuilderImpl.a(PsiBuilderImpl.java:301) at com.intellij.lang.impl.PsiBuilderImpl.(PsiBuilderImpl.java:194) at com.intellij.lang.impl.PsiBuilderImpl.(PsiBuilderImpl.java:202) at com.intellij.lang.impl.PsiBuilderFactoryImpl.createBuilder(PsiBuilderFactoryImpl.java:52) at com.intellij.psi.tree.ILazyParseableElementType.doParseContents(ILazyParseableElementType.java:83) at com.intellij.psi.tree.IFileElementType.parseContents(IFileElementType.java:43) at com.intellij.psi.impl.source.tree.LazyParseableElement.b(LazyParseableElement.java:192) at com.intellij.psi.impl.source.tree.LazyParseableElement.getFirstChildNode(LazyParseableElement.java:231) at com.intellij.psi.impl.source.tree.LazyParseableElement.getFirstChildNode(LazyParseableElement.java:39) at com.intellij.psi.impl.source.tree.SharedImplUtil.acceptChildren(SharedImplUtil.java:190) at com.intellij.psi.impl.source.PsiFileImpl.acceptChildren(PsiFileImpl.java:844) at com.intellij.lang.javascript.index.JSIndexContent.acceptChildren(JSIndexContent.java:84) at com.intellij.lang.javascript.index.JSIndexContent.createFromFile(JSIndexContent.java:71) at com.intellij.lang.javascript.index.JSIndexContent.lambda$get$0(JSIndexContent.java:112) at com.intellij.psi.util.CachedValuesManager$1.compute(CachedValuesManager.java:137) at com.intellij.psi.impl.PsiCachedValueImpl.doCompute(PsiCachedValueImpl.java:49) at com.intellij.util.CachedValueBase.getValueWithLock(CachedValueBase.java:222) at com.intellij.psi.impl.PsiCachedValue.getValueWithLock(PsiCachedValue.java:65) at com.intellij.psi.impl.PsiCachedValueImpl.getValue(PsiCachedValueImpl.java:38) at com.intellij.util.CachedValuesManagerImpl.getCachedValue(CachedValuesManagerImpl.java:84) at com.intellij.psi.util.CachedValuesManager.getCachedValue(CachedValuesManager.java:133) at com.intellij.lang.javascript.index.JSIndexContent.get(JSIndexContent.java:112) at com.intellij.lang.javascript.index.JSIndexContent.indexFile(JSIndexContent.java:55) at com.intellij.lang.javascript.index.JSCustomSingleEntriesIndex$1.map(JSCustomSingleEntriesIndex.java:25) at com.intellij.lang.javascript.index.JSCustomSingleEntriesIndex$1.map(JSCustomSingleEntriesIndex.java:21) at com.intellij.util.indexing.MapReduceIndex.update(MapReduceIndex.java:454) at com.intellij.util.indexing.FileBasedIndexImpl.updateSingleIndex(FileBasedIndexImpl.java:1632) at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:1558) at com.intellij.openapi.fileTypes.impl.FileTypeManagerImpl.freezeFileTypeTemporarilyIn(FileTypeManagerImpl.java:505) at com.intellij.util.indexing.FileBasedIndexImpl.a(FileBasedIndexImpl.java:1515) at com.intellij.util.indexing.FileBasedIndexImpl.indexFileContent(FileBasedIndexImpl.java:1500) at com.intellij.util.indexing.UnindexedFilesUpdater.a(UnindexedFilesUpdater.java:107) at com.intellij.openapi.project.CacheUpdateRunner$MyRunnable.a(CacheUpdateRunner.java:219) at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1033) at com.intellij.openapi.project.CacheUpdateRunner$MyRunnable.a(CacheUpdateRunner.java:236) at com.intellij.openapi.progress.impl.CoreProgressManager$3.run(CoreProgressManager.java:170) 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.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:155) at com.intellij.openapi.project.CacheUpdateRunner$MyRunnable.run(CacheUpdateRunner.java:232) at com.intellij.openapi.application.impl.ApplicationImpl$2.run(ApplicationImpl.java:308) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) 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)
06.02.2016
It's still broken in WebStorm 11.0.3
Anonymous
14.12.2015
It's broken Webstorm version: 11.0.2
01.10.2014
Don't know if this is the proper place to submit a bug or not, but the plugin currently incorrectly recognizes comments. A comment begins either with / for code comments or /! for html comments. As soon as a comment is entered on a line, the rest of the file is marked as commented. I'm guessing the regex is improperly terminated. Thanks!
29.09.2013
This plugin saves my life. I simply love Slim. It's broken in Webstorm 7 of course... I need this so bad I will literally program an update myself - how can I help? Haha! I can be reached at sbenner9@gmail.com... Otherwise nice work guys.
Please  sign in  to leave a comment.