parinfer

shaunlebron 2016-09-23T15:26:00.000006Z

@doglooksgood: sorry for late reply, I’ll turn on notifications in this channel

shaunlebron 2016-09-23T15:30:06.000007Z

you can look at atom-parinfer’s implementation here: https://github.com/oakmac/atom-parinfer/blob/master/src-cljs/atom_parinfer/core.cljs#L309

shaunlebron 2016-09-23T15:30:28.000010Z

he uses only the current top level s-exp

tianshu 2016-09-23T18:10:39.000013Z

@shaunlebron I've already solved this problem, the performance is ok. I think this plugin is pretty usable and I'm working on deloy it to melpa.

dominicm 2016-09-23T18:13:18.000014Z

I think the vim one does the whole file, with no noticeable performance issues

shaunlebron 2016-09-23T18:13:48.000015Z

@doglooksgood: great work!

tianshu 2016-09-23T18:15:17.000016Z

If I use whole buffer, process text more than 500 lines, then I can feel the delay.

tianshu 2016-09-23T18:15:52.000017Z

Now I use current top level + previous top level.

shaunlebron 2016-09-23T18:24:27.000018Z

the vim plugin (not nvim) only runs parinfer after you leave insert mode

shaunlebron 2016-09-23T18:24:58.000020Z

last i checked anyway

tianshu 2016-09-23T18:26:47.000021Z

I found the aggressive-indent in emacs, actually do the same thing with parinfer paren mode.

tianshu 2016-09-23T18:28:51.000022Z

The aggressive can also keep indentation when edit code like this

(print|    hello
           world)
I think this is handy.

tianshu 2016-09-23T18:58:02.000025Z

@shaunlebron May I add a link in parinfer homepage for https://github.com/DogLooksGood/parinfer-mode ?

shaunlebron 2016-09-23T19:14:21.000027Z

@doglooksgood: yeah, I’ll take a PR for the readme and the site (I list editor plugins in both places)