Git Product home page Git Product logo

clojure-kit's People

Contributors

greg-kargin avatar gregsh avatar sergeevpavel avatar shinichy 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  avatar  avatar  avatar  avatar

clojure-kit's Issues

Integrate clj-kondo support

There's a relatively new linter for Clojure, clj-kondo which has lately gained a lot of popularity among Clojure devs for being a very well thought out and comprehensive Clojure linting tool. It is also designed to be integrated quite easily, as is proven by its Editor Integration (clj-kondo) page.

However, things could be even better. While by default clj-kondo outputs mainly text describing linting problems, it also has a raw data analysis output mode which could be used as an excellent basis for eg. driving refactorings, live templates and whatever features provided natively by the IntelliJ platform. Of course just highlighting the correct parts of the file is a start, and quite close to what File Watchers already does, but using actual analysis data would open up a lot of paths for deeper IDE integration further along the way.

Exception in IntelliJ IDEA 2021.2.2 Preview

IntelliJ IDEA 2021.2.2 Preview (Ultimate Edition)
Build #IU-212.5284.19, built on September 1, 2021
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 11.5.2
Non-Bundled Plugins:... org.jetbrains.idea.clojure (2020.3.1)...
update failed for AnAction(com.intellij.ide.actions.CopyAbsolutePathProvider, id=CopyAbsolutePath) with text=Absolute Path

com.intellij.openapi.project.IndexNotReadyException: Please change caller according to com.intellij.openapi.project.IndexNotReadyException documentation
	at com.intellij.openapi.project.IndexNotReadyException.create(IndexNotReadyException.java:67)
	at com.intellij.util.indexing.FileBasedIndexImpl.handleDumbMode(FileBasedIndexImpl.java:821)
	at com.intellij.util.indexing.FileBasedIndexImpl.ensureUpToDate(FileBasedIndexImpl.java:773)
	at com.intellij.psi.stubs.StubIndexImpl.getContainingIds(StubIndexImpl.java:501)
	at com.intellij.psi.stubs.StubIndexImpl.processElements(StubIndexImpl.java:305)
	at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:100)
	at com.intellij.psi.stubs.StubIndex.getElements(StubIndex.java:88)
	at com.intellij.psi.impl.java.stubs.index.JavaFullClassNameIndex.get(JavaFullClassNameIndex.java:30)
	at com.intellij.psi.impl.file.impl.JavaFileManagerImpl.doFindClasses(JavaFileManagerImpl.java:84)
	at com.intellij.psi.impl.file.impl.JavaFileManagerImpl.findClass(JavaFileManagerImpl.java:110)
	at com.intellij.psi.impl.PsiElementFinderImpl.findClass(PsiElementFinderImpl.java:51)
	at com.intellij.psi.impl.JavaPsiFacadeImpl.doFindClass(JavaPsiFacadeImpl.java:91)
	at com.intellij.psi.impl.JavaPsiFacadeImpl.findClass(JavaPsiFacadeImpl.java:69)
	at org.intellij.clojure.java.JavaHelper$PsiHelper.findClass(clojure-psi-java.kt:133)
	at org.intellij.clojure.psi.impl.CSymbolReference.findClass(clojure-psi-resolve.kt:672)
	at org.intellij.clojure.psi.impl.CSymbolReference.processDeclarations(clojure-psi-resolve.kt:400)
	at org.intellij.clojure.psi.impl.CSymbolReference.multiResolveInner(clojure-psi-resolve.kt:257)
	at org.intellij.clojure.psi.impl.CSymbolReference$Companion$RESOLVER.resolve(clojure-psi-resolve.kt:200)
	at org.intellij.clojure.psi.impl.CSymbolReference$Companion$RESOLVER.resolve(clojure-psi-resolve.kt:199)
	at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$resolve$1(ResolveCache.java:154)
	at com.intellij.openapi.util.Computable.get(Computable.java:18)
	at com.intellij.psi.impl.source.resolve.ResolveCache.lambda$loggingResolver$4(ResolveCache.java:260)
	at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
	at com.intellij.openapi.util.RecursionGuard.doPreventingRecursion(RecursionGuard.java:43)
	at com.intellij.openapi.util.RecursionManager.doPreventingRecursion(RecursionManager.java:68)
	at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:237)
	at com.intellij.psi.impl.source.resolve.ResolveCache.resolve(ResolveCache.java:154)
	at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:169)
	at com.intellij.psi.impl.source.resolve.ResolveCache.resolveWithCaching(ResolveCache.java:162)
	at org.intellij.clojure.psi.impl.CSymbolReference.multiResolve(clojure-psi-resolve.kt:215)
	at com.intellij.psi.PsiPolyVariantReferenceBase.resolve(PsiPolyVariantReferenceBase.java:47)
	at org.intellij.clojure.psi.impl.CSymbolReference.resolve(clojure-psi-resolve.kt:195)
	at org.intellij.clojure.psi.impl.Clojure_psi_symbolsKt.resolveInfo(clojure-psi-symbols.kt:67)
	at org.intellij.clojure.lang.ClojureQualifiedNameProvider.adjustElementToCopy(clojure-language.kt:96)
	at com.intellij.ide.actions.QualifiedNameProviderUtil.adjustElementToCopy(QualifiedNameProviderUtil.java:16)
	at com.intellij.ide.actions.CopyReferenceUtil.adjustElement(CopyReferenceUtil.java:98)
	at com.intellij.ide.actions.CopyReferenceUtil.lambda$getElementsToCopy$0(CopyReferenceUtil.java:94)
	at com.intellij.util.containers.ContainerUtil.mapNotNull(ContainerUtil.java:1963)
	at com.intellij.ide.actions.CopyReferenceUtil.getElementsToCopy(CopyReferenceUtil.java:92)
	at com.intellij.ide.actions.CopyPathProvider.update(CopyPathProvider.kt:30)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performDumbAwareUpdate$0(ActionUtil.java:130)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareUpdate(ActionUtil.java:144)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.doUpdate(ActionUpdater.java:584)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$updateActionReal$7(ActionUpdater.java:132)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:176)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.updateActionReal(ActionUpdater.java:133)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$new$0(ActionUpdater.java:113)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.update(ActionUpdater.java:570)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater$UpdateSessionImpl.presentation(ActionUpdater.java:686)
	at com.intellij.openapi.actionSystem.ActionGroupUtil.lambda$getActiveActions$0(ActionGroupUtil.java:34)
	at com.intellij.util.containers.JBIterator$FilterOp.apply(JBIterator.java:310)
	at com.intellij.util.containers.JBIterator.peekNext(JBIterator.java:150)
	at com.intellij.util.containers.JBIterator.hasNext(JBIterator.java:110)
	at com.intellij.util.containers.JBIterable.isEmpty(JBIterable.java:780)
	at com.intellij.openapi.actionSystem.ActionGroupUtil.isGroupEmpty(ActionGroupUtil.java:21)
	at com.intellij.ide.actions.NonTrivialActionGroup.update(NonTrivialActionGroup.java:26)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performDumbAwareUpdate$0(ActionUtil.java:130)
	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareUpdate(ActionUtil.java:144)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.doUpdate(ActionUpdater.java:584)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$updateActionReal$7(ActionUpdater.java:132)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.callAction(ActionUpdater.java:176)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.updateActionReal(ActionUpdater.java:133)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$new$0(ActionUpdater.java:113)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.update(ActionUpdater.java:570)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:414)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$23(ActionUpdater.java:394)
	at com.intellij.util.TimeoutUtil.compute(TimeoutUtil.java:134)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$25(ActionUpdater.java:393)
	at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1483)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:393)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandGroupChild(ActionUpdater.java:469)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$23(ActionUpdater.java:394)
	at com.intellij.util.TimeoutUtil.compute(TimeoutUtil.java:134)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$doExpandActionGroup$25(ActionUpdater.java:393)
	at com.intellij.util.containers.ContainerUtil.concat(ContainerUtil.java:1483)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.doExpandActionGroup(ActionUpdater.java:393)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.expandActionGroup(ActionUpdater.java:230)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupAsync$14(ActionUpdater.java:281)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupAsync$16(ActionUpdater.java:305)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1078)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupAsync$17(ActionUpdater.java:305)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:161)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupAsync$18(ActionUpdater.java:301)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:183)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:705)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:647)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:63)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:170)
	at com.intellij.openapi.progress.util.BackgroundTaskUtil.runUnderDisposeAwareIndicator(BackgroundTaskUtil.java:270)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupAsync$19(ActionUpdater.java:300)
	at com.intellij.codeWithMe.ClientId$Companion.withClientId(ClientId.kt:135)
	at com.intellij.codeWithMe.ClientId.withClientId(ClientId.kt)
	at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$expandActionGroupAsync$20(ActionUpdater.java:298)
	at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:216)
	at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:27)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:195)
	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:184)
	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)

unable to resolve nested symbol

What is the problem?

(:require [snitch.corelib [utils :as u]]) can't be recognized, it reports unable to resolve 'utils'
But (:require [snitch.corelib.utils :as u]) can be recognized very well

Bug screeshot:
bug_example

Good screeshot:
works_example

What's the software config?

IntelliJ IDEA

IntelliJ IDEA 2019.3.4 (Community Edition)
Build #IC-193.6911.18, built on March 17, 2020
Runtime version: 11.0.6+8-b520.43 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
macOS 10.15.2

Clojure-Kit

Clojure-Kit Version 2019.3.1 Nov 27, 2019

License?

What license is this released under?

Repl connection broken on intellij 2018.1.4

Hey, I noticed today that i can't connect to repl any more. When i press the connect to repl menu option then all i get is the notification

"10:00 Error running 'REPL [localhost:46747]': lateinit property consoleView has not been initialized "

Steps to reproduce :
Have intellij 2018.1.4 , Clojure-Kit plugin 0.7.3 , project with leiningen at hand, open project in idea.

;;; in shell

$ lein repl
nREPL server started on port 46747 on host 127.0.0.1 - nrepl://127.0.0.1:46747
REPL-y 0.3.7, nREPL 0.2.12
Clojure 1.8.0
... usual clojure loading messages and shell appear

;; And now when pressing the connect to repl button in ide and entering the port number the error message appears in IDE

I remember it working in the past, so i suspect intellij changed something.

PS. Thanks for working on the clojure-kit plugin, it's my favourite way of poking around clojure.

Unable to resolve local namespaces without ":as"

image

If use with alias (:as) all works fine

(ns app.core
  (:require [app.web :as web]
            [app.cache :as cache]))

Example project:
https://github.com/Aidbox/chat/blob/master/src/app/core.clj

IntelliJ IDEA 2020.2.3 (Ultimate Edition)
Build #IU-202.7660.26, built on October 6, 2020
Licensed to JetBrains Team /
Subscription is active until December 10, 2020
Runtime version: 11.0.8+10-b944.34 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 10.16
GC: G1 Young Generation, G1 Old Generation
Memory: 8112M
Cores: 12
Registry: editor.distraction.free.mode=true
Non-Bundled Plugins: Alt n 8, IdeaVIM, com.intellij.plugins.xwinkeymap, net.vektah.codeglance, org.jetbrains.idea.clojure, com.jetbrains.upsource, com.jetbrains.codeWithMe, quokka.js, some.awesome, wallaby.js, Jetbrains TeamCity Plugin, Dart, io.flutter, Karma, org.jetbrains.kotlin, izhangzhihao.rainbow.brackets

Debugger support?

Are there any plans on supporting the debugger? Last mention of a debugger is from 2016, which was a long time ago. It is the only thing missing in this fantastic plugin.

I have tried connecting to a remote JVM, it connected, but it does not pause on breakpoints. I have :jvm-opts in the project.clr, then lein run, and then connect to the remote JVM.

Indentation is inconsistent with style guide

We're following this community style guide, which seems to be referenced in various places and generally accepted as the standard: https://github.com/bbatsov/clojure-style-guide

As per https://github.com/bbatsov/clojure-style-guide#body-indentation, we were expecting if, when, when-not etc to indent 2 spaces, i.e.

(if (condition-fn variable)
  (true-fn)
  (false-fn))

(when (condition-fn variable)
  (true-fn))

(when-not (condition-fn variable)
  (true-fn))

but macro arguments should vertically align, i.e.

(-> foo
    bar
    baz
    gzork)

(->> foo
     bar
     baz
     gzork)

What Clojure-Kit actually seems to do is vertically align in all cases, so you end up with

(when-not (condition-fn variable)
          (true-fn))

I've had a look at the Clojure-Kit source, but thus far haven't managed to work out where to change this/submit a pull request. I know it's possible, because Cursive follows the documented style (I think it may even have an option to switch between whichever you prefer).

Is it possible to modify the indentation style Clojure-Kit is using, or add an option to switch between them?

Is there a view for unit tests?

only way to run unit tests now is to run lein test on the terminal? it would be useful, if you could run a namespace -based test collection or similar.

Transitive dependencies are not resolved

When there's deps.edn file with the following content

{:paths ["src"]
 :deps {
  duct/core {:mvn/version "0.7.0"}}
 }

And there's src/test.clj with the following content

(ns test
  (:require [integrant.core :as ig]
            [duct.core :as duct]))

duct.core is resolved, but integrant.core is not resolved.

Screen Shot 2022-01-08 at 10 13 05 PM

clojure -Stree

duct/core 0.7.0
  . integrant/integrant 0.7.0
    . weavejester/dependency 0.2.1
  . medley/medley 1.0.0
  . fipp/fipp 0.6.14
    . org.clojure/core.rrb-vector 0.0.13

"Latest dev build" link returns 404

Responding with error, status code: 404 (Not Found).
Details: jetbrains.buildServer.server.rest.errors.NotFoundException: Cannot provide content for ''. To get children use '/app/rest/builds/id:3503901/artifacts/children/'.
Could not find the entity requested. Check the reference is correct and the user has permissions to access the entity.

Broken with IntellIJ 2019

It would appear the latest IntellIJ release has broken this plugin. While importing a project seemed to work, any new *.clj files I attempt to create are not recognized.

Downgrading to the last 2018 release solved the issue.

Code formatter moves closing brackets into comment

When formatting code where a line comment is in the last position in the form "format code" action moves closing brackets into a comment line thus changing the code meaning.
Examples:

((asdf
;; This is a comment
))

after formatting becomes

((asdf
;; This is a comment))

If comment is not in the last position then code formatting works fine:

((asdf
;; This is a comment
123))

after formatting

((asdf
  ;; This is a comment
  123))

Expected: After code formatting keep closing brackets below comment line.
Using: Clojure-Kit 0.7.6

Great stuff

Greg, thank you for what you are doing. I'm trying Clojure-Kit and I'm surprised, great work!

*Sorry for the issue ๐Ÿ˜…

Do not perform a synchronous refresh under read lock (causes deadlocks if there are events to fire). EDT=false

Getting this exception for the following configuration:

  • IntelliJ IDEA 2023.2.3 (Ultimate Edition)
  • Build #IU-232.10072.27, built on October 10, 2023
  • macOS 14.0
java.lang.Throwable: Do not perform a synchronous refresh under read lock (causes deadlocks if there are events to fire). EDT=false
	at com.intellij.openapi.diagnostic.Logger.error(Logger.java:370)
	at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.execute(RefreshQueueImpl.java:62)
	at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.launch(RefreshSessionImpl.java:119)
	at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.processEvents(RefreshQueueImpl.java:189)
	at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.createAndFindChildWithEventFire(VirtualDirectoryImpl.java:308)
	at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.findChild(VirtualDirectoryImpl.java:87)
	at com.intellij.openapi.vfs.newvfs.impl.VirtualDirectoryImpl.refreshAndFindChild(VirtualDirectoryImpl.java:349)
	at com.intellij.openapi.vfs.newvfs.VfsImplUtil.refreshAndFindFileByPath(VfsImplUtil.java:117)
	at com.intellij.openapi.vfs.impl.local.LocalFileSystemBase.refreshAndFindFileByPath(LocalFileSystemBase.java:132)
	at com.intellij.openapi.vfs.LocalFileSystem.refreshAndFindFileByIoFile(LocalFileSystem.java:42)
	at org.intellij.clojure.tools.Tools_depsKt.resolveDependency(tools-deps.kt:232)
	at org.intellij.clojure.tools.Tools_depsKt.access$resolveDependency(tools-deps.kt:1)
	at org.intellij.clojure.tools.ClojureProjectDeps$allDependencies$2.invoke(tools-deps.kt:90)
	at org.intellij.clojure.tools.ClojureProjectDeps$allDependencies$2.invoke(tools-deps.kt:66)
	at org.intellij.clojure.tools.Tools_depsKt$sam$com_intellij_util_Function$0.fun(tools-deps.kt)
	at com.intellij.util.containers.JBIterator$MapOp.apply(JBIterator.java:271)
	at com.intellij.util.containers.JBIterator.peekNext(JBIterator.java:132)
	at com.intellij.util.containers.JBIterator.hasNext(JBIterator.java:92)
	at com.intellij.util.containers.JBIterable.addAllTo(JBIterable.java:884)
	at org.intellij.clojure.tools.ClojureProjectDeps.getAllDependencies(tools-deps.kt:92)
	at org.intellij.clojure.tools.ClojureProjectDeps$RootsProvider.getAdditionalProjectLibraries(tools-deps.kt:77)
	at com.intellij.openapi.roots.impl.RootIndex.buildRootInfo(RootIndex.java:163)
	at com.intellij.openapi.roots.impl.RootIndex.getOrderEntryGraph(RootIndex.java:349)
	at com.intellij.openapi.roots.impl.RootIndex.getOrderEntries(RootIndex.java:843)
	at com.intellij.openapi.roots.impl.DirectoryIndexImpl.getOrderEntries(DirectoryIndexImpl.java:146)
	at com.intellij.openapi.roots.impl.ProjectFileIndexImpl.getOrderEntriesForFile(ProjectFileIndexImpl.java:105)
	at com.intellij.psi.search.ProjectAndLibrariesScope.compare(ProjectAndLibrariesScope.java:38)
	at com.intellij.psi.impl.file.impl.JavaFileManagerImpl.findClass(JavaFileManagerImpl.java:110)
	at com.intellij.psi.impl.PsiElementFinderImpl.findClass(PsiElementFinderImpl.java:40)
	at com.intellij.psi.impl.JavaPsiFacadeImpl.doFindClass(JavaPsiFacadeImpl.java:94)
	at com.intellij.psi.impl.JavaPsiFacadeImpl.findClass(JavaPsiFacadeImpl.java:72)
	at com.intellij.java.library.JavaLibraryUtil.lambda$getLibraryClassMap$0(JavaLibraryUtil.java:95)
	at com.intellij.util.containers.ConcurrentFactoryMap$2.create(ConcurrentFactoryMap.java:174)
	at com.intellij.util.containers.ConcurrentFactoryMap.get(ConcurrentFactoryMap.java:40)
	at java.base/java.util.concurrent.ConcurrentMap.getOrDefault(ConcurrentMap.java:88)
	at com.intellij.java.library.JavaLibraryUtil.hasLibraryClass(JavaLibraryUtil.java:77)
	at com.intellij.ws.rest.utils.RSUtils.hasRestLibrary(RSUtils.java:154)
	at com.intellij.ws.rest.model.jam.RSSemContributor.isAvailable(RSSemContributor.java:37)
	at com.intellij.semantic.SemServiceImpl.lambda$collectProducers$2(SemServiceImpl.java:99)
	at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processWithPluginDescriptor(ExtensionPointImpl.java:300)
	at com.intellij.openapi.extensions.ExtensionPointName.processWithPluginDescriptor(ExtensionPointName.kt:139)
	at com.intellij.semantic.SemServiceImpl.collectProducers(SemServiceImpl.java:83)
	at com.intellij.semantic.SemServiceImpl.ensureInitialized(SemServiceImpl.java:161)
	at com.intellij.semantic.SemServiceImpl.createSemElements(SemServiceImpl.java:117)
	at com.intellij.semantic.SemServiceImpl.getSemElements(SemServiceImpl.java:111)
	at com.intellij.semantic.SemService.getSemElement(SemService.java:31)
	at com.intellij.microservices.url.parameters.RenameableSemElementKt.getSemElement(RenameableSemElement.kt:65)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt.l(SemElementRenamePsiElementProcessor.kt:160)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt.access$createPomTargetFromSemElement(SemElementRenamePsiElementProcessor.kt:1)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt$supportedElement$2.invoke(SemElementRenamePsiElementProcessor.kt:147)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt$supportedElement$2.invoke(SemElementRenamePsiElementProcessor.kt:147)
	at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:210)
	at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:170)
	at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
	at kotlin.sequences.SequencesKt___SequencesKt.firstOrNull(_Sequences.kt:168)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt.l(SemElementRenamePsiElementProcessor.kt:153)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt.l(SemElementRenamePsiElementProcessor.kt:147)
	at com.intellij.microservices.url.parameters.SemElementRenamePsiElementProcessorKt.access$supportedElement(SemElementRenamePsiElementProcessor.kt:1)
	at com.intellij.microservices.url.parameters.RenameableSemElementFindUsagesHandlerFactory.canFindUsages(SemElementRenamePsiElementProcessor.kt:38)
	at com.intellij.find.findUsages.FindUsagesManager.getFindUsagesHandler(FindUsagesManager.java:160)
	at com.intellij.find.findUsages.FindUsagesManager.getFindUsagesHandler(FindUsagesManager.java:154)
	at com.intellij.codeInsight.highlighting.HighlightUsagesKt.getPsiUsageRanges(highlightUsages.kt:83)
	at com.intellij.codeInsight.highlighting.HighlightUsagesKt.getUsageRanges(highlightUsages.kt:65)
	at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.lambda$highlightTargetUsages$0(IdentifierHighlighterPass.java:235)
	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:114)
	at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.highlightTargetUsages(IdentifierHighlighterPass.java:234)
	at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.highlightReferencesAndDeclarations(IdentifierHighlighterPass.java:210)
	at com.intellij.codeInsight.daemon.impl.IdentifierHighlighterPass.doCollectInformation(IdentifierHighlighterPass.java:97)
	at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$submitIdentifierHighlighterPass$5(BackgroundHighlighter.java:219)
	at com.intellij.codeInsight.daemon.impl.HighlightingSessionImpl.runInsideHighlightingSession(HighlightingSessionImpl.java:157)
	at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$submitIdentifierHighlighterPass$6(BackgroundHighlighter.java:217)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:133)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:114)
	at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:71)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
	at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:71)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:111)
	at com.intellij.codeInsight.highlighting.BackgroundHighlighter.lambda$submitIdentifierHighlighterPass$7(BackgroundHighlighter.java:214)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$OTelMonitor.callWrapped(NonBlockingReadActionImpl.java:832)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$OTelMonitor$MonitoredComputation.call(NonBlockingReadActionImpl.java:864)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.insideReadAction(NonBlockingReadActionImpl.java:602)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$attemptComputation$4(NonBlockingReadActionImpl.java:565)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1133)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:76)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtilService.runActionAndCancelBeforeWrite(ProgressIndicatorUtilService.java:63)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runActionAndCancelBeforeWrite(ProgressIndicatorUtils.java:133)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:114)
	at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:71)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
	at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:71)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:111)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:76)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.attemptComputation(NonBlockingReadActionImpl.java:565)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$1(NonBlockingReadActionImpl.java:466)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$2(NonBlockingReadActionImpl.java:481)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
	at java.base/java.lang.Thread.run(Thread.java:833)

Trouble connecting to REPL

Hi,

Just getting started with your package and I'm have a couple of issues, wondering if you could help.

I'm trying to initialize the connection to REPL, but on ctrl+shift+p I get an error:

Error running 'REPL [127.0.0.1:41187]':
lateinit property consoleView has not been intialized

which floats above the run icon. I'm using REPL-y 0.3.7, nREPL 0.2.12 and Clojure 1.8.0.

Thanks for this plugin, looking forward to using it.
Sam

Unable to build a plugin

Steps to reproduce

git clone https://github.com/gregsh/Clojure-Kit.git
cd Clojure-Kit
gradle runIde
FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':runIde'.
> Failed to query the value of task ':runIde' property 'ideDir'.
   > Could not resolve all files for configuration ':detachedConfiguration3'.
      > Could not find com.jetbrains.intellij.idea:ideaIC:203-EAP-SNAPSHOT.
        Searched in the following locations:
          - https://repo.maven.apache.org/maven2/com/jetbrains/intellij/idea/ideaIC/203-EAP-SNAPSHOT/maven-metadata.xml
          - https://repo.maven.apache.org/maven2/com/jetbrains/intellij/idea/ideaIC/203-EAP-SNAPSHOT/ideaIC-203-EAP-SNAPSHOT.pom
          - https://clojars.org/repo/com/jetbrains/intellij/idea/ideaIC/203-EAP-SNAPSHOT/maven-metadata.xml
          - https://clojars.org/repo/com/jetbrains/intellij/idea/ideaIC/203-EAP-SNAPSHOT/ideaIC-203-EAP-SNAPSHOT.pom
          - https://cache-redirector.jetbrains.com/www.jetbrains.com/intellij-repository/snapshots/com/jetbrains/intellij/idea/ideaIC/203-EAP-SNAPSHOT/maven-metadata.xml
          - https://cache-redirector.jetbrains.com/www.jetbrains.com/intellij-repository/snapshots/com/jetbrains/intellij/idea/ideaIC/203-EAP-SNAPSHOT/ideaIC-203-EAP-SNAPSHOT.pom
        Required by:
            project :

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/7.2/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 3s

com.jetbrains.intellij.idea:ideaIC:203-EAP-SNAPSHOT is not available anymore?

Strict doseq processing from IDE REPL?

Is there some trick to forcing doseq to send all output when in the Clojure-Kit repl? It seems to act like it's lazy. An example is shown below where I print some values out from lein repl and then from the repl inside the IDE. I don't see any way to control this if there is a config setting.

From a lein repl:

=> (doseq [x [1 2 3]] (prn x))
1
2
3
nil

From the Clojure-Kit repl inside Intellij:

=> (doseq [x [1 2 3]] (prn x))
nil
1

NReplClient: IllegalArgumentException: port out of range:-1

I got this error while working in RubyMine today. I have some Clojure files in my project but I haven't opened any of them in a long time, definitely not since the last machine restart.

java.lang.IllegalArgumentException: port out of range:-1
	at java.base/java.net.InetSocketAddress.checkPort(InetSocketAddress.java:143)
	at java.base/java.net.InetSocketAddress.<init>(InetSocketAddress.java:224)
	at java.base/java.net.Socket.<init>(Socket.java:231)
	at org.intellij.clojure.nrepl.NReplClient.connect(nrepl-client.kt:71)
	at org.intellij.clojure.tools.Tools_replKt.connect(tools-repl.kt:772)
	at org.intellij.clojure.tools.Tools_replKt.access$connect(tools-repl.kt:1)
	at org.intellij.clojure.tools.Tools_replKt$newRemoteProcess$process$1.<init>(tools-repl.kt:688)
	at org.intellij.clojure.tools.Tools_replKt.newRemoteProcess(tools-repl.kt:685)
	at org.intellij.clojure.tools.ReplConnectAction$actionPerformed$1.invoke(tools-repl.kt:128)
	at org.intellij.clojure.tools.ReplConnectAction$actionPerformed$1.invoke(tools-repl.kt:105)
	at org.intellij.clojure.tools.Tools_replKt$createNewRunContent$profile$1$getState$1.startProcess(tools-repl.kt:399)
	at com.intellij.execution.configurations.CommandLineState.execute(CommandLineState.java:61)
	at com.intellij.execution.runners.DefaultRunProgramRunner$execute$1.invoke(DefaultRunProgramRunner.kt:29)
	at com.intellij.execution.runners.DefaultRunProgramRunner$execute$1.invoke(DefaultRunProgramRunner.kt:12)
	at com.intellij.execution.impl.ExecutionManagerImpl$startRunProfile$1.invoke(ExecutionManagerImpl.kt:171)
	at com.intellij.execution.impl.ExecutionManagerImpl$startRunProfile$1.invoke(ExecutionManagerImpl.kt:70)
	at com.intellij.execution.impl.ExecutionManagerImpl$doStartRunProfile$startRunnable$1.run(ExecutionManagerImpl.kt:232)
	at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:214)
	at com.intellij.openapi.application.TransactionGuardImpl.access$200(TransactionGuardImpl.java:21)
	at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:196)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:794)
	at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:350)
	at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:84)
	at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:133)
	at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:46)
	at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:189)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:887)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:756)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:443)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:825)
	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:442)
	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:794)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:488)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

IDE information:

RubyMine 2021.2.1
Build #RM-212.5080.58, built on August 24, 2021
Runtime version: 11.0.11+9-b1504.16 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 11.6
GC: G1 Young Generation, G1 Old Generation
Memory: 2048M
Cores: 12
Non-Bundled Plugins: com.jetbrains.darkPurpleTheme (1.2), idea.plugin.protoeditor (212.5080.8), net.codestats.plugin.atom.intellij (1.0.9)

PyCharm crashed upon update to 2022.3.3

Clojure-kit plugin caused PyCharm to crash after updating PyCharm from 2022.2 (PY-222.4459.20) to 2022.3 (PY-223.8836.43):

image

Full stacktrace:

2023-03-15 12:02:15,347 [  10721] SEVERE - #c.i.o.a.i.FlushQueue - Cannot create com.intellij.openapi.roots.ProjectRootManager because container is already disposed (container=Project(name=IntelliWeb, containerState=DISPOSE_COMPLETED, componentStore=C:\workspace\IntelliWeb) (disposed))
com.intellij.serviceContainer.AlreadyDisposedException: Cannot create com.intellij.openapi.roots.ProjectRootManager because container is already disposed (container=Project(name=IntelliWeb, containerState=DISPOSE_COMPLETED, componentStore=C:\workspace\IntelliWeb) (disposed))
    at com.intellij.serviceContainer.ContainerUtilKt.throwAlreadyDisposedError(containerUtil.kt:40)
    at com.intellij.serviceContainer.ComponentManagerImpl.doGetService(ComponentManagerImpl.kt:695)
    at com.intellij.serviceContainer.ComponentManagerImpl.getService(ComponentManagerImpl.kt:629)
    at com.intellij.openapi.roots.ProjectRootManager.getInstance(ProjectRootManager.java:31)
    at com.intellij.openapi.roots.ex.ProjectRootManagerEx.getInstanceEx(ProjectRootManagerEx.java:13)
    at org.intellij.clojure.tools.ClojureProjectDeps$reindex$1$1.run(tools-deps.kt:97)
    at com.intellij.openapi.application.WriteAction.lambda$run$1(WriteAction.java:86)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteActionWithClass(ApplicationImpl.java:968)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWriteAction(ApplicationImpl.java:994)
    at com.intellij.openapi.application.WriteAction.run(WriteAction.java:85)
    at org.intellij.clojure.tools.ClojureProjectDeps$reindex$1.run(tools-deps.kt:96)
    at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:209)
    at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:21)
    at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:191)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:838)
    at com.intellij.openapi.application.impl.ApplicationImpl$3.run(ApplicationImpl.java:454)
    at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:74)
    at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:114)
    at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:36)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:779)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:730)
    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:724)
    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:749)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:909)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:756)
    at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$5(IdeEventQueue.java:437)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787)
    at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:436)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
    at com.intellij.ide.IdeEventQueue.performActivity(IdeEventQueue.java:615)
    at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:434)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:838)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:480)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
2023-03-15 12:02:15,349 [  10723] SEVERE - #c.i.o.a.i.FlushQueue - PyCharm 2022.3.3  Build #PY-223.8836.43
2023-03-15 12:02:15,349 [  10723] SEVERE - #c.i.o.a.i.FlushQueue - JDK: 17.0.6; VM: OpenJDK 64-Bit Server VM; Vendor: JetBrains s.r.o.
2023-03-15 12:02:15,349 [  10723] SEVERE - #c.i.o.a.i.FlushQueue - OS: Windows 11
2023-03-15 12:02:15,350 [  10724] SEVERE - #c.i.o.a.i.FlushQueue - Plugin to blame: Clojure-Kit version: 2020.3.1

After disabling Clojure-Kit plugin everything works as expected.
Original issue: https://youtrack.jetbrains.com/issue/IDEA-315505

load-file: HowTo

I did not find a place to ask questions, so I use an issue for it. I'm looking for a command to load a clojure file into the REPL (IntelliJ). Is this possible or planed? May be the FAQ could be updated for this question. There is a possible workaround by selecting all (with Ctrl-A) and Ctrl-Enter load selected forms into the REPL.

Console output

@gregsh why some output messages are not shown on the console? If I start the nREPL server on the terminal it looks like:

screen shot 2017-06-14 at 17 20 52

...but if I start using Clojure-Kit when evaluating a form it doesn't show it. The same happens when I start Fighweel.

Am I missing something? Could I fix it just be changing some kind of preferences on IntelliJ?

Rainbow parentheses option

@gregsh, first of all I'd like to say thanks for your great work of reviving open-source clojure plugin! It's amazing.

What I personally miss from the days of good old la-clojure is a rainbow parentheses option.
So I'm wondering if there are any plans to include this feature in Clojure-Kit?

If you are not somehow familiar with what I'm talking about, here are some screenshots:

Settings:
screen shot 2017-06-25 at 18 40 42

Editor:
screen shot 2017-06-25 at 18 49 21

Plug In Listing

This plugin does not seem to be listed in the IDE search. Can this be added so you can directly install from the IDE?

Question: Configure file association

I'm trying to use this plugin for a clojure dialect with a different file-extension that .clj. If I rename the files the plugin works great.

Is there a way to configure the plugin to highlight the syntax for other file-extensions?

how do you disable parameter info inlays?

Hi, After pulling in the latest version of this repo, i noticed we had parameter info in-line with the current code which caused a bit of confusion as i am not use to it yet.

I was wondering if you can tell me how to disable it in the intellij.

No error notification when syncing projects and "lein" can't be found

It would be nice if a small Tooltip could be shown if project synchronization fails.

I just get this exception in idea.log which makes it clear what I need to do, but I was wondering why nothing seemed to happen for a while.

2018-11-27 11:07:20,291 [ 690536]  ERROR - intellij.openapi.progress.Task - Cannot run program "lein" (in directory "C:\Entwicklungstools\workspace\VisualReview"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden 
com.intellij.execution.process.ProcessNotCreatedException: Cannot run program "lein" (in directory "C:\Entwicklungstools\workspace\VisualReview"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden
	at com.intellij.execution.configurations.GeneralCommandLine.createProcess(GeneralCommandLine.java:416)
	at com.intellij.execution.process.OSProcessHandler.startProcess(OSProcessHandler.java:51)
	at com.intellij.execution.process.OSProcessHandler.<init>(OSProcessHandler.java:44)
	at org.intellij.clojure.tools.Tools_depsKt.collectDeps(tools-deps.kt:181)
	at org.intellij.clojure.tools.Tools_depsKt.access$collectDeps(tools-deps.kt:1)
	at org.intellij.clojure.tools.ClojureProjectDeps$resolveDepsInBackground$1.run(tools-deps.kt:164)
	at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:727)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:164)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:582)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:532)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:87)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:151)
	at com.intellij.openapi.progress.impl.CoreProgressManager$4.run(CoreProgressManager.java:403)
	at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:314)
	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)
Caused by: java.io.IOException: Cannot run program "lein" (in directory "C:\Entwicklungstools\workspace\VisualReview"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
	at com.intellij.execution.configurations.GeneralCommandLine.startProcess(GeneralCommandLine.java:444)
	at com.intellij.execution.configurations.GeneralCommandLine.createProcess(GeneralCommandLine.java:412)
	... 18 more
Caused by: java.io.IOException: CreateProcess error=2, Das System kann die angegebene Datei nicht finden
	at java.lang.ProcessImpl.create(Native Method)
	at java.lang.ProcessImpl.<init>(ProcessImpl.java:386)
	at java.lang.ProcessImpl.start(ProcessImpl.java:137)
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
	... 20 more

Do I still need to install lein repl ?

Thank you for the plugin. Do I still need to install lein repl on Windows in order to get run something like the following?
(describe "Sum of multiples of 3 and 5"
(it "should be zero if limit less than 3"
(should= 0 (sum-multiples-3-5 0))
(should= 0 (sum-multiples-3-5 1))
(should= 0 (sum-multiples-3-5 2)))
When I highlight it and crtl-enter I see: Can not run lein in directory...

New project

How do I create a new project with IntelliJ IDEA 2016.3.5?
I can't neither create a new clojure project nor open an existing one with the plugin installed.
I am missing something?

Cannot start REPL

Hello and thanks for this nice plugin!

I have encountered a problem while trying to start the REPL, either via the shortcut (Ctrl + Enter) or from the menu Tools -> Clojure -> Start REPL.

Although Leiningen is installed and lein is accessible as an executable, I am getting an error similar to the following:

Cannot run <PROJECT NAME> REPL "lein" not found (working directory <PROJECT DIRECTORY>): error=2 No such file or directory

I have taken a look at the source code but could not find any visible issue.

Is there any additional configuration required for Leiningen specifically?

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.