You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-util/meson-format-array/files/meson-format-array

27 lines
642 B

#!/usr/bin/env python3
# Copyright 2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
import itertools
import shlex
import sys
def quote(s):
return "'" + s.replace("\\", "\\\\").replace("'", "\\'") + "'"
def main(args):
# Split each argument according to shell rules
args = (shlex.split(x) for x in args)
# Flatten the resulting list of lists
args = itertools.chain.from_iterable(args)
# Add quotes and escape embedded quotes
args = (quote(x) for x in args)
# Format the result
print("[" + ", ".join(args) + "]")
if __name__ == "__main__":
main(sys.argv[1:])