docopslab-dev 0.1.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/README.adoc +682 -324
  3. data/docopslab-dev.gemspec +3 -4
  4. data/lib/docopslab/dev/cast_ops.rb +199 -0
  5. data/lib/docopslab/dev/config_manager.rb +6 -6
  6. data/lib/docopslab/dev/data_utils.rb +42 -0
  7. data/lib/docopslab/dev/docker_aware.rb +40 -0
  8. data/lib/docopslab/dev/file_utils.rb +18 -7
  9. data/lib/docopslab/dev/git_branch.rb +201 -0
  10. data/lib/docopslab/dev/git_hooks.rb +17 -11
  11. data/lib/docopslab/dev/initializer.rb +34 -11
  12. data/lib/docopslab/dev/library/cache.rb +167 -0
  13. data/lib/docopslab/dev/library/fetch.rb +209 -0
  14. data/lib/docopslab/dev/library.rb +341 -0
  15. data/lib/docopslab/dev/linters.rb +73 -15
  16. data/lib/docopslab/dev/manifest.rb +28 -0
  17. data/lib/docopslab/dev/paths.rb +0 -17
  18. data/lib/docopslab/dev/script_manager.rb +12 -6
  19. data/lib/docopslab/dev/skim.rb +109 -0
  20. data/lib/docopslab/dev/spell_check.rb +2 -2
  21. data/lib/docopslab/dev/sync_ops.rb +94 -33
  22. data/lib/docopslab/dev/tasks.rb +58 -18
  23. data/lib/docopslab/dev/version.rb +1 -1
  24. data/lib/docopslab/dev.rb +77 -36
  25. data/specs/data/default-manifest.yml +23 -5
  26. data/specs/data/library-index.yml +22 -0
  27. data/specs/data/manifest-schema.yaml +142 -4
  28. data/specs/data/tasks-def.yml +122 -10
  29. metadata +28 -73
  30. data/assets/config-packs/actionlint/base.yml +0 -13
  31. data/assets/config-packs/actionlint/project.yml +0 -13
  32. data/assets/config-packs/htmlproofer/base.yml +0 -27
  33. data/assets/config-packs/htmlproofer/project.yml +0 -25
  34. data/assets/config-packs/rubocop/base.yml +0 -130
  35. data/assets/config-packs/rubocop/project.yml +0 -8
  36. data/assets/config-packs/shellcheck/base.shellcheckrc +0 -14
  37. data/assets/config-packs/subtxt/ai-asciidoc-antipatterns.sub.txt +0 -11
  38. data/assets/config-packs/vale/asciidoc/ExplicitSectionIDs.yml +0 -8
  39. data/assets/config-packs/vale/asciidoc/ExtraLineBeforeLevel1.yml +0 -7
  40. data/assets/config-packs/vale/asciidoc/OneSentencePerLine.yml +0 -8
  41. data/assets/config-packs/vale/asciidoc/PreferSourceBlocks.yml +0 -8
  42. data/assets/config-packs/vale/asciidoc/ProperAdmonitions.yml +0 -8
  43. data/assets/config-packs/vale/asciidoc/ProperDLs.yml +0 -7
  44. data/assets/config-packs/vale/asciidoc/UncleanListStart.yml +0 -8
  45. data/assets/config-packs/vale/authoring/ButParagraph.yml +0 -8
  46. data/assets/config-packs/vale/authoring/ExNotEg.yml +0 -8
  47. data/assets/config-packs/vale/authoring/LiteralTerms.yml +0 -20
  48. data/assets/config-packs/vale/authoring/Spelling.yml +0 -679
  49. data/assets/config-packs/vale/base.ini +0 -38
  50. data/assets/config-packs/vale/config/scripts/ExplicitSectionIDs.tengo +0 -56
  51. data/assets/config-packs/vale/config/scripts/ExtraLineBeforeLevel1.tengo +0 -121
  52. data/assets/config-packs/vale/config/scripts/OneSentencePerLine.tengo +0 -53
  53. data/assets/config-packs/vale/project.ini +0 -5
  54. data/assets/hooks/pre-commit +0 -63
  55. data/assets/hooks/pre-push +0 -72
  56. data/assets/scripts/adoc_section_ids.rb +0 -50
  57. data/assets/scripts/build-common.sh +0 -193
  58. data/assets/scripts/build-docker.sh +0 -64
  59. data/assets/scripts/build.sh +0 -56
  60. data/assets/scripts/parse_jekyll_asciidoc_logs.rb +0 -467
  61. data/assets/templates/Gemfile +0 -7
  62. data/assets/templates/Rakefile +0 -3
  63. data/assets/templates/gitignore +0 -69
  64. data/assets/templates/jekyll-asciidoc-fix.prompt.yml +0 -17
  65. data/assets/templates/spellcheck.prompt.yml +0 -16
  66. data/docs/agent/AGENTS.md +0 -229
  67. data/docs/agent/index.md +0 -80
  68. data/docs/agent/missions/conduct-release.md +0 -224
  69. data/docs/agent/missions/setup-new-project.md +0 -250
  70. data/docs/agent/roles/devops-release-engineer.md +0 -152
  71. data/docs/agent/roles/docops-engineer.md +0 -193
  72. data/docs/agent/roles/planner-architect.md +0 -74
  73. data/docs/agent/roles/product-engineer.md +0 -153
  74. data/docs/agent/roles/product-manager.md +0 -130
  75. data/docs/agent/roles/project-manager.md +0 -139
  76. data/docs/agent/roles/qa-testing-engineer.md +0 -115
  77. data/docs/agent/roles/tech-docs-manager.md +0 -143
  78. data/docs/agent/roles/tech-writer.md +0 -163
  79. data/docs/agent/skills/asciidoc.md +0 -609
  80. data/docs/agent/skills/code-commenting.md +0 -347
  81. data/docs/agent/skills/fix-broken-links.md +0 -309
  82. data/docs/agent/skills/fix-jekyll-asciidoc-build-errors.md +0 -23
  83. data/docs/agent/skills/fix-spelling-issues.md +0 -13
  84. data/docs/agent/skills/git.md +0 -170
  85. data/docs/agent/skills/github-issues.md +0 -135
  86. data/docs/agent/skills/product-release-rollback-and-patching.md +0 -71
  87. data/docs/agent/skills/rake-cli-dev.md +0 -57
  88. data/docs/agent/skills/readme-driven-dev.md +0 -13
  89. data/docs/agent/skills/release-history.md +0 -29
  90. data/docs/agent/skills/ruby.md +0 -192
  91. data/docs/agent/skills/schemagraphy-sgyml.md +0 -18
  92. data/docs/agent/skills/tests-running.md +0 -25
  93. data/docs/agent/skills/tests-writing.md +0 -45
  94. data/docs/agent/skills/write-the-docs.md +0 -54
  95. data/docs/agent/topics/common-project-paths.md +0 -117
  96. data/docs/agent/topics/dev-tooling-usage.md +0 -202
  97. data/docs/agent/topics/devops-ci-cd.md +0 -55
  98. data/docs/agent/topics/product-docs-deployment.md +0 -25
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: docopslab-dev
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - DocOps Lab
8
- bindir: exe
8
+ bindir: bin
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
@@ -51,6 +51,20 @@ dependencies:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0.2'
54
+ - !ruby/object:Gem::Dependency
55
+ name: asciisourcerer
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '0.2'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '0.2'
54
68
  - !ruby/object:Gem::Dependency
55
69
  name: debride
56
70
  requirement: !ruby/object:Gem::Requirement
@@ -197,14 +211,14 @@ dependencies:
197
211
  requirements:
198
212
  - - "~>"
199
213
  - !ruby/object:Gem::Version
200
- version: '5.0'
214
+ version: '5.2'
201
215
  type: :runtime
202
216
  prerelease: false
203
217
  version_requirements: !ruby/object:Gem::Requirement
204
218
  requirements:
205
219
  - - "~>"
206
220
  - !ruby/object:Gem::Version
207
- version: '5.0'
221
+ version: '5.2'
208
222
  - !ruby/object:Gem::Dependency
209
223
  name: inch
210
224
  requirement: !ruby/object:Gem::Requirement
@@ -243,94 +257,35 @@ extra_rdoc_files: []
243
257
  files:
244
258
  - LICENSE
245
259
  - README.adoc
246
- - assets/config-packs/actionlint/base.yml
247
- - assets/config-packs/actionlint/project.yml
248
- - assets/config-packs/htmlproofer/base.yml
249
- - assets/config-packs/htmlproofer/project.yml
250
- - assets/config-packs/rubocop/base.yml
251
- - assets/config-packs/rubocop/project.yml
252
- - assets/config-packs/shellcheck/base.shellcheckrc
253
- - assets/config-packs/subtxt/ai-asciidoc-antipatterns.sub.txt
254
- - assets/config-packs/vale/asciidoc/ExplicitSectionIDs.yml
255
- - assets/config-packs/vale/asciidoc/ExtraLineBeforeLevel1.yml
256
- - assets/config-packs/vale/asciidoc/OneSentencePerLine.yml
257
- - assets/config-packs/vale/asciidoc/PreferSourceBlocks.yml
258
- - assets/config-packs/vale/asciidoc/ProperAdmonitions.yml
259
- - assets/config-packs/vale/asciidoc/ProperDLs.yml
260
- - assets/config-packs/vale/asciidoc/UncleanListStart.yml
261
- - assets/config-packs/vale/authoring/ButParagraph.yml
262
- - assets/config-packs/vale/authoring/ExNotEg.yml
263
- - assets/config-packs/vale/authoring/LiteralTerms.yml
264
- - assets/config-packs/vale/authoring/Spelling.yml
265
- - assets/config-packs/vale/base.ini
266
- - assets/config-packs/vale/config/scripts/ExplicitSectionIDs.tengo
267
- - assets/config-packs/vale/config/scripts/ExtraLineBeforeLevel1.tengo
268
- - assets/config-packs/vale/config/scripts/OneSentencePerLine.tengo
269
- - assets/config-packs/vale/project.ini
270
- - assets/hooks/pre-commit
271
- - assets/hooks/pre-push
272
- - assets/scripts/adoc_section_ids.rb
273
- - assets/scripts/build-common.sh
274
- - assets/scripts/build-docker.sh
275
- - assets/scripts/build.sh
276
- - assets/scripts/parse_jekyll_asciidoc_logs.rb
277
- - assets/templates/Gemfile
278
- - assets/templates/Rakefile
279
- - assets/templates/gitignore
280
- - assets/templates/jekyll-asciidoc-fix.prompt.yml
281
- - assets/templates/spellcheck.prompt.yml
282
260
  - docopslab-dev.gemspec
283
- - docs/agent/AGENTS.md
284
- - docs/agent/index.md
285
- - docs/agent/missions/conduct-release.md
286
- - docs/agent/missions/setup-new-project.md
287
- - docs/agent/roles/devops-release-engineer.md
288
- - docs/agent/roles/docops-engineer.md
289
- - docs/agent/roles/planner-architect.md
290
- - docs/agent/roles/product-engineer.md
291
- - docs/agent/roles/product-manager.md
292
- - docs/agent/roles/project-manager.md
293
- - docs/agent/roles/qa-testing-engineer.md
294
- - docs/agent/roles/tech-docs-manager.md
295
- - docs/agent/roles/tech-writer.md
296
- - docs/agent/skills/asciidoc.md
297
- - docs/agent/skills/code-commenting.md
298
- - docs/agent/skills/fix-broken-links.md
299
- - docs/agent/skills/fix-jekyll-asciidoc-build-errors.md
300
- - docs/agent/skills/fix-spelling-issues.md
301
- - docs/agent/skills/git.md
302
- - docs/agent/skills/github-issues.md
303
- - docs/agent/skills/product-release-rollback-and-patching.md
304
- - docs/agent/skills/rake-cli-dev.md
305
- - docs/agent/skills/readme-driven-dev.md
306
- - docs/agent/skills/release-history.md
307
- - docs/agent/skills/ruby.md
308
- - docs/agent/skills/schemagraphy-sgyml.md
309
- - docs/agent/skills/tests-running.md
310
- - docs/agent/skills/tests-writing.md
311
- - docs/agent/skills/write-the-docs.md
312
- - docs/agent/topics/common-project-paths.md
313
- - docs/agent/topics/dev-tooling-usage.md
314
- - docs/agent/topics/devops-ci-cd.md
315
- - docs/agent/topics/product-docs-deployment.md
316
261
  - lib/docopslab/dev.rb
317
262
  - lib/docopslab/dev/auto_fix_asciidoc.rb
263
+ - lib/docopslab/dev/cast_ops.rb
318
264
  - lib/docopslab/dev/checkers.rb
319
265
  - lib/docopslab/dev/config_manager.rb
266
+ - lib/docopslab/dev/data_utils.rb
267
+ - lib/docopslab/dev/docker_aware.rb
320
268
  - lib/docopslab/dev/file_utils.rb
269
+ - lib/docopslab/dev/git_branch.rb
321
270
  - lib/docopslab/dev/git_hooks.rb
322
271
  - lib/docopslab/dev/help.rb
323
272
  - lib/docopslab/dev/initializer.rb
273
+ - lib/docopslab/dev/library.rb
274
+ - lib/docopslab/dev/library/cache.rb
275
+ - lib/docopslab/dev/library/fetch.rb
324
276
  - lib/docopslab/dev/linters.rb
325
277
  - lib/docopslab/dev/log_parser.rb
278
+ - lib/docopslab/dev/manifest.rb
326
279
  - lib/docopslab/dev/paths.rb
327
280
  - lib/docopslab/dev/script_manager.rb
281
+ - lib/docopslab/dev/skim.rb
328
282
  - lib/docopslab/dev/spell_check.rb
329
283
  - lib/docopslab/dev/sync_ops.rb
330
284
  - lib/docopslab/dev/tasks.rb
331
285
  - lib/docopslab/dev/tool_execution.rb
332
286
  - lib/docopslab/dev/version.rb
333
287
  - specs/data/default-manifest.yml
288
+ - specs/data/library-index.yml
334
289
  - specs/data/manifest-schema.yaml
335
290
  - specs/data/tasks-def.yml
336
291
  - specs/data/tools.yml
@@ -1,13 +0,0 @@
1
- # actionlint configuration for DocOps Lab projects
2
- # This file is synced from docopslab-dev gem
3
-
4
- # Disable overly strict rules for common patterns
5
- ignore:
6
- # Allow commonly used but deprecated actions (we'll upgrade gradually)
7
- - 'SC2086:' # shellcheck rule about double quotes
8
- - 'the runner of "ubuntu-latest" is deprecated'
9
-
10
- # Custom shell for shellcheck integration
11
- shellcheck:
12
- enable: true
13
- shell-options: "-e SC2086" # Allow some globbing patterns
@@ -1,13 +0,0 @@
1
- # actionlint configuration for this project
2
- # References DocOps Lab base configuration
3
-
4
- # Project-specific ignores (add as needed):
5
- ignore:
6
- # Example: Ignore specific workflow patterns
7
- # - 'workflow "deploy.yml"'
8
- # - '"ubuntu-20.04" is deprecated'
9
-
10
- # Project-specific overrides:
11
- shellcheck:
12
- enable: true
13
- # shell-options: "-e SC2016" # Add project-specific ShellCheck exclusions
@@ -1,27 +0,0 @@
1
- ---
2
- # DocOps Lab HTML-Proofer Base Configuration
3
- # This provides sensible defaults for DocOps Lab projects
4
-
5
- # URL checking options
6
- check_external_hash: false # Skip checking external URL fragments (can be slow)
7
- check_img_http: false # Allow HTTP images for now
8
- enforce_https: false # Don't enforce HTTPS for all links
9
-
10
- # URLs to ignore (patterns and strings)
11
- ignore_urls:
12
- - /localhost/ # Skip local development URLs
13
- - /127\.0\.0\.1/ # Skip local IPs
14
- - /example\.com/ # Skip example URLs
15
- - /foo\.bar/ # Skip placeholder URLs
16
- - /fonts.googleapis.com/ # Skip Google Fonts
17
- - /fonts.gstatic.com/ # Skip Google Fonts static
18
-
19
- # Files to ignore (patterns)
20
- ignore_files:
21
- - slides/ # Skip slides directories
22
-
23
- # Other options
24
- check_favicon: false # Don't require favicon
25
- check_html: true # Check HTML structure
26
- check_opengraph: false # Skip OpenGraph validation
27
- disable_external: false # Check external links (can be disabled for speed)
@@ -1,25 +0,0 @@
1
- # DocOps Lab HTML-Proofer Configuration
2
- # Combined base and project configuration for consistent HTML validation
3
- # URL checking options
4
- check_external_hash: false # Skip checking external URL fragments (can be slow)
5
- check_img_http: false # Allow HTTP images for now
6
- enforce_https: false # Don't enforce HTTPS for all links
7
- check_favicon: false # Don't require favicon
8
- check_html: true # Check HTML structure
9
- check_opengraph: false # Skip OpenGraph validation
10
- disable_external: false # Check external links (can be disabled for speed)
11
-
12
- # URLs to ignore (patterns and strings)
13
- ignore_urls:
14
- - /localhost/ # Skip local development URLs
15
- - /127\.0\.0\.1/ # Skip local IPs
16
- - /example\.com/ # Skip example URLs
17
- - /foo\.bar/ # Skip placeholder URLs
18
- - /fonts\.googleapis\.com/ # Skip Google Fonts
19
- - /fonts\.gstatic\.com/ # Skip Google Fonts static
20
- # Add project-specific URL ignores below:
21
-
22
- # Files to ignore (patterns)
23
- ignore_files:
24
- - slides/ # Skip slides directories
25
- # Add project-specific file ignores below:
@@ -1,130 +0,0 @@
1
- # RuboCop configuration for DocOps Lab projects
2
- # This is the baseline configuration distributed via docopslab-dev
3
-
4
- plugins:
5
- - rubocop-rspec
6
-
7
- AllCops:
8
- TargetRubyVersion: 3.2
9
- NewCops: enable
10
- DisplayCopNames: true
11
- DisplayStyleGuide: true
12
-
13
- Style/MethodDefParentheses:
14
- EnforcedStyle: require_no_parentheses
15
-
16
- Style/MethodCallWithArgsParentheses:
17
- EnforcedStyle: require_parentheses
18
- AllowParenthesesInMultilineCall: true
19
- AllowParenthesesInChaining: true
20
-
21
- # Allow longer lines for documentation
22
- Layout/LineLength:
23
- Max: 120
24
- AllowedPatterns:
25
- - '\A\s*#.*\z' # Comments
26
- - '\A\s*\*.*\z' # Rdoc comments
27
-
28
- Metrics/MethodLength:
29
- Max: 25
30
-
31
- # Allow longer blocks for Rake tasks and RSpec
32
- Metrics/BlockLength:
33
- AllowedMethods:
34
- - describe
35
- - context
36
- - feature
37
- - scenario
38
- - let
39
- - let!
40
- - subject
41
- - task
42
- - namespace
43
- Max: 50
44
-
45
- # Documentation not required for internal tooling
46
- Style/Documentation:
47
- Enabled: false
48
-
49
- # Allow TODO comments
50
- Style/CommentAnnotation:
51
- Keywords:
52
- - TODO
53
- - FIXME
54
- - OPTIMIZE
55
- - HACK
56
- - REVIEW
57
-
58
- Style/CommentedKeyword:
59
- Enabled: false
60
-
61
- Style/StringLiterals:
62
- Enabled: true
63
- EnforcedStyle: single_quotes
64
-
65
- Style/StringLiteralsInInterpolation:
66
- Enabled: true
67
- EnforcedStyle: single_quotes
68
-
69
- Style/FrozenStringLiteralComment:
70
- Enabled: true
71
- EnforcedStyle: always
72
-
73
- Layout/FirstParameterIndentation:
74
- EnforcedStyle: consistent
75
-
76
- Layout/ParameterAlignment:
77
- EnforcedStyle: with_fixed_indentation
78
-
79
- Layout/MultilineMethodCallBraceLayout:
80
- EnforcedStyle: same_line
81
-
82
- Layout/MultilineMethodCallIndentation:
83
- EnforcedStyle: aligned
84
-
85
- Layout/FirstMethodArgumentLineBreak:
86
- Enabled: true
87
-
88
- Layout/TrailingWhitespace:
89
- Enabled: true
90
-
91
- Layout/EmptyLineAfterGuardClause:
92
- Enabled: true
93
-
94
- Layout/HashAlignment:
95
- Enabled: false
96
-
97
- Layout/SpaceAroundOperators:
98
- Enabled: false
99
-
100
- Layout/SpaceAroundEqualsInParameterDefault:
101
- Enabled: false
102
- EnforcedStyle: no_space
103
-
104
- Metrics/AbcSize:
105
- Enabled: false
106
-
107
- Metrics/CyclomaticComplexity:
108
- Enabled: false
109
-
110
- Metrics/PerceivedComplexity:
111
- Enabled: false
112
-
113
- Lint/UnusedMethodArgument:
114
- Enabled: true
115
-
116
- Lint/UselessAssignment:
117
- Enabled: true
118
-
119
- Lint/IneffectiveAccessModifier:
120
- Enabled: true
121
-
122
- Security/YAMLLoad:
123
- Enabled: false # Projects may intentionally use unsafe YAML loading
124
-
125
- Security/Eval:
126
- Enabled: true # Catch and replace with safer alternatives
127
-
128
- # Disable Naming/PredicateMethod - we use generate_, run_, sync_, etc for actions
129
- Naming/PredicateMethod:
130
- Enabled: false
@@ -1,8 +0,0 @@
1
- # DocOps Lab RuboCop Configuration
2
-
3
- inherit_from: .vendor/docopslab/rubocop.yml
4
-
5
- # Add project-specific overrides below:
6
- # AllCops:
7
- # Exclude:
8
- # - scripts/**
@@ -1,14 +0,0 @@
1
- # ShellCheck configuration for DocOps Lab projects
2
- # This file is synced from docopslab-dev gem
3
-
4
- # Disable some overly strict rules for our use cases
5
- disable=SC2034 # Variable appears unused (common in sourced scripts)
6
- disable=SC2086 # Double quote to prevent globbing (sometimes we want globbing)
7
- disable=SC2181 # Check exit code directly with e.g. 'if mycmd;', not indirectly with $?
8
-
9
- # Set default shell to bash (most of our scripts are bash)
10
- shell=bash
11
-
12
- # Enable additional optional checks
13
- enable=quote-safe-variables
14
- enable=require-variable-braces
@@ -1,11 +0,0 @@
1
- ^\* \*\*(.+)\*\*:\s
2
- \1::\n
3
-
4
- (^=+\s[\W\w].+)\n([\W\w].*)
5
- \1\n\n\\2
6
-
7
- ([^\s])\n\n==\s([\w\w])
8
- \1\n\n\n== \2
9
-
10
- ^\* (.*) - (.*)
11
- \1::\n\2\n
@@ -1,8 +0,0 @@
1
- ---
2
- extends: script
3
- scope: raw
4
- level: warning
5
- message: "Section heading must be preceded by an explicit ID in format [[section-id]] on the line above."
6
- link: https://docs.asciidoctor.org/asciidoc/latest/sections/custom-ids/
7
- description: "Ensures all section headings have explicit IDs for better cross-referencing and stable links."
8
- script: ExplicitSectionIDs.tengo
@@ -1,7 +0,0 @@
1
- ---
2
- extends: script
3
- scope: raw
4
- level: warning
5
- message: "Level-1 (==) headings must be preceded by two blank lines and an explicit [[section-id]] line."
6
- description: "Enforces: blank, blank, [[id]], then '== Heading'."
7
- script: ExtraLineBeforeLevel1.tengo
@@ -1,8 +0,0 @@
1
- ---
2
- extends: script
3
- scope: raw
4
- level: warning
5
- message: "Each sentence should be on its own line for better version control diffs and readability."
6
- link: https://docs.asciidoctor.org/asciidoc/latest/writing/style/#one-sentence-per-line
7
- description: "Encourages writing one sentence per line to improve readability and version control diffs."
8
- script: OneSentencePerLine.tengo
@@ -1,8 +0,0 @@
1
- ---
2
- extends: existence
3
- scope: raw
4
- level: error
5
- message: "Use '[source,lang]' with '----' delimiters instead of markdown-style code blocks with '```'."
6
- link: https://docs.asciidoctor.org/asciidoc/latest/verbatim/source-blocks/
7
- raw:
8
- - '```\w*\n[\s\S]*?\n```'
@@ -1,8 +0,0 @@
1
- ---
2
- extends: existence
3
- scope: raw
4
- level: error
5
- message: "Use proper AsciiDoc admonition blocks instead of manual formatting."
6
- link: https://docs.asciidoctor.org/asciidoc/latest/blocks/admonitions/
7
- raw:
8
- - '^\*\*NOTE:\*\*|^\*\*TIP:\*\*|^\*\*IMPORTANT:\*\*|^\*\*CAUTION:\*\*|^\*\*WARNING:\*\*'
@@ -1,7 +0,0 @@
1
- extends: existence
2
- message: "Use AsciiDoc definition list syntax (term:: definition) instead of bold/italic text followed by a colon."
3
- link: https://docs.asciidoctor.org/asciidoc/latest/lists/description/
4
- level: error
5
- scope: raw
6
- raw:
7
- - (?m)^(\* )?\*\*?(.+)(:\*\*?|\*\*?:)[\s\n]+(.+)$
@@ -1,8 +0,0 @@
1
- extends: existence
2
- message: |
3
- Add a blank line before starting a list after a sentence ending in a colon.
4
- level: warning
5
- scope: raw
6
- raw:
7
- - '(?m)^.*(?<!:):[ \t]*$(?=\n[\*\.]\s)'
8
- link: "Tip: run sed -E '/^[^:]+:[^:]*$/ { N; s/:\n([*.])/:\\n\\1/ }' -i yourfile.adoc"
@@ -1,8 +0,0 @@
1
- extends: existence
2
- message: "Do not start a paragraph with a 'but'."
3
- level: error
4
- scope: paragraph
5
- action:
6
- name: remove
7
- tokens:
8
- - '\n\nBut '
@@ -1,8 +0,0 @@
1
- # style for replacing /\se\.g\.,?\s/ with `ex: `
2
- extends: substitution
3
- scope: text
4
- level: error
5
- message: "Use 'ex: ' instead of 'e.g., '."
6
- link: https://developers.google.com/style/word-list#e.g
7
- swap:
8
- '([Ee])\.g\.,?\s': '\1x: '
@@ -1,20 +0,0 @@
1
- ---
2
- extends: substitution
3
- scope: text
4
- level: suggestion
5
- message: "Consider using monospace formatting for '%s'."
6
- link: https://docs.asciidoctor.org/asciidoc/latest/text/monospace/
7
- # Technical terms that should typically be in monospace
8
- swap:
9
- '(?i)\bREADME\b': '`README.adoc`'
10
- '(?i)\bGemfile\b': '`Gemfile`'
11
- '(?i)\bRakefile\b': '`Rakefile`'
12
- '(?i)\bDockerfile\b': '`Dockerfile`'
13
- '(?i)\b\.env\b': '`.env`'
14
- '(?i)\b\.gitignore\b': '`.gitignore`'
15
- '(?i)\b\.yml\b': '`.yml`'
16
- '(?i)\b\.yaml\b': '`.yaml`'
17
- '(?i)\b\.json\b': '`.json`'
18
- '(?i)\b\.rb\b': '`.rb`'
19
- '(?i)\b\.md\b': '`.md`'
20
- '(?i)\b\.adoc\b': '`.adoc`'