Fork me on GitHub

Haven't seen any issues with the new Cursive on 2016.1 so far simple_smile


Been rock solid


Nice! There are a few issues but nothing too serious so far, #1302 is the worst of it I think.


I’ll get a fix out for these in the next day or two.


Mmm, I get this error: `WARN: Can't load Cursive for v15: until build 143.9999 does not match IU-145.258 WARN: Can't load PluginDescriptor[name='Cursive', classpath='/tmp/plugin/clojure-plugin']: until build 143.9999 does not match IU-145.258 `


weird, as I'm definitely using version 145


@doddenino: I had that issue yesterday too. (See the logs above)


Only way was for me to manually install the zip. (Linked above)


I think it's more an issue with intellij update. I'll try to uninstall everything as soon as I find out how


@rauh: I also had to install it from the zip. Thanks!


First impressions after about a day with it: Parinfer is interesting, but too fiddly.


@ricardo: how do you mean fiddly?


@grav: Maybe I’m unused to it, but it is non-trivial to figure out what Parinfer will do in some situations. Say, if I have a function for tests, and want to continue adding comments near the end, Parinfer starts doing a little ordering dance.


Might be easier to explain if I record a video, one moment.


Nice spammy header, Mega.


Maybe I need to get used to its logic, or maybe it just doesn’t fit my approach of “let’s open up space in this function to start adding things”.


But I’ve also triggered other cases of non-obvious behavior when editing existing code.


@ricardo: Parinfer will never allow to sit a closing paren on its own on a line so a trailing comment in any form isn't possible. Only if you add more code below it'll be ok.


That also tripped me up in the beginning but once you realize that closing parens are always behind the last statement then it's clear what's going on.


@rauh: Yes, I’ve noticed. I just wanted to write the comment, then the tests… It just feels weird that for me to do that, I need to start writing my comment and the next assertion outside the deftest, and trust Parinfer will extend the deftest to encompass it.


Which it does, it just feels odd.


Yes, I agree it's a little odd at time. But I got used to it quickly. I still use some paredit functionality but it's nice to never have to worry about unbalanced parens with parinfer on.


I can now just delete whatever I like (even with selection and it'll be balanced.


Neither you have to worry about it with paredit. For me parinfer mostly is an advantage when re-nesting code, since it’s easier than select-chunk-plunk-chunk-elsewhere.


I can copy and paste the wildest unbalanced clojure code and it'll fix it magically


I guess I have to get used to trusting the magic. simple_smile


Yes, I started to trust it simple_smile Got some compile errors in the beginning (messing up let) but now I'm more productive I'd say


It’s also odd that on that sample video it extended the comment on the next line when I press enter, but if I do it on any other comment it doesn’t happen.


Not sure if that’s Cursive or Parinfer, but on Paredit mode it doesn’t happen on either case.


That is, not sure if that’s a Cursive peculiarity, or specifically happens on the parinfer mode.


Ah, nevermind. That’s because the closing parens that was left inside the comment is after the cursor.


If there’s any text after the cursor, Cursive extends the comment to the next line when you press enter.


@rauh: Yes, one case where parinfer made a dog’s breakfast out of things for me were let bindings. Still have to repro it.


@ricardo: It only messes up if the code is indented too far in. In that case I CTRL-W "select" the block and Shirt+tab it back. Then it's fixed.


Hmm, can’t say it was indented too far… Maybe it acted like it was indented too far because I have aligned let bindings turned on, and there was a long-ish name?


Aha, no, I think I found what it was. My let issue was probably related to something like this:


Where it wasn’t obvious to me initially that parinfer had extended the hashmap to encompass values it shouldn’t have.


Why it bit me was because my usual approach is to first split the line, then tell Cursive to reformat… but can’t do that with parinfer.


I have just updated to 2016.1 and also updated Cursive however all of the keywords in my project are not highlighted. Is anyone else having this problem? That is occurring everywhere for me.


Just the syntax highlighting problem, not the dep cycle problem simple_smile