generate-lua-config.py (532B)
1 #!/usr/bin/env python3 2 3 from sys import argv 4 5 6 TEMPLATE = '''\ 7 local config = {{}} 8 9 config.EXTENSIONS = {{ {EXTENSIONS} }} 10 11 return config 12 ''' 13 14 15 def _quote(s): 16 return f"'{s}'" 17 18 19 def main(arguments): 20 pairs = (arg.split('=') for arg in arguments) 21 22 formatters = { 23 'EXTENSIONS': lambda v: ', '.join(map(_quote, v.split())) 24 } 25 26 parameters = { 27 key: formatters[key](value) for (key, value) in pairs 28 } 29 30 print(TEMPLATE.format_map(parameters), end='') 31 32 33 if __name__ == '__main__': 34 main(argv[1:])