~knitzsche/+junk/scripts-kylen

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#!/usr/bin/python

import os
import sys

if sys.argv[1] == "-h" or sys.argv[1] == "--help":
    print "Purpose:"
    print "Outputs msgid/msgstr pairs for all msgids in specified list from specified po file"
    print "Usage: get_msgids_from_list <po> <list file>\n"
    sys.exit(1)

if len(sys.argv) < 3: 
    print "missing args, quitting."
    sys.exit(1)

fin_n = sys.argv[1]
fin = open(fin_n, "r")
ms = fin.read()
fin.close()

fin_n = sys.argv[2]
fin = open(fin_n, "r")
targets_ = fin.readlines()
fin.close()


#for line in targets_: 
#    print line[:len(line)-1]
#sys.exit(0)

targets = list()

target = ""
for line in targets_:
    if not line.endswith("&&&&\n"):
        target += line[:len(line)-1] + "\n"
    else:
        targets.append(target)
#        print target
        target = ""

#print "len(targets): " + str(len(targets))

#for target in targets:
#print str(targets)
#sys.exit(0)

found = dict()
for target in targets:
#    print target
    msgstr = ""
    if ms.find(target) > -1:
#        print "Found: " + target
        msgstr = ms[ms.find("msgstr", ms.find(target)):ms.find("\n\n", ms.find("msgstr", ms.find(target)))]
#        print msgstr
        found[target]=msgstr        


for (k,v) in found.iteritems():
    print k, v + "\n"


sys.exit(0)