Yesterday I started to rewrite the mataroa-cli tool for the millionth time. This time I chose Rust to do it for three reasons:
- I like its type system1, even though I don't really like the borrow checker
- I can statically compile to multiple architectures, nice for a CLI tool
- The toolchain is really good, the LSP and Cargo are a blessing
While writing the initial portion of the code, I noticed a mild input lag every time I added a new crate. Weird, I'm not writing a lot of code and it's not my computer that is lagging. After a few minutes searching for the root cause, I discovered that Eglot prettifies the LSP's JSON RPC output. You can read more on the GNU Emacs bug report #65760.
The solution is quite simple:
(use-package eglot
:config
(advice-add 'jsonrpc--log-event :override #'ignore))
-
As much as I like Go and its toolchain, I really hate not having Discriminated Unions (called enums in Rust).↩