From 59803dba2bce1eada4470d5c64f5e089c6210059 Mon Sep 17 00:00:00 2001 From: Gilles Peskine Date: Thu, 22 Dec 2022 16:34:01 +0100 Subject: [PATCH] Support restyling only the specified files Signed-off-by: Gilles Peskine --- scripts/code_style.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/scripts/code_style.py b/scripts/code_style.py index 8e82b93fb0..77f6a1b6a4 100755 --- a/scripts/code_style.py +++ b/scripts/code_style.py @@ -163,14 +163,26 @@ def main() -> int: + uncrustify_version + "' (Note: The only supported version" \ "is " + UNCRUSTIFY_SUPPORTED_VERSION + ")", file=STDOUT_UTF8) - src_files = get_src_files() - parser = argparse.ArgumentParser() - parser.add_argument('-f', '--fix', action='store_true', \ - help='modify source files to fix the code style') + parser.add_argument('-f', '--fix', action='store_true', + help='modify source files to fix the code style') + # --files is almost useless: it only matters if there are no files + # ('code_style.py' without arguments checks all files known to Git, + # 'code_style.py --files' does nothing). 'code_style.py --files ...' is + # intended as a stable ("porcelain") way to restyle a possibly empty + # set of files. + parser.add_argument('--files', action='store_true', + help='only check the specified files (default with non-option arguments)') + parser.add_argument('operands', nargs='*', metavar='FILE', + help='files to check (if none: check files that are known to git)') args = parser.parse_args() + if args.files or args.operands: + src_files = args.operands + else: + src_files = get_src_files() + if args.fix: # Fix mode return fix_style(src_files)