forked from quadrismegistus/prosodic
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path__init__.py
More file actions
56 lines (41 loc) · 1.32 KB
/
__init__.py
File metadata and controls
56 lines (41 loc) · 1.32 KB
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
import sys,glob,os,time,codecs
#print '>> importing prosodic...'
#dir_prosodic=sys.path[0]
dir_prosodic=os.path.split(globals()['__file__'])[0]
sys.path.insert(0,dir_prosodic)
dir_imports=os.path.join(dir_prosodic,'lib')
sys.path.append(dir_imports)
dir_mtree=os.path.join(dir_prosodic,'metricaltree')
sys.path.append(dir_mtree)
## import necessary objects
#toprintconfig=__name__=='__main__'
toprintconfig=False
def loadConfigPy(toprint=True,dir_prosodic=None,config=None):
import imp
settings={'constraints':[]}
if not dir_prosodic: dir_prosodic=sys.path[0]
config=config if config else imp.load_source('config', os.path.join(dir_prosodic,'config.py'))
vnames = [x for x in dir(config) if not x.startswith('_')]
for vname in vnames:
vval=getattr(config,vname)
if vname=='Cs':
for k,v in vval.items():
cname=k+'/'+str(v)
settings['constraints']+=[cname]
else:
settings[vname]=vval
if toprint:
print ">> loaded settings:"
for k,v in sorted(settings.items()):
if type(v) == list:
print '\t',k
for x in v:
print '\t\t',x
else:
print '\t',k,'\t',v
#settings['constraints']=" ".join(settings['constraints'])
#settings['meters']=loadMeters()
return settings
config=loadConfigPy(toprint=toprintconfig,dir_prosodic=dir_prosodic)
#config['meters']=loadMeters()
from prosodic import *