# econv) t1 O7 V `$ Y9 I% o* P
' B% d: a5 C; |% ?将易语言源码转为文本,可用于 git diff。" V& F2 Q5 L! P* Z* W# L5 Z- S, y
! t4 H8 X- \' p7 j9 x* M8 y, }# 构成
# R7 R5 K b, `7 p8 P" a6 M9 q: ?7 L2 A
* EProjectFile C#,反编译后魔改而来8 a# ^6 f9 W$ V. j& j" a; M
* econv 程序主体,IronPython,用 python 主要是由方便的表格库,IronPython 方便调用 EProjectFile1 u4 m( A6 @ S/ w* H% c+ `' h
* elib C,用于读取易语言支持库,C# 弄复杂的结构体麻烦
1 ]" O) z) d& D C
' u: T* L2 u! L7 u6 p$ p1 I# 问题3 v9 ~; A, ^/ i
% j; H7 [6 j. M1. 必须设置易语言支持库路径到环境变量 Path
* p# _3 a) T% w, |2. IronPython Bug 原因,terminaltables 必须用 wcwidth 魔改
1 \" K9 H: R2 _6 [" [3. 有些字符 wcwidth 判断的宽度和 Win10 CMD 显示不同导致表格稍微出错6 O- @. i5 ?& V* g7 W
4. 易语言格式有些无法处理,如写错的参数类型等* I; n2 T v6 Y w8 _: d# u
5. 支持库内类型,常量没有处理4 F2 t+ b r+ V" F/ ~( ]
6. 结构体等没有处理( A3 ?; D! a+ m9 W( H; {
7. 代码函数名没有处理! b. @0 n9 u3 ^; \9 A) L6 B d
8. 魔改 EProjectFile 有些搜索直接 Array.Find 可能比较慢
5 C, a" E2 Q- f6 j9. IronPython 启动较慢可能导致 diff 时很慢
6 s+ M4 P6 u( ?) e8 [' h( @4 P8 {+ R. y, Q; Z: o* w% {% y
( j; l# h+ D% C0 w q4 ^2 C7 F: q6 k {, F' b
源码在github下载的6 p9 S7 h1 S; m9 E8 m B* v3 V7 U
, R+ n9 u1 |$ s) F9 T) H
1 v( R- \, f% x" e7 `! V1 s6 g; ?7 j2 a% {% N
. G2 |2 C7 m/ z, p5 {1 E: s5 R. s$ z" N+ i
( X9 P3 T+ \8 [' \8 k. ~
0 l8 I7 [, a! _& {, j6 o# u$ ~- ]4 n* t' o2 k$ ]1 ?
|