如何实现lsp-mode只格式化修改过的行

在一个既有的codebase去改的时候,不希望lsp-mode的format修改了别人的代码的格式。

看到有类似的vscode的插件,https://marketplace.visualstudio.com/items?itemName=Gruntfuggly.format-modified。

不知道emacs的lsp实现有没有类似的功能。

lsp mode 有个 lsp-format-region,可以只格式化部分代码,但是需要 lsp server 支持 textDocument/rangeFormatting
有了这个基本要求之后,可以再配合某些只格式化修改部分的包,但是我没用过 emacs 里类似的包。

ws-butler 有类似的功能:只格式化修改过的部分行的多余空格。