#!/usr/bin/python # -*- coding: utf-8 -*- # vi:si:et:sw=4:sts=4:ts=4 from __future__ import with_statement from js import minify from utils import json def load(f): return loads(f.read()) def loads(source): try: minified = minify(source) return json.loads(minified) except json.JSONDecodeError, e: s = minified.split('\n') context = s[e.lineno-1][max(0, e.colno-1):e.colno+30] msg = e.msg + ' at ' + context raise json.JSONDecodeError(msg, minified, e.pos)