diff options
-rw-r--r-- | .editorconfig | 6 | ||||
-rwxr-xr-x | ktlint.py | 16 |
2 files changed, 14 insertions, 8 deletions
diff --git a/.editorconfig b/.editorconfig index e97aa07..1e3f51c 100644 --- a/.editorconfig +++ b/.editorconfig @@ -4,9 +4,3 @@ max_line_length = 100 trim_trailing_whitespace = true insert_final_newline = true ij_kotlin_imports_layout=* - -# Comma-separated list of rules to disable -# ktlint disagrees on indentation with ktfmt in some cases -# TODO(b/185904220): paren spacing disabled because of a ktfmt bug -# TODO(b/189506168): curly spacing disabled because of a ktfmt bug -disabled_rules=indent,paren-spacing,curly-spacing,wrapping @@ -42,14 +42,25 @@ def main(args=None): parser.add_argument('--file', '-f', nargs='*') parser.add_argument('--format', '-F', dest='format', action='store_true') parser.add_argument('--noformat', dest='format', action='store_false') - parser.set_defaults(format=False) + parser.add_argument('--no-verify-format', dest='verify_format', action='store_false') + parser.set_defaults(format=False, verify_format=True) args = parser.parse_args() kt_files = [f for f in args.file if f.endswith('.kt') or f.endswith('.kts')] if not kt_files: sys.exit(0) + disabled_rules = ['indent', 'paren-spacing', 'curly-spacing', 'wrapping'] + + # Disable more format-related rules if we shouldn't verify the format. This is usually + # the case if files we are checking are already checked by ktfmt. + if not args.verify_format: + disabled_rules += ['final-newline', 'no-consecutive-blank-lines', 'import-ordering'] + ktlint_args = kt_files[:] ktlint_args += ['--editorconfig', EDITOR_CONFIG] + ktlint_args += ['--disabled_rules=' + ','.join(disabled_rules)] + + # Automatically format files if requested. if args.format: ktlint_args += ['-F'] @@ -64,7 +75,8 @@ def main(args=None): if stdout: print('prebuilts/ktlint found errors in files you changed:') print(stdout.decode('utf-8')) - print(FORMAT_MESSAGE.format(MAIN_DIRECTORY, ' '.join(kt_files))) + if (args.verify_format): + print(FORMAT_MESSAGE.format(MAIN_DIRECTORY, ' '.join(kt_files))) sys.exit(1) else: sys.exit(0) |