add JSONC module

This commit is contained in:
rolux 2011-10-12 12:19:57 +02:00
parent d8c371e7fb
commit 525d71bf89
4 changed files with 25 additions and 2 deletions

View file

@ -4,6 +4,8 @@
__version__ = '2.0.1'
import cache
import js
import jsonc
import net
from file import *
@ -11,7 +13,6 @@ from form import *
from format import *
from html import *
from image import *
from js import *
from location import *
from normalize import *
from text import *

View file

@ -2,6 +2,8 @@
# -*- coding: utf-8 -*-
# vi:si:et:sw=4:sts=4:ts=4
from ox.utils import json
def minify(source, comment=''):
# see https://github.com/douglascrockford/JSMin/blob/master/README
def get_next_non_whitespace_token():
@ -41,6 +43,9 @@ def minify(source, comment=''):
minified += token['value']
return minified
def parse_JSONC(source):
return json.loads(minify(source))
def tokenize(source):
# see https://github.com/mozilla/narcissus/blob/master/lib/jslex.js
IDENTIFIER = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_'

17
ox/jsonc.py Normal file
View file

@ -0,0 +1,17 @@
#!/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(filename):
with open(filename) as f:
data = loads(f.read())
return data
def loads(source):
return json.loads(minify(source))

View file

@ -32,7 +32,7 @@ ASIAN_NAMES = [
'yang', 'yeong', 'yeung'
]
PREFIXES = [
'al', 'da', 'de', 'del', 'dem', 'den', 'der', 'di', 'dos', 'du',
'al', 'bin', 'da', 'de', 'del', 'dem', 'den', 'der', 'di', 'dos', 'du',
'e', 'el', 'la', 'san', 'the', 'van', 'vom', 'von', 'y', 'zu'
]
MIDFIXES = ['und']