Comments (8)
是 HTML 代码上显示了注释?还是说文件树注释,目前目录注释的确会应用到所有目录和文件。
from show-comment.
from show-comment.
可否提供完整的堆栈文本,图上没看到插件所在的包io.github.linwancen
from show-comment.
com.intellij.openapi.util.StackOverflowPreventedException: isValid leads to endless recursion in class com.intellij.freemarker.psi.files.FtlFileViewProvider: [Language: HTML, Language: FTL>]
at com.intellij.psi.impl.file.impl.FileManagerImpl.shouldResurrect(FileManagerImpl.java:632)
at com.intellij.psi.impl.file.impl.FileManagerImpl.evaluateValidity(FileManagerImpl.java:606)
at com.intellij.psi.impl.file.impl.FileManagerImpl.findCachedViewProvider(FileManagerImpl.java:225)
at com.intellij.psi.impl.file.impl.FileManagerImpl.getCachedPsiFileInner(FileManagerImpl.java:466)
at com.intellij.psi.impl.file.impl.FileManagerImpl.getCachedPsiFile(FileManagerImpl.java:380)
at com.intellij.psi.impl.PsiDocumentManagerBase.getCachedPsiFile(PsiDocumentManagerBase.java:143)
at com.intellij.psi.impl.PsiDocumentManagerImpl$1.lambda$fileContentLoaded$0(PsiDocumentManagerImpl.java:55)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:865)
at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:61)
at com.intellij.psi.impl.PsiDocumentManagerImpl$1.fileContentLoaded(PsiDocumentManagerImpl.java:55)
at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:645)
at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:620)
at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:417)
at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:390)
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:372)
at com.intellij.util.messages.impl.MessageBusImpl.access$200(MessageBusImpl.java:33)
at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:172)
at com.sun.proxy.$Proxy88.documentCreated(Unknown Source)
at com.intellij.psi.impl.PsiDocumentManagerBase.fireDocumentCreated(PsiDocumentManagerBase.java:750)
at com.intellij.psi.impl.PsiDocumentManagerImpl$1.fileContentLoaded(PsiDocumentManagerImpl.java:56)
at com.intellij.util.messages.impl.MessageBusImpl.invokeMethod(MessageBusImpl.java:645)
at com.intellij.util.messages.impl.MessageBusImpl.invokeListener(MessageBusImpl.java:620)
at com.intellij.util.messages.impl.MessageBusImpl.deliverMessage(MessageBusImpl.java:417)
at com.intellij.util.messages.impl.MessageBusImpl.pumpWaitingBuses(MessageBusImpl.java:390)
at com.intellij.util.messages.impl.MessageBusImpl.pumpMessages(MessageBusImpl.java:372)
at com.intellij.util.messages.impl.MessageBusImpl.access$200(MessageBusImpl.java:33)
at com.intellij.util.messages.impl.MessageBusImpl$MessagePublisher.invoke(MessageBusImpl.java:179)
at com.sun.proxy.$Proxy24.fileContentLoaded(Unknown Source)
at jdk.internal.reflect.GeneratedMethodAccessor106.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.multiCast(FileDocumentManagerImpl.java:173)
at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.lambda$new$0(FileDocumentManagerImpl.java:128)
at com.sun.proxy.$Proxy24.fileContentLoaded(Unknown Source)
at com.intellij.openapi.fileEditor.impl.FileDocumentManagerImpl.fileContentLoaded(FileDocumentManagerImpl.java:880)
at com.intellij.openapi.fileEditor.impl.FileDocumentManagerBase.getDocument(FileDocumentManagerBase.java:70)
at com.intellij.freemarker.lexer.FtlLexer.guessDirectiveStyle(FtlLexer.java:65)
at com.intellij.freemarker.psi.files.FtlFileViewProvider.(FtlFileViewProvider.java:43)
at com.intellij.freemarker.psi.files.FtlFileViewProviderFactory.createFileViewProvider(FtlFileViewProviderFactory.java:21)
at com.intellij.psi.impl.file.impl.FileManagerImpl.createFileViewProvider(FileManagerImpl.java:267)
at com.intellij.psi.impl.file.impl.FileManagerImpl.shouldResurrect(FileManagerImpl.java:636)
at com.intellij.psi.impl.file.impl.FileManagerImpl.evaluateValidity(FileManagerImpl.java:606)
at com.intellij.psi.impl.file.impl.FileManagerImpl.findCachedViewProvider(FileManagerImpl.java:225)
at com.intellij.psi.impl.file.impl.FileManagerImpl.findViewProvider(FileManagerImpl.java:182)
at com.intellij.psi.impl.file.impl.FileManagerImpl.findFile(FileManagerImpl.java:361)
at com.intellij.psi.impl.PsiManagerImpl.findFile(PsiManagerImpl.java:154)
at com.intellij.psi.impl.file.PsiDirectoryImpl.processChildren(PsiDirectoryImpl.java:193)
at com.intellij.psi.impl.file.PsiDirectoryImpl.getChildren(PsiDirectoryImpl.java:208)
at io.github.linwancen.plugin.show.Tree.dirDoc(Tree.java:138)
at io.github.linwancen.plugin.show.Tree.nodeDoc(Tree.java:82)
at io.github.linwancen.plugin.show.Tree.doc(Tree.java:58)
at io.github.linwancen.plugin.show.Tree.lambda$decorate$0(Tree.java:40)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:839)
at io.github.linwancen.plugin.show.Tree.decorate(Tree.java:39)
at com.intellij.ide.projectView.impl.CompoundProjectViewNodeDecorator.lambda$decorate$0(CompoundProjectViewNodeDecorator.java:47)
at com.intellij.ide.projectView.impl.CompoundProjectViewNodeDecorator.forEach(CompoundProjectViewNodeDecorator.java:59)
at com.intellij.ide.projectView.impl.CompoundProjectViewNodeDecorator.decorate(CompoundProjectViewNodeDecorator.java:47)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.lambda$doUpdate$1(AbstractPsiBasedNode.java:196)
at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:839)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.doUpdate(AbstractPsiBasedNode.java:147)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.lambda$update$0(AbstractPsiBasedNode.java:143)
at com.intellij.util.AstLoadingFilter.lambda$toComputable$2(AstLoadingFilter.java:172)
at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:130)
at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:119)
at com.intellij.util.AstLoadingFilter.disallowTreeLoading(AstLoadingFilter.java:109)
at com.intellij.ide.projectView.impl.nodes.AbstractPsiBasedNode.update(AbstractPsiBasedNode.java:143)
at com.intellij.ide.util.treeView.PresentableNodeDescriptor.getUpdatedPresentation(PresentableNodeDescriptor.java:78)
at com.intellij.ide.util.treeView.PresentableNodeDescriptor.update(PresentableNodeDescriptor.java:30)
at com.intellij.ui.tree.StructureTreeModel$Node.update(StructureTreeModel.java:455)
at com.intellij.ui.tree.StructureTreeModel.invalidateInternal(StructureTreeModel.java:215)
at com.intellij.ui.tree.StructureTreeModel.lambda$invalidate$5(StructureTreeModel.java:181)
at com.intellij.ui.tree.StructureTreeModel.lambda$onValidThread$2(StructureTreeModel.java:135)
at com.intellij.ui.tree.StructureTreeModel.lambda$onValidThread$1(StructureTreeModel.java:117)
at com.intellij.util.concurrency.Invoker$Wrapper.get(Invoker.java:338)
at com.intellij.util.concurrency.Invoker$Wrapper.get(Invoker.java:329)
at com.intellij.util.concurrency.Invoker$Task.run(Invoker.java:316)
at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1084)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:75)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:158)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:115)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:57)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:188)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:624)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:698)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:646)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:623)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:175)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:57)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:112)
at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:75)
at com.intellij.util.concurrency.Invoker.invokeSafely(Invoker.java:205)
at com.intellij.util.concurrency.Invoker.lambda$offerSafely$0(Invoker.java:183)
at com.intellij.util.concurrency.Invoker$Background.lambda$offer$0(Invoker.java:486)
at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:246)
at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:32)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:225)
at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:214)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
at java.base/java.lang.Thread.run(Thread.java:829)
from show-comment.
看了下对应这个插件的源码顶端是在折叠中间包时显示上级包注释的功能处报错的。
@Nullable
private static PsiDocComment dirDoc(PsiDirectory child) {
while (true) {
PsiDocComment docComment = OwnerToPsiDocUtils.dirDoc(child);
if (docComment != null) {
return docComment;
}
PsiDirectory parent = child.getParent();
if (parent == null) {
return null;
}
if (parent.getChildren().length != 1) {
return null;
}
child = parent;
}
}
对应 IDEA 的代码顶端这里只是打日志没有抛异常,所以我也不好直接 try 来解决。
if (tempProviders.containsKey(file)) {
LOG.error(new StackOverflowPreventedException("isValid leads to endless recursion in " + viewProvider.getClass() + ": " + new ArrayList<>(viewProvider.getLanguages())));
}
在提示这个问题后你的 IDEA 是否会出现 UI 崩溃?
具体为何触发原因暂时看不出来。
我可以提供一个开关用于关闭这个功能。
from show-comment.
好的感谢
from show-comment.
待插件市场 1.23 版本审核通过后更新版本,在设置界面去掉 compact 选项的勾即可。
from show-comment.
插件市场已通过
from show-comment.
Related Issues (20)
- 插件异常,错误如下,idea2023.1.2 HOT 1
- 关于行末显示 HOT 6
- 如果注释全英文就不会显示在文件树中 HOT 2
- 如何设置才能让插件显示行尾注释 HOT 2
- 新UI中无法显示 HOT 2
- 项目模块后面可以支持显示 description 描述信息吗? HOT 2
- 对于python能否支持下默认的多行注释 HOT 7
- 方法头多个参数显示效果 HOT 3
- 模块化项目不显示类注释 HOT 1
- 能不能开发一个适合PyCharm的 HOT 1
- 在JetBrains Rider 2023.2.1版本上,不能正常工作 HOT 3
- 类文件支持注解后内容展示 HOT 3
- 注释排除正则 HOT 1
- 会破坏goland的项目索引 HOT 4
- 增加行注释显示开关 HOT 4
- IntelliJ IDEA 2023.2.5内部错误 HOT 1
- 出现空指针异常,看了下你的代码,没找到CacheUpdateEditorListener文件 HOT 1
- IDEA 2024.1 ActionUpdateThread.OLD_EDT HOT 1
- 只支持/**/这种形式的注释?不支持// 这种吗? HOT 1
- 可以在Quick Doc(F1)中支持么,主要是为了显示swagger注解、枚举字段
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from show-comment.