vim-codefmt
vim-codefmt copied to clipboard
Add ruff as formatter for Python
Hadn't heard about ruff yet but it looks great!
As a formatter, do you know if
- it has built-in support for range formatting (updating only a few target lines out of a file, plus whatever surrounding lines it needs to touch to make a complete valid formatting change)
- its formatting decisions tend to be stable (avoid fighting with existing valid formatting when there are multiple valid ways to format a piece of code, such as a list that's short enough to fit on one line) ?
@dbarnett As far as I know, ruff is more of a linter than a formatter. But because it has autofix support, it can also be regarded as a formatting tool (and it also have some rules related to code format).
- Yes and no, ruff not support range formatting as a command line tool, but can support range formatting with ruff-lsp.
- Yes, I think, as a linter, all rules that can be autofixed have only one way to autofix. So it not has "multiple valid ways to format a piece of code".
Hadn't heard about ruff yet but it looks great!
As a formatter, do you know if
- it has built-in support for range formatting (updating only a few target lines out of a file, plus whatever surrounding lines it needs to touch to make a complete valid formatting change)
- its formatting decisions tend to be stable (avoid fighting with existing valid formatting when there are multiple valid ways to format a piece of code, such as a list that's short enough to fit on one line) ?
Sorry for the late reply, the situation with the library is basically as described by st1020
- For range formatting, I found a related issue in ruff-lsp, but there is no built-in implementation
- yes, its formatting decisions tend to be stable .