Compare commits

...

1 Commits

Author SHA1 Message Date
Zanie
6c8017ef13 Allow additional text to folllow formatter pragma comments 2023-11-28 13:32:48 -06:00
5 changed files with 126 additions and 1 deletions

View File

@@ -0,0 +1,27 @@
# fmt: off
x = 1
# fmt: on
# fmt: off reason
x = 1
# fmt: on
# fmt: off reason
x = 1
# fmt: on
# fmt: off
x = 1
# fmt: on reason
# fmt: off reason
x = 1
# fmt: on reason
# fmt: off - reason
x = 1
# fmt: on
# fmt: off
x = 1
# fmt: on - reason

View File

@@ -0,0 +1,3 @@
x = 1 # fmt: skip
x = 1 # fmt: skip reason
x = 1 # fmt: skip - reason

View File

@@ -178,7 +178,14 @@ impl SourceComment {
"off" => Some(SuppressionKind::Off),
"on" => Some(SuppressionKind::On),
"skip" => Some(SuppressionKind::Skip),
_ => None,
// Allow additional context separated by whitespace
command => match command.split_whitespace().next() {
Some("off") => Some(SuppressionKind::Off),
Some("on") => Some(SuppressionKind::On),
Some("skip") => Some(SuppressionKind::Skip),
_ => None,
},
}
} else if let Some(command) = trimmed.strip_prefix("yapf:") {
match command.trim_whitespace_start() {

View File

@@ -0,0 +1,68 @@
---
source: crates/ruff_python_formatter/tests/fixtures.rs
input_file: crates/ruff_python_formatter/resources/test/fixtures/ruff/fmt_on_off/reason.py
---
## Input
```python
# fmt: off
x = 1
# fmt: on
# fmt: off reason
x = 1
# fmt: on
# fmt: off reason
x = 1
# fmt: on
# fmt: off
x = 1
# fmt: on reason
# fmt: off reason
x = 1
# fmt: on reason
# fmt: off - reason
x = 1
# fmt: on
# fmt: off
x = 1
# fmt: on - reason
```
## Output
```python
# fmt: off
x = 1
# fmt: on
# fmt: off reason
x = 1
# fmt: on
# fmt: off reason
x = 1
# fmt: on
# fmt: off
x = 1
# fmt: on reason
# fmt: off reason
x = 1
# fmt: on reason
# fmt: off - reason
x = 1
# fmt: on
# fmt: off
x = 1
# fmt: on - reason
```

View File

@@ -0,0 +1,20 @@
---
source: crates/ruff_python_formatter/tests/fixtures.rs
input_file: crates/ruff_python_formatter/resources/test/fixtures/ruff/fmt_skip/reason.py
---
## Input
```python
x = 1 # fmt: skip
x = 1 # fmt: skip reason
x = 1 # fmt: skip - reason
```
## Output
```python
x = 1 # fmt: skip
x = 1 # fmt: skip reason
x = 1 # fmt: skip - reason
```