Add --skipmissing flag

This skips files that do not have a matching file in the other
directory.
This commit is contained in:
Serpent7776
2025-08-26 21:10:13 +02:00
parent 065ef47b2b
commit bfe5b576a2

View File

@@ -32,6 +32,9 @@ def parse_args() -> argparse.Namespace:
parser.add_argument( parser.add_argument(
"--onlydiffs", help="only open files where there is a diff", action="store_true" "--onlydiffs", help="only open files where there is a diff", action="store_true"
) )
parser.add_argument(
"--skipmissing", help="skip non-existent files", action="store_true"
)
return parser.parse_args() return parser.parse_args()
@@ -87,9 +90,10 @@ def main() -> None:
aPath = a.resolve() if a else os.devnull aPath = a.resolve() if a else os.devnull
bPath = b.resolve() if b else os.devnull bPath = b.resolve() if b else os.devnull
if ( if (
args.onlydiffs (args.skipmissing and (not a or not b)) or
and a and b (args.onlydiffs
and open(aPath, mode="rb").read() == open(bPath, mode="rb").read() and a and b
and open(aPath, mode="rb").read() == open(bPath, mode="rb").read())
): ):
continue continue
print(f"tabedit {aPath} | vsp {bPath}", file=vimCmdFile) print(f"tabedit {aPath} | vsp {bPath}", file=vimCmdFile)