parinfer

cfleming 2020-06-18T09:12:42.004300Z

That’s a bummer, I guess Shaun has no further interest in it.

cfleming 2020-06-18T09:13:00.004600Z

Or perhaps smart mode has just gone as far as it can.

Aron 2020-06-18T10:02:13.004900Z

smart mode?

Aron 2020-06-18T10:02:25.005200Z

I am new here, what is that? ☺️

pez 2020-06-18T10:47:36.007200Z

It is a blend of indent and paren mode, where the user virtually never has to toggle between them. It just does the right thing. It is super duper wonderfully nice. However, many editors lack the API/functionally to support it.

Tom H. 2020-06-18T12:01:44.007400Z

There's also https://github.com/oakes/parinferish

chrisoakman 2020-06-18T17:19:47.008200Z

I think Shaun's interest in Parinfer has waned. I have not heard from him in a while now; I'm not sure he is doing anything related to software anymore these days.

chrisoakman 2020-06-18T17:20:27.009100Z

I think it is worth noting that just because the repo is archived does not mean the project is "dead". The code still works great and many thousands of people use it daily if the atom-parinfer download numbers are to be believed.

chrisoakman 2020-06-18T17:21:10.009600Z

I will make some time to host / maintain that fork soon 🙂

Aron 2020-06-18T20:21:19.010Z

parinfer-rust uses smart mode by default?

chrisoakman 2020-06-18T20:28:48.012100Z

Smart mode is supported in most implementations of parinfer, including parinfer-rust. The trick is integrating smart mode with an editor: it is very tricky to get it correct and not all editors support the necessary plugins / API to make it work smoothly (this is the current problem with Smart Mode in VS Code, btw).

chrisoakman 2020-06-18T20:30:08.013300Z

As of right now, smart mode works well in: atom, Cursive, and "things that bind to parinfer-rust" (documented further in the parinfer-rust README)

chrisoakman 2020-06-18T20:31:02.014Z

There is some work to be done on integrating smart mode with more editors, but I think the biggest gap right now is probably VS Code. In terms of popularity / userbase.

Aron 2020-06-18T20:33:58.014200Z

I am using neovim

chrisoakman 2020-06-18T20:36:45.014800Z

parinfer generally works well with Vim (and derivatives) due to the modal nature of the editing process

chrisoakman 2020-06-18T20:37:29.015500Z

I am not a vim user, but I think neovim has good parinfer coverage. I do know that the VimL implementation of parinfer is kind of old and does not have smart mode.

chrisoakman 2020-06-18T20:37:43.015800Z

I think most people do not use it though; they use a different binding in neovim

Aron 2020-06-18T20:41:31.016Z

but which parinfer, there are so many

Aron 2020-06-18T20:43:22.017100Z

i have parinfer-rust enabled and it's fine but I am not sure if I use smart mode or not, since sometimes it completely breaks undo/redo and I have to disable/enable it