emacs

yuhan 2026-05-02T17:25:58.444379Z

I've been catching up to date with the recent-ish changes to the 'modern' indent spec tuple format (never knew it was a thing in cljfmt this entire time :o) And it occured to me that this is one of the rare cases we'd be able to use elisp vector literals like [[:block 1] [:inner 2 0]] and get 100% syntax parity with Clojure? We'd get to avoid the need for quotes like '((:block 1)) and have it be more distinct from the legacy syntax, and I think the usual weirdness around eval semantics is moot since no one's dynamically splicing values into these literals

yuhan 2026-05-02T17:44:56.243579Z

on second thought maybe lists still make sense as an internal representation, easier to manipulate and bencode etc.. 🤔 But we could do a normalization step in places like put-clojure-indent to accept the vector form in addition to quoted-lists? And prefer it in the docstrings etc. - I'm thinking that might be a tiny win for consistency with non-Emacs contexts like the clj-format docs, if it's to be adopted as a cross-platform standard @bozhidar any thoughts - I was thinking of opening a gh issue it's a bit spread out over multiple repos

bozhidar 2026-05-02T21:47:57.671329Z

I’m open to discussing this, although we should keep in mind how rare vectors are in Elisp code. But I get the point that they might be useful in this context, and at least they’ll look familiar to Clojure programmers.