Improving Eglot performance

Yesterday I started to rewrite the mataroa-cli tool for the millionth time. This time I chose Rust to do it for three reasons:

  1. I like its type system1, even though I don’t really like the borrow checker
  2. I can statically compile to multiple architectures, nice for a CLI tool
  3. 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))

  1. As much as I like Go and its toolchain, I really hate not having Discriminated Unions (called enums in Rust). ↩︎


Articles from blogs I follow around the net

The four tenets of SOA revisited

Twenty years after. In the January 2004 issue of MSDN Magazine you can find an article by Don Box titled A Guide to Developing and Running Connected Systems with Indigo. Buried within the (now dated) discussion of the technology…

via ploeh blog March 4, 2024

Building a demo of the Bleichenbacher RSA attack in Rust

Recently while reading Real-World Cryptography, I got nerd sniped1 by the mention of Bleichenbacher's attack on RSA. This is cool, how does it work? I had to understand, and to understand something, I usually have to build it. Well, friends, that is what…

via ntietz.com blog March 4, 2024

How to unbreak Dolphin on SteamOS after the QT6 update

A recent update to Dolphin made it switch to QT6. This makes it crash with this error or something like it: dolphin-emu: symbol lookup error: dolphin-emu: undefined symbol: _Zls6QDebugRK11QDockWidget, version Qt_6 This is fix…

via Xe Iaso's blog March 3, 2024

Generated by openring