-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.erb_lint.yml
More file actions
127 lines (102 loc) · 2.63 KB
/
.erb_lint.yml
File metadata and controls
127 lines (102 loc) · 2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
---
# Enable all linters by default
EnableDefaultLinters: false
# List of all linters with their configurations
linters:
# Checks for allowed script types
AllowedScriptType:
enabled: true
allowed_types:
- 'text/javascript'
- 'module'
- 'application/javascript'
- 'text/ecmascript'
# Ensures closing ERB tags are properly indented
ClosingErbTagIndent:
enabled: true
# Checks ERB comment syntax
CommentSyntax:
enabled: true
# Warns about deprecated CSS classes
DeprecatedClasses:
enabled: false
# Checks for potential XSS vulnerabilities in ERB (uses better-html)
ErbSafety:
enabled: true
better_html_config: .better-html.yml
# Checks for extra blank lines
ExtraNewline:
enabled: true
# Ensures files end with a newline
FinalNewline:
enabled: true
present: true
# Detects hardcoded strings that should use i18n
HardCodedString:
enabled: true
# Prevents use of javascript_tag helper
NoJavaScriptTagHelper:
enabled: true
# Warns about unused disable comments
NoUnusedDisable:
enabled: true
# Reports ERB parsing errors
ParserErrors:
enabled: true
# Warns about using instance variables in partials
PartialInstanceVariable:
enabled: true
# Requires autocomplete attribute on input fields
RequireInputAutocomplete:
enabled: true
# Requires nonce attribute on script tags
RequireScriptNonce:
enabled: true
# Removes trailing whitespace in ERB tags
RightTrim:
enabled: true
enforced_style: '-' # Use -%> to trim whitespace
# Runs RuboCop on Ruby code within ERB tags
Rubocop:
enabled: true
only:
- .
rubocop_config:
Layout/InitialIndentation:
Enabled: false
Layout/TrailingEmptyLines:
Enabled: false
Layout/TrailingWhitespace:
Enabled: false
Naming/FileName:
Enabled: false
Style/FrozenStringLiteralComment:
Enabled: false
Lint/UselessAssignment:
Enabled: false
# Runs RuboCop on text/Ruby code outside ERB tags
RubocopText:
enabled: true
# Ensures self-closing tags are properly formatted
SelfClosingTag:
enabled: true
# Enforces spacing around ERB tags
SpaceAroundErbTag:
enabled: true
# Checks spacing in HTML tags
SpaceInHtmlTag:
enabled: true
# Ensures consistent indentation (spaces not tabs)
SpaceIndentation:
enabled: true
# Removes trailing whitespace
TrailingWhitespace:
enabled: true
# Files to lint
glob: "**/*.{html,html.erb,erb}"
# Exclude patterns
exclude:
- '**/vendor/**/*'
- '**/node_modules/**/*'
- '**/tmp/**/*'
- '**/public/**/*'