idcn


Nameidcn JSON
Version 1.3.0 PyPI version JSON
download
home_pagehttps://github.com/zetaloop/IDLE-CN
SummaryIDLE Chinese Translation | IDLE 汉化包
upload_time2024-11-04 06:33:59
maintainerNone
docs_urlNone
authorzetaloop
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Python IDLE 汉化

![Pypi 总下载量](https://img.shields.io/pepy/dt/idcn?label=Pypi%20总下载量) ![GitHub 总下载量](https://img.shields.io/github/downloads/zetaloop/idle-cn/total?label=GitHub%20总下载量)


**支持版本: Python 3.9~3.13 的最新版本**(跟随 [cpython](https://github.com/python/cpython) 各分支最新源码)

<img src="https://github.com/zetaloop/IDLE-CN/assets/36418285/16f3d1a4-6e77-44d7-8a66-a396539b38d0" alt="First Image" style="width: 48%;">
<img src="https://github.com/zetaloop/IDLE-CN/assets/36418285/281674c1-69a1-4383-ba31-fdc612d7395b" alt="Second Image" style="width: 48%;">

<br>将 IDLE 的界面变为中文。

同时,修复了中文输入法下输入某些字母时误触发快捷键的问题。

## 使用方法

### 安装

打开您的命令提示符或终端,输入以下命令:
```bash
pip install idcn
# 如果连接速度比较慢的话,请在后边加上 -i https://mirrors.aliyun.com/pypi/simple
```
安装完成后,打开您的 IDLE,界面即为中文。

### 卸载

同样输入以下命令卸载:
```bash
pip uninstall idcn
```
卸载 idcn 之后您的 IDLE 将恢复原版英文。

## 遇到问题

如果在安装汉化之后 IDLE 闪退:

<details><summary>Python 版本过旧:<code>ImportError: cannot import name '_setup_dialog` from 'tkinter.simpledialog'</code></summary>
遇到这个报错,是因为 Python 版本太旧。<br>
以 Python 3.9 为例,最新的 IDLE 3.9 所使用的 _setup_dialog 函数是在 Python 3.9.5 添加的。<br>
如果您的 Python 3.9 版本比 3.9.5 更旧,就会导致 IDLE 找不到这个函数,启动闪退。<br>
要解决这个问题,请安装最新的 Python。(只需要小版本号最新即可,比如更新到 <a href="https://www.python.org/downloads/release/python-3913/">Python 3.9.13</a>)
</details>

<details><summary>配置文件编码问题:<code>UnicodeDecodeError: 'gbk' codec can't decode byte 0x83 in position 289</code></summary>
IDLE 打不开,可能是因为旧的 IDLE 配置文件的编码类型和新的(UTF-8)不一样。<br>
只需把旧的配置文件删除,然后应该就可以打开了。<br>
Windows:<code>C:\Users\%username%\.idlerc</code> 文件夹<br>
Linux/macOS:<code>~/.idlerc</code> 文件夹
</details>

如果汉化仍然闪退,请将 IDLE 的报错内容和 Python 版本告诉我([创建议题](https://github.com/zetaloop/IDLE-CN/issues/new) / [电子邮件](mailto:zetaloop@outlook.com)),我去修复。

您可先 [卸载汉化](#卸载),一切应该会恢复原样。<br>(如果还是闪退,参考上面配置文件编码问题,删除配置文件,现在应该真的恢复原样了)

## 开发资料

构建指南:[Build.md](https://github.com/zetaloop/IDLE-CN/blob/main/Build.md)<br>测试指南:[Test.md](https://github.com/zetaloop/IDLE-CN/blob/main/Test.md)

推荐搭配 [MapleMono NF SC](https://github.com/subframe7536/maple-font) 字体

## 项目进展
- [x] 汉化 turtledemo
- [x] 汉化 idlelib
- [x] 修复 IDLE 中文输入法误触问题
- [x] 制作 pip 汉化包
- [ ] 汉化 idle 附带的文档
- [ ] 把界面变得更现代一些

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/zetaloop/IDLE-CN",
    "name": "idcn",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": "zetaloop",
    "author_email": "zetaloop@outlook.com",
    "download_url": "https://files.pythonhosted.org/packages/85/b6/7feaffd01a0eeaaab9932727b914e51ad5d10687cae80279f9e75405a8b7/idcn-1.3.0.tar.gz",
    "platform": null,
    "description": "# Python IDLE \u6c49\u5316\r\n\r\n![Pypi \u603b\u4e0b\u8f7d\u91cf](https://img.shields.io/pepy/dt/idcn?label=Pypi%20\u603b\u4e0b\u8f7d\u91cf) ![GitHub \u603b\u4e0b\u8f7d\u91cf](https://img.shields.io/github/downloads/zetaloop/idle-cn/total?label=GitHub%20\u603b\u4e0b\u8f7d\u91cf)\r\n\r\n\r\n**\u652f\u6301\u7248\u672c: Python 3.9~3.13 \u7684\u6700\u65b0\u7248\u672c**\uff08\u8ddf\u968f [cpython](https://github.com/python/cpython) \u5404\u5206\u652f\u6700\u65b0\u6e90\u7801\uff09\r\n\r\n<img src=\"https://github.com/zetaloop/IDLE-CN/assets/36418285/16f3d1a4-6e77-44d7-8a66-a396539b38d0\" alt=\"First Image\" style=\"width: 48%;\">\r\n<img src=\"https://github.com/zetaloop/IDLE-CN/assets/36418285/281674c1-69a1-4383-ba31-fdc612d7395b\" alt=\"Second Image\" style=\"width: 48%;\">\r\n\r\n<br>\u5c06 IDLE \u7684\u754c\u9762\u53d8\u4e3a\u4e2d\u6587\u3002\r\n\r\n\u540c\u65f6\uff0c\u4fee\u590d\u4e86\u4e2d\u6587\u8f93\u5165\u6cd5\u4e0b\u8f93\u5165\u67d0\u4e9b\u5b57\u6bcd\u65f6\u8bef\u89e6\u53d1\u5feb\u6377\u952e\u7684\u95ee\u9898\u3002\r\n\r\n## \u4f7f\u7528\u65b9\u6cd5\r\n\r\n### \u5b89\u88c5\r\n\r\n\u6253\u5f00\u60a8\u7684\u547d\u4ee4\u63d0\u793a\u7b26\u6216\u7ec8\u7aef\uff0c\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\uff1a\r\n```bash\r\npip install idcn\r\n# \u5982\u679c\u8fde\u63a5\u901f\u5ea6\u6bd4\u8f83\u6162\u7684\u8bdd\uff0c\u8bf7\u5728\u540e\u8fb9\u52a0\u4e0a -i https://mirrors.aliyun.com/pypi/simple\r\n```\r\n\u5b89\u88c5\u5b8c\u6210\u540e\uff0c\u6253\u5f00\u60a8\u7684 IDLE\uff0c\u754c\u9762\u5373\u4e3a\u4e2d\u6587\u3002\r\n\r\n### \u5378\u8f7d\r\n\r\n\u540c\u6837\u8f93\u5165\u4ee5\u4e0b\u547d\u4ee4\u5378\u8f7d\uff1a\r\n```bash\r\npip uninstall idcn\r\n```\r\n\u5378\u8f7d idcn \u4e4b\u540e\u60a8\u7684 IDLE \u5c06\u6062\u590d\u539f\u7248\u82f1\u6587\u3002\r\n\r\n## \u9047\u5230\u95ee\u9898\r\n\r\n\u5982\u679c\u5728\u5b89\u88c5\u6c49\u5316\u4e4b\u540e IDLE \u95ea\u9000\uff1a\r\n\r\n<details><summary>Python \u7248\u672c\u8fc7\u65e7\uff1a<code>ImportError: cannot import name '_setup_dialog` from 'tkinter.simpledialog'</code></summary>\r\n\u9047\u5230\u8fd9\u4e2a\u62a5\u9519\uff0c\u662f\u56e0\u4e3a Python \u7248\u672c\u592a\u65e7\u3002<br>\r\n\u4ee5 Python 3.9 \u4e3a\u4f8b\uff0c\u6700\u65b0\u7684 IDLE 3.9 \u6240\u4f7f\u7528\u7684 _setup_dialog \u51fd\u6570\u662f\u5728 Python 3.9.5 \u6dfb\u52a0\u7684\u3002<br>\r\n\u5982\u679c\u60a8\u7684 Python 3.9 \u7248\u672c\u6bd4 3.9.5 \u66f4\u65e7\uff0c\u5c31\u4f1a\u5bfc\u81f4 IDLE \u627e\u4e0d\u5230\u8fd9\u4e2a\u51fd\u6570\uff0c\u542f\u52a8\u95ea\u9000\u3002<br>\r\n\u8981\u89e3\u51b3\u8fd9\u4e2a\u95ee\u9898\uff0c\u8bf7\u5b89\u88c5\u6700\u65b0\u7684 Python\u3002\uff08\u53ea\u9700\u8981\u5c0f\u7248\u672c\u53f7\u6700\u65b0\u5373\u53ef\uff0c\u6bd4\u5982\u66f4\u65b0\u5230 <a href=\"https://www.python.org/downloads/release/python-3913/\">Python 3.9.13</a>\uff09\r\n</details>\r\n\r\n<details><summary>\u914d\u7f6e\u6587\u4ef6\u7f16\u7801\u95ee\u9898\uff1a<code>UnicodeDecodeError: 'gbk' codec can't decode byte 0x83 in position 289</code></summary>\r\nIDLE \u6253\u4e0d\u5f00\uff0c\u53ef\u80fd\u662f\u56e0\u4e3a\u65e7\u7684 IDLE \u914d\u7f6e\u6587\u4ef6\u7684\u7f16\u7801\u7c7b\u578b\u548c\u65b0\u7684\uff08UTF-8\uff09\u4e0d\u4e00\u6837\u3002<br>\r\n\u53ea\u9700\u628a\u65e7\u7684\u914d\u7f6e\u6587\u4ef6\u5220\u9664\uff0c\u7136\u540e\u5e94\u8be5\u5c31\u53ef\u4ee5\u6253\u5f00\u4e86\u3002<br>\r\nWindows\uff1a<code>C:\\Users\\%username%\\.idlerc</code> \u6587\u4ef6\u5939<br>\r\nLinux/macOS\uff1a<code>~/.idlerc</code> \u6587\u4ef6\u5939\r\n</details>\r\n\r\n\u5982\u679c\u6c49\u5316\u4ecd\u7136\u95ea\u9000\uff0c\u8bf7\u5c06 IDLE \u7684\u62a5\u9519\u5185\u5bb9\u548c Python \u7248\u672c\u544a\u8bc9\u6211\uff08[\u521b\u5efa\u8bae\u9898](https://github.com/zetaloop/IDLE-CN/issues/new) / [\u7535\u5b50\u90ae\u4ef6](mailto:zetaloop@outlook.com)\uff09\uff0c\u6211\u53bb\u4fee\u590d\u3002\r\n\r\n\u60a8\u53ef\u5148 [\u5378\u8f7d\u6c49\u5316](#\u5378\u8f7d)\uff0c\u4e00\u5207\u5e94\u8be5\u4f1a\u6062\u590d\u539f\u6837\u3002<br>\uff08\u5982\u679c\u8fd8\u662f\u95ea\u9000\uff0c\u53c2\u8003\u4e0a\u9762\u914d\u7f6e\u6587\u4ef6\u7f16\u7801\u95ee\u9898\uff0c\u5220\u9664\u914d\u7f6e\u6587\u4ef6\uff0c\u73b0\u5728\u5e94\u8be5\u771f\u7684\u6062\u590d\u539f\u6837\u4e86\uff09\r\n\r\n## \u5f00\u53d1\u8d44\u6599\r\n\r\n\u6784\u5efa\u6307\u5357\uff1a[Build.md](https://github.com/zetaloop/IDLE-CN/blob/main/Build.md)<br>\u6d4b\u8bd5\u6307\u5357\uff1a[Test.md](https://github.com/zetaloop/IDLE-CN/blob/main/Test.md)\r\n\r\n\u63a8\u8350\u642d\u914d [MapleMono NF SC](https://github.com/subframe7536/maple-font) \u5b57\u4f53\r\n\r\n## \u9879\u76ee\u8fdb\u5c55\r\n- [x] \u6c49\u5316 turtledemo\r\n- [x] \u6c49\u5316 idlelib\r\n- [x] \u4fee\u590d IDLE \u4e2d\u6587\u8f93\u5165\u6cd5\u8bef\u89e6\u95ee\u9898\r\n- [x] \u5236\u4f5c pip \u6c49\u5316\u5305\r\n- [ ] \u6c49\u5316 idle \u9644\u5e26\u7684\u6587\u6863\r\n- [ ] \u628a\u754c\u9762\u53d8\u5f97\u66f4\u73b0\u4ee3\u4e00\u4e9b\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "IDLE Chinese Translation | IDLE \u6c49\u5316\u5305",
    "version": "1.3.0",
    "project_urls": {
        "Homepage": "https://github.com/zetaloop/IDLE-CN"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "098318b430d830ff81e1459b238239fdea0184c8968da122acc94d0e691a5b09",
                "md5": "dcebe1f857258c1308088eee7e75ab04",
                "sha256": "0ed25bc6ff81c2b820b3d0ea1fb4b5bc32142f46c235887fa4e3483e981f0989"
            },
            "downloads": -1,
            "filename": "idcn-1.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "dcebe1f857258c1308088eee7e75ab04",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 2911148,
            "upload_time": "2024-11-04T06:33:57",
            "upload_time_iso_8601": "2024-11-04T06:33:57.485601Z",
            "url": "https://files.pythonhosted.org/packages/09/83/18b430d830ff81e1459b238239fdea0184c8968da122acc94d0e691a5b09/idcn-1.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "85b67feaffd01a0eeaaab9932727b914e51ad5d10687cae80279f9e75405a8b7",
                "md5": "c5689e75fb6b6205628b4f10b7077bab",
                "sha256": "abafff98c2fa56fbe2feb4166166ad644a878bfdfdf7438d702dbf60986cf08f"
            },
            "downloads": -1,
            "filename": "idcn-1.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c5689e75fb6b6205628b4f10b7077bab",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 2544931,
            "upload_time": "2024-11-04T06:33:59",
            "upload_time_iso_8601": "2024-11-04T06:33:59.724955Z",
            "url": "https://files.pythonhosted.org/packages/85/b6/7feaffd01a0eeaaab9932727b914e51ad5d10687cae80279f9e75405a8b7/idcn-1.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-04 06:33:59",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "zetaloop",
    "github_project": "IDLE-CN",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "idcn"
}
        
Elapsed time: 0.33618s