website/versioned_docs/version-1.21.0/rules/formatting.md
This rule set provides wrappers for rules implemented by ktlint - https://ktlint.github.io/.
Note: Issues reported by this rule set can only be suppressed on file level (@file:Suppress("detekt.rule")).
Note: The formatting rule set is not included by default in the detekt-cli or gradle plugin.
To enable this rule set, add detektPlugins "io.gitlab.arturbosch.detekt:detekt-formatting:$version"
to your gradle dependencies or reference the detekt-formatting-jar with the --plugins option
in the command line interface.
See the config.yml
file for all detekt-formatting configuration options and their default values.
To enable\disable a rule add the formatting: section (from the above config file) to your custom detekt config file.
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
indentSize (default: 4)
indentation size
maxLineLength (default: 120) (android default: 100)
maximum line length
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: No
indentSize (default: 4)
indentation size
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
This rules overlaps with naming>MatchingDeclarationName from the standard rules, make sure to enable just one.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
This rules overlaps with style>NewLineAtEndOfFile from the standard rules, make sure to enable just one. The pro of this rule is that it can auto-correct the issue.
Active by default: Yes - Since v1.0.0
insertFinalNewLine (default: true)
report absence or presence of a newline
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
For defining import layout patterns see the KtLint Source Code
Active by default: Yes - Since v1.19.0
layout (default: '*,java.**,javax.**,kotlin.**,^') (android default: '*')
the import ordering layout
See ktlint-readme for documentation.
Active by default: Yes - Since v1.19.0
indentSize (default: 4)
indentation size
(default: continuationIndentSize4)
Deprecated: continuationIndentSize is ignored by KtLint and will have no effect
continuation indentation size
See ktlint-readme for documentation.
Active by default: No
indentSize (default: 4)
indentation size
See ktlint-readme for documentation.
This rules overlaps with style>MaxLineLength from the standard rules, make sure to enable just one or keep them aligned. The pro of this rule is that it can auto-correct the issue.
Active by default: Yes - Since v1.0.0
maxLineLength (default: 120) (android default: 100)
maximum line length
ignoreBackTickedIdentifier (default: false)
ignore back ticked identifier
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
This rules overlaps with style>ModifierOrder from the standard rules, make sure to enable just one. The pro of this rule is that it can auto-correct the issue.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
This rules overlaps with empty-blocks>EmptyClassBlock from the standard rules, make sure to enable just one. The pro of this rule is that it can auto-correct the issue.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
packagesToUseImportOnDemandProperty (default: 'java.util.*,kotlinx.android.synthetic.**')
Defines allowed wildcard imports
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
maxLineLength (default: 120) (android default: 100)
maximum line length
(default: indentSize4)
Deprecated: indentSize is ignored by KtLint and will have no effect
indentation size
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.0.0
See ktlint-readme for documentation.
Active by default: No
allowTrailingComma (default: false)
Defines whether a trailing comma (or no trailing comma) should be enforced on the defining side
allowTrailingCommaOnCallSite (default: false)
Defines whether a trailing comma (or no trailing comma) should be enforced on the calling side
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: No
See ktlint-readme for documentation.
Active by default: Yes - Since v1.20.0