-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathIDEA-settings-example.yml
350 lines (342 loc) · 11.3 KB
/
IDEA-settings-example.yml
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
---
# An example configuration file detailing all options that can be set.
# The layout is strongly intended to mimic the graphical menus that expose these settings.
# This can be found not in 'Settings...' but under 'Project Structure...'
Project Settings:
Project:
Project name: project-name-in-intellij
Project SDK:
Name: ProjectSDK
Type: Java
Project language level: '8'
Modules:
- Name: my-module
Sources:
# If relative, this will be evaluated with respect to the project.
- Content Root: path/to/module
# Note that folders listed here are merely appended to the existing list;
# we do NOT clear out all folders first.
Sources:
- Root: src/main/kotlin
Properties:
Package prefix: foo
For generated sources: true
# These may also be configured in a similar manner to 'Sources'
Tests:
- Root: src/it/java
Resources:
- Root: src/main/other_resources
Properties:
Package prefix: foo
For generated resources: true
Test Resources:
- Root: src/test/other_resources
# Excluded does not allow configuration, unlike the above.
Excluded:
- src/main/resources/too_large_to_index
Editor:
Code Style:
Java:
Wrapping and Braces:
Hard wrap at: 120
Wrap on typing: true
Keep when reformatting:
Multiple expressions in one line: true
Simple blocks in one line: true
Simple methods in one line: true
Simple lambdas in one line: true
Simple classes in one line: true
Extends/implements list:
Align when multiline: true
Method declaration parameters:
Wrapping: Wrap if long
if() statement:
Force braces: Always
for() statement:
Force braces: Always
while() statement:
Force braces: Always
do ... while() Statement:
Force braces: Always
try-with-resources:
Wrapping: Wrap always
Binary expressions:
Wrapping: Chop down if long
Align when multiline: true
Assignment statement:
Wrapping: Do not wrap
Ternary operation:
Wrapping: Wrap if long
Array initializer:
Wrapping: Wrap if long
Assert statement:
Wrapping: Wrap if long
Parameter annotations:
Wrapping: Do not wrap
Local variable annotations:
Wrapping: Wrap if long
Annotation parameters:
Wrapping: Wrap if long
Align when multiline: true
Blank Lines:
Keep Maximum Blank Lines:
In declarations: 10
In code: 11
Before '}': 12
Between header and package: 13
Minimum Blank Lines:
Before package statement: 14
After package statement: 15
Before imports: 16
After imports: 17
Around class: 18
After class header: 19
Before class end: 20
After anonymous class header: 21
Around field in interface: 22
Around field: 23
Around method in interface: 24
Around method: 25
Before method body: 26
Around initializer: 27
JavaDoc:
Alignment:
Align parameter descriptions: false
Align thrown exception descriptions: false
Blank lines:
After description: false
After parameter descriptions: true
After return tag: true
Invalid tags:
Keep invalid tags: false
Keep empty @param tags: false
Keep empty @return tags: false
Keep empty @throws tags: false
Other:
Wrap at right margin: true
Enable leading asterisks: false
Use @throws rather than @exception: false
Generate '<p>' on empty lines: false
Keep empty lines: false
Do not wrap one line comments: true
Preserve line feeds: true
Parameter descriptions on new line: true
Indent continuation lines: true
Imports:
Class count to use import with '*': 999
Names count to use static import with '*': 999
Arrangement:
Matching rules:
- Type: field
Modifier:
- public
- static
- final
Name: matchingRule
Order: keep order
- Type: field
Modifier:
- private
- not static
Name: my rule
Order: order by name
JavaScript:
Imports:
Use paths relative to the project, resource or sources roots: true
General:
Auto Import:
Java:
Optimize imports on the fly (for current project): true
Exclude from import and completion:
- com.google.inject.Inject
- com.sun.istack.internal.Nullable
- edu.umd.cs.findbugs.annotations.Nullable
Inspections:
Java:
Code style issues:
Unnecessary parentheses:
Enabled: true
Severity by Scope:
- Scope: Project Files
Severity: Error
Options:
Ignore clarifying parentheses: false
- Scope: Everywhere Else
Severity: No highlighting, only fix
Options:
Ignore clarifying parentheses: true
Unnecessary qualifier for 'this' or 'super':
Enabled: true
JavaScript:
Code quality tools:
ESLint:
Enabled: true
Spelling:
Dictionaries:
# files containing a word on each line to be used as custom spelling dictionaries.
- relative_to_project.dic
- /tmp/absolute.dic
Accepted Words:
- foo
- bar
Build, Execution, Deployment:
Build Tools:
Maven:
Importing:
VM options for importer: -Xmx1g
Compiler:
Resource patterns:
- '!?*.java'
- '!resource.properties'
Add runtime assertions for notnull-annotated methods and parameters: false
Nullable/NotNull Configuration:
Nullable annotations:
Annotation used for code generation: javax.annotation.Nullable
Annotations:
- javax.annotation.Nullable
- javax.annotation.CheckForNull
- my.fake.annotation.Nullable
NotNull annotations:
Annotation used for code generation: javax.annotation.Nonnull
Annotations:
- Annotation: javax.annotation.Nonnull
Instrument: true
- Annotation: androidx.annotation.Nonnull
Instrument: false
- Annotation: my.fake.annotation.Nonnull
Instrument: false
Build process heap size (Mbytes): 1024
Compile independent modules in parallel: true
Rebuild module on dependency change: false
Shared build process VM options: -Xms123m
Required Plugins:
- Plugin: CheckStyle-IDEA
Minimum version: 5.23.0
Maximum version: 5.24.1
Languages & Frameworks:
JavaScript:
JavaScript language version: React JSX
Code Quality Tools:
ESLint:
# We can also have the following options instead of 'Manual...':
# Disable ESLint: {}
# Automatic ESLint configuration: {}
Manual ESLint configuration:
ESLint package: /usr/lib/node_modules/eslint
Configuration file:
# Instead of configuration file, we can also have:
# Automatic Search: {}
Configuration file:
File: .eslint-foo.js
Additional rules directory: rules/
Extra eslint options: --extra-optioins
SQL Dialects:
Project SQL Dialect: PostgreSQL
Tools:
File Watchers:
- Name: Prettier
Files to watch:
File type: JavaScript
Scope: Project Files
Tool to Run on Changes:
Program: $ProjectFileDir$/node_modules/.bin/prettier
Arguments: --write $FilePath$
Output paths to refresh: $FilePath$
Advanced Options:
Auto-save edited files to trigger the watcher: false
Trigger the watcher on external changes: true
Trigger the watcher regardless of syntax errors: true
SonarLint:
Project Settings:
Bind to SonarQube / SonarCloud:
Bind project to SonarQube / SonarCloud: true
Project binding:
Connection: My Sonar Instance
Project: my_project
File Exclusions:
- Exclude file: LICENSE.txt
- Exclude directory: node_modules
- Exclude using GLOB pattern: '**/*.txt'
Analysis Properties:
- Property Name: name
Value: value
Other Settings:
Checkstyle:
Checkstyle version: "8.16"
# Manages the files that Checkstyle verifies. Can be one of:
# - Only Java sources (but not tests)
# - Only Java sources (including tests)
# - All sources (but not tests)
# - All sources (including tests)
# - All files in project
Scan Scope: Only Java sources (including tests)
Treat Checkstyle errors as warnings: false
Configuration files:
- Active: true
Description: Project Checkstyle Configuration
# Can be one of:
# - a local file
# - an HTTP URL
# - 'bundled' (with description matching the bundled description, e.g. "Google Checks")
File: checkstyle.xml
Run/Debug Configurations:
- Application:
Name: My Application
Store as project file: true
Configuration:
Main class: com.Application
Use classpath of module: app
VM options: -Xmx1g
Program arguments: arg1 arg2
Working directory: .
- Docker Image:
Name: Run Container
Store as project file: true
Server: Docker
Image ID: hello-world
Container name: my-hello-world-container
Executable:
Entrypoint: /bin/bash
Command: -c echo bar
Bind ports:
- Host port: 1234
Container port: 5678
Protocol: tcp
Host IP: 1.2.3.4
Environment variables:
- Name: foo
Value: bar
Run options: --tty -it
- Remote:
Name: Debug
Store as project file: true
Configuration:
Host: localhost
Port: 5005
- Spring Boot:
Name: Spring Boot Application
Configuration:
Main class: com.application.MyApplication
Environment:
VM options: -Xmx123m
Include dependencies with provided scope: false
Use classpath of module: my-module
Spring Boot:
Enable debug output: false
Hide banner: false
Enable launch optimization: true
Enable JMX agent: true
Running Application Update Policies:
On 'Update' action: Hot swap classes and update trigger file if failed
On frame deactivation: Update classes and resources
Override parameters:
- Name: system.property
Value: value
Before launch:
- Build: {}
Run Another Configuration:
Name: Run Container # For now, configuration in 'name' must be defined before this one.
Type: Docker # Only necessary to specify in the event of two configurations sharing the same name.
Run Maven Goal:
Working directory: .
Command line: checkstyle:check