gasolin / zhpy

周蟒, 用中文化 python 語法寫程式
https://pypi.python.org/pypi/zhpy
60 stars 12 forks source link

为支持Python3进行前期调研和需求分析 #38

Open nobodxbodon opened 5 years ago

nobodxbodon commented 5 years ago

下面是一些初步设想的目标, 想请教一下可行性:

其他辅助工具/库

暂缓:

gasolin commented 5 years ago

我覺得實現是沒什麼問題的,zhpy 2已經把以上主要問題點都解決過一遍了

nobodxbodon commented 5 years ago

@gasolin 我不大确定的主要是这两点:

请问这些也都在zhpy 2中实现了吗?

gasolin commented 5 years ago

這兩點並沒有做到, 编译/警示信息也中文化 可以參考 https://github.com/gasolin/zhpy/blob/master/zhpy2/zhpy/interpreter.py#L58 看看能否攔截信息並中文化後顯示

nobodxbodon commented 5 years ago

请问有没有周蟒的实现设计文档/介绍文章? 想了解一下pyparsing的作用等等细节. 打算先尝试一下编译/警示信息也中文化. 支持源码调试(设置断点等等)对于小程序/教学用也许并不必要, 因此暂时搁置.

gasolin commented 5 years ago

可參考簡報 https://www.slideshare.net/gasolin/python-zhpy 和 wiki 文檔 https://github.com/gasolin/zhpy/tree/wiki

看簡報才發現zhpy2也有做 traceback_convertor

nobodxbodon commented 5 years ago

刚写了个对traceback的汉化示例, 也许通过替换sys.excepthook更优雅些?

请问zhpy2的traceback_convertor是类似作用吗? 还是为调试用?

wiki好像主要是用户手册. 请问pyparsing模块是用于进行周蟒代码和原始Python代码的互转吗?

gasolin commented 5 years ago

刚写了个对traceback的汉化示例, 也许通过替换sys.excepthook更优雅些?

sounds good

请问zhpy2的traceback_convertor是类似作用吗? 还是为调试用?

時間太久遠忘了,請自行參考源碼嘗試

wiki好像主要是用户手册. 请问pyparsing模块是用于进行周蟒代码和原始Python代码的互转吗?

check https://github.com/gasolin/zhpy/blob/master/zhpy2/zhpy/zhpy.py#L207

nobodxbodon commented 5 years ago

多谢. 当下觉得周蟒<->原始Python源码互转可以置后实现, 因为前期的应用应该多数很短.

另外, 请问如果要开始实现, 哪种方式比较恰当? 是fork此repo并在zhpy3的基础上实现, 或是另开repo从头开始并标明渊源, 或是其他?

nobodxbodon commented 5 years ago

@gasolin 请教一下, 周蟒中进行的token替换部分, 如果字符串碰巧是关键字, 是否会出现问题? 比如:

convertor("印出 '印出'")

是否会返回print 'print'?

gasolin commented 5 years ago

不記得了,應該是不會 可以跑跑看

nobodxbodon commented 5 years ago

@gasolin 多谢. 刚比较了一下, 发现pyparsing加上quotedString之后就好了.

初步感觉Python3的内置utf支持会节省一些工作量(相对周蟒2).

fanghaifei commented 4 years ago

能尽快出zhpy3吗?先能实现zhpy2的所有功能

我觉得常用类库的中文化,很有必要

ini文件,可以考虑允许 #符号的注释

nobodxbodon commented 4 years ago

@fanghaifei 群里有位在实现类似功能,实现机制也许不同。据了解已开始标准库的中文化,以及 IDE 的辅助功能。有兴趣的话可以交流一下。

laowu2019 commented 4 years ago

@fanghaifei 我正在汉化 python,请进中文编程QQ群 620225373 交流。