diff --git a/scripts/fix_diffs.py b/scripts/fix_diffs.py index 1c774ec..5f99d97 100644 --- a/scripts/fix_diffs.py +++ b/scripts/fix_diffs.py @@ -53,8 +53,8 @@ def get_msgs(lines): lineno += 1 return msgids, msgstrs -def main(fp): - p = subprocess.Popen(['git', 'show', 'HEAD:' + fp], stdout=subprocess.PIPE) +def main(fp, original_po_commit='HEAD'): + p = subprocess.Popen(['git', 'show', f'{original_po_commit}:{fp}'], stdout=subprocess.PIPE) out, err = p.communicate() head_po = out.decode().splitlines() msgids, msgstrs = get_msgs(head_po) @@ -94,11 +94,21 @@ def main(fp): if __name__ == '__main__': import sys + if len(sys.argv) < 2: - print('Usage: python fix_diffs.py ') + print('Usage:') + print('\tpython fix_diffs.py []') + print('Option:') + print('\t: The original .po file(s) commit record (default to HEAD).') + sys.exit(1) - fp = sys.argv[1] - output_lines = main(fp) + fp = './' + sys.argv[1] + output_lines = None + if len(sys.argv) == 3: + original_commit = sys.argv[2] + output_lines = main(fp, original_commit) + else: + output_lines = main(fp) with open(fp, 'w') as f: f.writelines([s + '\n' for s in output_lines])