diff options
Diffstat (limited to 'feed/sse_feed.py')
-rwxr-xr-x | feed/sse_feed.py | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/feed/sse_feed.py b/feed/sse_feed.py index 7925c25..6a34d69 100755 --- a/feed/sse_feed.py +++ b/feed/sse_feed.py @@ -33,16 +33,25 @@ def process_source(archive, root, path, package_id, meta): file_id = sse_db.new_file(package_id, path, language["language_id"]) + table = {} + p = Popen3("%s %s" % (language["lexer"], os.path.join(root, path))) for identifier in p.fromchild: - - text = identifier.strip() + t = identifier.strip() + + try: + table[t.lower()][1] += 1 + except KeyError: + table[t.lower()] = [t, 1] - if text.startswith("S:"): - sse_db.new_word(file_id, text[2:], True) + for k, v in table.items(): + if v[0].startswith("S:"): + sse_db.new_word(file_id, v[0][2:], True, v[1]) else: - sse_db.new_word(file_id, text, False) + sse_db.new_word(file_id, v[0], False, v[1]) + + del table if p.wait() != 0: print "WARNING: Subprocess failed!" |