3 ms·
Do any non-emacses have anything like paredit?
by da39a3ee 5y ago
Do any non-emacses have anything like paredit?
- abhinav22 5y agoThis is what is holding me back from the other IDEs for Emacs. Also slime is great
- Jach 5y agoSlimv comes with a Paredit Mode: https://github.com/kovisoft/slimv https://github.com/kovisoft/slimv Personally I leave it off, though, never been a fan of anything trying to 'help' me automatically while I'm typing apart from indentation. I do appreciate vim-sexp occasionally with these mappings: https://github.com/tpope/vim-sexp-mappings-for-regular-people https://github.com/tpope/vim-sexp-mappings-for-regular-peopl... https://susam.in/blog/lisp-in-vim-with-slimv-or-vlime/ https://susam.in/blog/lisp-in-vim-with-slimv-or-vlime/ is a good overview of the differences between slimv and vlime (the two vim plugins) and how to use them.
- da39a3ee 5y agoYou write lisp without auto-inserting the closing paren when you open a paren? I honestly don't think that's a good idea. It's also something that's contributed to lack of lisp adoption -- people trying to write it without sensible editor support.
- Jach 5y agoYup, as I type ( and { and [ and " and manually close them in every other language and inevitably turn that stuff off if the IDE has it enabled. vim default has enough support -- when I type ) et al., it highlights the matching opening. Typing '%' in command mode jumps to the corresponding open/close bracket. Occasionally if I know I'm done with a function, and have a bunch of closing parens to insert, I'll use slimv's ctrl+x+0 to close them all for me. I'm a fan of rainbow parens which makes things nicer to look at too, but really, this Lisp meme becomes true after not very long: https://www.thejach.com/imgs/lisp_parens.png https://www.thejach.com/imgs/lisp_parens.png Or at least one tunes them out, just like one does with the syntactic noise in other languages. Editing them is natural. Speaking of noise, here's some out of context JS code from the first random file I opened in a really old project: } }); } ).on('error', function(e) { console.log('Error: ' + e); response.json({error: 'data_fetch_error'}, {}, 400); }).end(); }).then(function(next, urlstr) { Yup, all of those () and {}s and commas and semicolons and single quotes were inputted manually. I say to my editors, "just let me type". For Lisp, "sensible editor support" to me means something like slime support that enables REPL development. Lacking that in editors besides emacs (or not knowing about the support for alternate editors) has probably hurt adoption, sure, but I don't think the presence or absence of other editing tools that most every editor has (like keyword highlighting and other colors, auto-indentation, auto-completion, auto-bracket insert, intelli-sense stuff...) is a factor.