在Construct 2.8字段变得没有名字,我需要一个或多或少可以自动翻译的脚本,类似于2to3 python脚本。为了充分披露,我是维护者。这不仅仅是为了我,也是为了整个社区。你知道吗
需要翻译的内容:
ULInt32 -> Int32ub (actually its from {U,S}{B,L}Int{8,16,24,32,64})
field("name") -> "name" / field
Struct("name", ..., ...) -> "name" / Struct(..., ...)
(still adding...)
我以前使用的regex工具:
#!/usr/bin/python3
import re, os, sys
def processfolder(top):
for root, dirs, files in os.walk(top):
for f in files:
if f.endswith('.py'):
processfile(os.path.join(root, f))
for d in dirs:
processfolder(os.path.join(root, d))
def processfile(fname):
print(fname+'... ', end='')
with open(fname, 'rt') as f:
txt = f.read()
txt = re.sub(r'???', lambda s: s.expand(r'\1'), txt)
with open(fname, 'wt') as f:
f.write(txt)
print('done')
processfolder(sys.argv[1])
目前没有回答
相关问题 更多 >
编程相关推荐