mirror of
https://github.com/ParisNeo/lollms-webui.git
synced 2024-12-18 20:17:50 +00:00
34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
import argparse
|
|
import json
|
|
from pathlib import Path
|
|
|
|
def indent_json_file(input_file, output_file=None, indent=4):
|
|
# Read the JSON file
|
|
with open(input_file, 'r') as file:
|
|
data = json.load(file)
|
|
|
|
# Determine the output file path
|
|
if output_file is None:
|
|
output_file = input_file.with_stem(input_file.stem + '_indented' + input_file.suffix)
|
|
|
|
# Write the indented JSON to the output file
|
|
with open(output_file, 'w') as file:
|
|
json.dump(data, file, indent=indent)
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser(description='Indent a JSON file and save it to a new file.')
|
|
parser.add_argument('input_file', type=Path, help='path to the input JSON file')
|
|
parser.add_argument('-o', '--output_file', type=Path, help='path to the output JSON file')
|
|
parser.add_argument('--indent', type=int, default=4, help='number of spaces for indentation (default: 4)')
|
|
|
|
args = parser.parse_args()
|
|
|
|
input_file = args.input_file
|
|
output_file = args.output_file
|
|
indent = args.indent
|
|
|
|
indent_json_file(input_file, output_file, indent)
|
|
|
|
if __name__ == '__main__':
|
|
main()
|