> Here's my first attempt at a real-life use. And here's a second attempt, which is a tentative patch for `eglot.el`. This one does make use of the `before` argument, so it exercises more the API. The `eglot--virtual-pos-to-lsp-position` is not completely satisfactory, since to compute the LSP position of the end of the chunk before it was modified, I end up creating a temp buffer to insert the part of the text that changed (to count its line+column, which is much easier in a buffer than in a string). That kinda sucks performancewise, but we do it at most once per command rather than once per buffer-modification, so it should be lost in the noise. The upside is that we're insulated from the quirks of the after/before-change-functions evidenced by the copious comments referring to various bug reports. Stefan