Been working on an improved indentexpr for vim-racket; if anyone is interesting in helping me dogfood it, please LMK and I'll clean it up and push a branch. Vim 9+ required.
Current improvements: handles {}
and #<<herestrings
correctly; indents (foo\nbar)
correctly (b
under f
instead of under o
). Current issues: speed when reindenting whole files (small functions have been fine so far). I've one last "trick" to port from the C source for get_lisp_indent
to try to speed things up which effectively uses the buffer contents like a cache; this should solve the speed problems.