Fork me on GitHub
#vim
<
2016-12-06
>
dominicm11:12:23

I just wrote something that might interest those here. https://github.com/SevereOverfl0w/.files/commit/7e24428b70b508786f8d9931a35407763c90340c added a Unite interface to the ability to find other usages of a symbol. Works within a function/let too which is awesome. I'll probably shoe-horn it into a plugin at some point too, and attempt to add support for the location list and fzf and denite.

dominicm11:12:33

But for now, feel free to steal that and use it.

dominicm11:12:17

Maybe the denite version will be only for acid, so I can do it async and enjoy that fact.

zamaterian11:12:23

Have you started using acid ?

dominicm11:12:05

Not quite yet, there is some code pending review to add autocompletion support for acid though.

dominicm11:12:17

So it is likely usable, for some tasks at least.

juhoteperi11:12:48

@dominicm unite_find_symbol_syntax function is duplicated

dominicm11:12:17

Oops, yes. I wanted to rewrite without losing my progress, and forgot to delete the old one, thanks.

hkupty12:12:31

I'll start focusing on making acid better for extensibility and bother people to start using it instead of vim-fireplace on january..

dominicm12:12:57

I really need to get up to speed on the latest with Acid. 😄

dominicm12:12:08

I took 2 weeks off, and now I'm slogging through to catch up on everything.

hkupty12:12:40

I decided to shift my focus on making acid really a "deoplete" for async clojure plugins.

hkupty12:12:14

So I'll focus on making it fast, stable and easy to plug after holidays

zamaterian12:12:46

@ingvij will it support clojurescript ?

hkupty12:12:33

For now, I've not tested it, so I'm not sure..

dominicm12:12:30

Clojurescript support is easy in principle. So I don't think it will be a problem to handle cljs, as long as sessions are handled correctly.

zamaterian12:12:28

For me clojurescript in vim has been a pain point.

hkupty13:12:56

Hopefully we can make it easier..

spacepluk17:12:29

hi there, how is acid better than fireplace?

spacepluk17:12:44

I like better things hehe

hkupty17:12:34

Acid is designed to be asynchronous (thus, nothing blocks your editor). It is also designed to be extensible

hkupty17:12:13

It means that adding new functionalities such as better refactoring is simple and non-blocking 🙂

dominicm18:12:22

@zamaterian Rather — It should be simple. Figwheel has been a real pain, but now works 100% which is great. I understand the underlying nrepl mechanics fairly well now, and I will try and make sure to guide Acid in a direction that (to the best of my understanding) will make Clojurescript a simple process.

dominicm18:12:02

I'm very torn on whether or not we should be mirroring the :Piggieback behaviour of fireplace for example. As it: - Couples us to things which is pre- cemerick.piggieback/something (this was the problem with Figwheel, it didn't expose this!) - Doesn't make it easy to use other things which hijack a session such as https://github.com/gfredericks/debug-repl I think the problem is in two parts: 1 Creating a new session - :Piggieback creates a new session inside the current normal session which is specific to Clojurescript 2 Choosing the correct session when valuating code I think that maybe there should be more exposure of (2) somehow.

dominicm18:12:21

I really do go on about this nREPL stuff don't I? 😆

spacepluk18:12:19

hehe, please do

spacepluk18:12:26

I'm trying to learn how it works

spacepluk18:12:58

but I don't really know what I'm doing

spacepluk18:12:12

and it's hard to find docs

spacepluk18:12:55

but it works better with fireplace actually

spacepluk18:12:31

I don't understand how I should manage sessions, so now I'm just blindly redirecting to the arcadia repl, any advice?

dominicm19:12:16

@spacepluk the nrepl provides native session support, which you can clone, and every message with a unique id runs in isolation, with its out

spacepluk19:12:48

what is the meaning of cloning here?

dominicm20:12:24

@spacepluk you can clone it to create a new cljs session for example.

dominicm20:12:05

That replique looks really interesting considering the job api in neovim, I might try playing with that, for science!

jebberjeb23:12:43

Huh, replique uses socket repl.

juhoteperi23:12:29

I gather that replique has solved the socket repl tooling problem with a Lein plugin which loads the replique library

juhoteperi23:12:51

I guess it is okay as the library doesn't have dependencies that would pollute the classpath (and anyway, it could use name mangling like cider-nrepl and refactor-nrepl)

juhoteperi23:12:32

Should be useful for clojure-socketrepl.nvim