-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove dependency step in order to use the extension #21
Comments
@fasfsfgs have you already tried this approach? One of my fellows is working on a similar stuff in this branch. @yurtaev could it be helpful? |
Some time ago I implemented this feature, but it needs more polishing... The implementation is available in this branch. |
@avli I'm working on your branch now. Btw this would probably also kill #37, wouldn't it? |
Awesome to hear that you have taken up the initiative! That's a good question and I don't have the answer yet. However, this particular issue says about removing the dependency step in order to use the extension. This means we may limit ourselves by doing exactly this thing – eliminating the necessity of editing profiles. The connection command, in turn, may be left untouched. On the other hand, from the UX point of view, it would be cool if the extension would magically start providing all its goodies without any attention from a user. What isn't clear for me is what to do if I need to set up an nREPL connection explicitly? For example, I need to connect to a remote REPL. Summing up, the solution I see at the moment is:
Does it make sense? |
Alright it does make sense. The need to connect to a remote REPL is a great point. If we are going to maintain manual connection, I don't think we can rule out #31. Not sure. I'll start by polishing those two ways of connecting to a REPL. While I do this, let's discuss here what we should provide. I think a good start is to automatically connect to a REPL like you said. If the user has specific needs, he can disconnect from this first REPL and connect to his manual one. Or even get back to another automatic REPL. |
Yes, you're right, #31 is not a duplicating issue in this case. Another idea just came out: what if we leave the "Connect to nREPL" command untouched but it won't ask for connection parameters. Instead, it will connect to an existing nREPL (if any) or start an internal one if no nREPL is running. I believe this is the approach CIDER uses. However, I'm not sure which of two is better. What do you think? |
I see. But if we don't ask for parameters, we prevent them from connecting to a remote REPL for example. I think we should clearly distinct between the 2 connection modes. I think this will avoid confusion when using them and also simplify the logic. Here are the commands I was thinking to provide:
When the user opens a clojure project, I think we should always do a Start REPL. If they want to manually connect to a running REPL, they'd have to disconnect first. And later, like you said, we can leverage vscode project settings to change this default behavior. |
@fasfsfgs Thank you for summing up the things. I'm 100% support the suggested approach. |
Great! Thanks! I'll follow those ideas then. I'll let you know if I get stuck in some case. |
coda_hale commented this in reddit
The text was updated successfully, but these errors were encountered: