Skip to content

Commit 32ffee4

Browse files
feat: split "long code blocks" rule into suggestion and warning (#173)
* reduce "long codeblock" rule to 35 lines * add suggestion rule for >25 lines * expect blank line after MyST options * match codeblock lines more carefully * fix: 17a/b allow no blank line in MD after option block --------- Co-authored-by: secondskoll <michael.park@canonical.com>
1 parent 0dbc5f7 commit 32ffee4

File tree

5 files changed

+773
-140
lines changed

5 files changed

+773
-140
lines changed

styles/Canonical/017-Avoid-long-code-blocks.yml

Lines changed: 0 additions & 11 deletions
This file was deleted.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
extends: existence
2+
message: "Use 25 or fewer lines in code blocks"
3+
link: https://docs.ubuntu.com/styleguide/en/#code-examples-in-documentation
4+
level: suggestion
5+
scope: raw
6+
nonword: true
7+
tokens:
8+
- '``` ?({(code-block|code|sourcecode)})?[^{}\n]*\n((:[^\n]+:[^\n]*\n)+\n?)?(?!```)[^:\n][^\n]*\n(\n|(?!```)[^:\n][^\n]*\n){25,}```'
9+
- '::: ?({(code-block|code|sourcecode)})?[^{}\n]*\n((:[^\n]+:[^\n]*\n)+\n?)?(?!:::)[^:\n][^\n]*\n(\n|(?!:::)[^:\n][^\n]*\n){25,}:::'
10+
- '::\n\n(( {3}[^\n]+)?\n){25,} {3}[^\n]+\n'
11+
- '\.\. (code-block|code|sourcecode)::( [^\n]+)?\n(( {3,12}:[^\n:]*:[^\n]*\n)*)?\n(( {3}[^\n]+)?\n){25,} {3}[^\n]+\n'
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
extends: existence
2+
message: "Use 35 or fewer lines in code blocks"
3+
link: https://docs.ubuntu.com/styleguide/en/#code-examples-in-documentation
4+
level: warning
5+
scope: raw
6+
nonword: true
7+
tokens:
8+
- '``` ?({(code-block|code|sourcecode)})?[^{}\n]*\n((:[^\n]+:[^\n]*\n)+\n?)?(?!```)[^:\n][^\n]*\n(\n|(?!```)[^:\n][^\n]*\n){35,}```'
9+
- '::: ?({(code-block|code|sourcecode)})?[^{}\n]*\n((:[^\n]+:[^\n]*\n)+\n?){0.1}(?!:::)[^:\n][^\n]*\n(\n|(?!:::)[^:\n][^\n]*\n){35,}:::'
10+
- '::\n\n(( {3}[^\n]+)?\n){35,} {3}[^\n]+\n'
11+
- '\.\. (code-block|code|sourcecode)::( [^\n]+)?\n(( {3,12}:[^\n:]*:[^\n]*\n)*)?\n(( {3}[^\n]+)?\n){35,} {3}[^\n]+\n'

0 commit comments

Comments
 (0)