diff --git a/tools/misc/sxp-pretty b/tools/misc/sxp-pretty new file mode 100644 index 0000000000..4b8eaed335 --- /dev/null +++ b/tools/misc/sxp-pretty @@ -0,0 +1,45 @@ +#!/usr/bin/env python +# -*- mode: python; -*- +#============================================================================ +# This library is free software; you can redistribute it and/or +# modify it under the terms of version 2.1 of the GNU Lesser General Public +# License as published by the Free Software Foundation. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#============================================================================ +# Copyright (c) 2007 XenSource Inc. +#============================================================================ + + +import commands +import os.path +import pprint +import sys + +result = commands.getstatusoutput(os.path.join(os.path.dirname(sys.argv[0]), + 'xen-python-path')) +if result[0] != 0: + print >>sys.stderr, result[1] + sys.exit(1) + +sys.path.append(result[1]) + +import xen.xend.sxp as sxp + +def main(): + if len(sys.argv) == 1 or sys.argv[1] in ['', '-']: + s = sxp.parse(sys.stdin) + else: + s = sxp.parse(open(sys.argv[1])) + + pprint.pprint(s) + +if __name__ == '__main__': + sys.exit(main())