]> git.ipfire.org Git - thirdparty/vim.git/commit
runtime(rust): Do not use rustfmt as 'formatprg' by default
authorAaron Jacobs <jacobsa@google.com>
Mon, 27 Oct 2025 17:46:11 +0000 (17:46 +0000)
committerChristian Brabandt <cb@256bit.org>
Mon, 27 Oct 2025 17:46:11 +0000 (17:46 +0000)
commiteba51337d4b8051b768164f3394d680742234ca8
tree1651d4127f856abde7873e31aa4926a9637e118a
parent7d3b647f886d3bf9f9764ef644dfedfc5117f902
runtime(rust): Do not use rustfmt as 'formatprg' by default

This reverts commit 4ac995bf9366c6624a0724d19b2226f4c95694b3.

This was added in #16807, with no explanation for why it was necessary beyond
"it's an example of an idea". It completely breaks `gq` for me—rustfmt doesn't
reflow comments so is not an appropriate tool here! Beyond that, formatting a
selection with rustfmt treats that selection as if it were an entire file,
throwing away any indentation.

For example, the commit causes `gq` to turn this:

```rust
pub fn foo() {
    // blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
}
```

into this:

```rust
pub fn foo() {
// blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
}

```

which is totally wrong. In contrast, if I clear `formatprg` then `gq` does the
right thing again:

```rust
pub fn foo() {
    // blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
    // blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
    // blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
    // blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah blah
    // blah blah blah blah blah blah
}
```

related: #16967
related: #17055
closes: #18640

Signed-off-by: Aaron Jacobs <jacobsa@google.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/autoload/rustfmt.vim
runtime/doc/ft_rust.txt
runtime/ftplugin/rust.vim