{ "info": { "author": "Vinta Chen", "author_email": "vinta.chen@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: Chinese (Simplified)", "Natural Language :: Chinese (Traditional)", "Natural Language :: English", "Natural Language :: Japanese", "Natural Language :: Korean", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Education", "Topic :: Software Development :: Internationalization", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Text Processing", "Topic :: Text Processing :: General", "Topic :: Text Processing :: Linguistic", "Topic :: Utilities" ], "description": "pangu.py\n========\n\n.. image:: https://img.shields.io/travis/vinta/pangu.py/master.svg?style=flat-square\n :target: https://travis-ci.org/vinta/pangu.py\n\n.. image:: https://img.shields.io/codecov/c/github/vinta/pangu.py/master.svg?style=flat-square\n :target: https://codecov.io/github/vinta/pangu.py\n\n.. image:: https://img.shields.io/pypi/v/pangu.svg?style=flat-square\n :target: https://pypi.org/project/pangu/\n\n.. image:: https://img.shields.io/pypi/pyversions/pangu.svg?style=flat-square\n :target: https://pypi.org/project/pangu/\n\n.. image:: https://img.shields.io/badge/made%20with-%e2%9d%a4-ff69b4.svg?style=flat-square\n :target: https://vinta.ws/code/\n\nParanoid text spacing for good readability, to automatically insert whitespace between CJK (Chinese, Japanese, Korean) and half-width characters (alphabetical letters, numerical digits and symbols).\n\n- `pangu.go `_ (Go)\n- `pangu.java `_ (Java)\n- `pangu.js `_ (JavaScript)\n- `pangu.py `_ (Python)\n- `pangu.space `_ (Web API)\n\nInstallation\n============\n\n.. code-block:: bash\n\n $ pip install -U pangu\n\nUsage\n=====\n\nIn Python\n---------\n\n.. code-block:: py\n\n import pangu\n\n new_text = pangu.spacing_text('\u7576\u4f60\u51dd\u8996\u8457bug\uff0cbug\u4e5f\u51dd\u8996\u8457\u4f60')\n # new_text = '\u7576\u4f60\u51dd\u8996\u8457 bug\uff0cbug \u4e5f\u51dd\u8996\u8457\u4f60'\n\n nwe_content = pangu.spacing_file('path/to/file.txt')\n # nwe_content = '\u8207 PM \u6230\u9b25\u7684\u4eba\uff0c\u61c9\u7576\u5c0f\u5fc3\u81ea\u5df1\u4e0d\u8981\u6210\u70ba PM'\n\nIn CLI\n------\n\n.. code-block:: bash\n\n $ pangu \"\u8acb\u4f7f\u7528uname -m\u6307\u4ee4\u4f86\u6aa2\u67e5\u4f60\u7684Linux\u4f5c\u696d\u7cfb\u7d71\u662f32\u4f4d\u5143\u6216\u662f[\u654f\u611f\u8bcd\u5df2\u88ab\u5c4f\u853d]\u4f4d\u5143\"\n \u8acb\u4f7f\u7528 uname -m \u6307\u4ee4\u4f86\u6aa2\u67e5\u4f60\u7684 Linux \u4f5c\u696d\u7cfb\u7d71\u662f 32 \u4f4d\u5143\u6216\u662f [\u654f\u611f\u8bcd\u5df2\u88ab\u5c4f\u853d] \u4f4d\u5143\n\n $ python -m pangu \"\u70ba\u4ec0\u9ebc\u5c0f\u660e\u6709\u554f\u984c\u90fd\u4e0dGoogle\uff1f\u56e0\u70ba\u4ed6\u6709Bing\"\n \u70ba\u4ec0\u9ebc\u5c0f\u660e\u6709\u554f\u984c\u90fd\u4e0d Google\uff1f\u56e0\u70ba\u4ed6\u6709 Bing\n\n $ echo \"\u672a\u4f86\u7684\u67d0\u4e00\u5929\uff0cGmail\u914d\u5099\u7684AI\u53ef\u80fd\u6703\u5f97\u51fa\u4e00\u500b\u7d50\u8ad6\uff1a\u60f3\u8981\u6d88\u6ec5\u5783\u573e\u90f5\u4ef6\u6700\u597d\u7684\u8fa6\u6cd5\u5c31\u662f\u6d88\u6ec5\u4eba\u985e\" >> path/to/file.txt\n $ pangu -f path/to/file.txt >> pangu_file.txt\n $ cat pangu_file.txt\n \u672a\u4f86\u7684\u67d0\u4e00\u5929\uff0cGmail \u914d\u5099\u7684 AI \u53ef\u80fd\u6703\u5f97\u51fa\u4e00\u500b\u7d50\u8ad6\uff1a\u60f3\u8981\u6d88\u6ec5\u5783\u573e\u90f5\u4ef6\u6700\u597d\u7684\u8fa6\u6cd5\u5c31\u662f\u6d88\u6ec5\u4eba\u985e\n\n $ echo \"\u5fc3\u88e1\u60f3\u7684\u662fMicroservice\uff0c\u624b\u88e1\u505a\u7684\u662fDistributed Monolith\" | pangu\n \u5fc3\u88e1\u60f3\u7684\u662f Microservice\uff0c\u624b\u88e1\u505a\u7684\u662f Distributed Monolith\n\n $ echo \"\u4f60\u5f9e\u4ec0\u9ebc\u6642\u5019\u958b\u59cb\u7522\u751f\u4e86\u6211\u6c92\u4f7f\u7528Monkey Patch\u7684\u932f\u89ba?\" | python -m pangu\n \u4f60\u5f9e\u4ec0\u9ebc\u6642\u5019\u958b\u59cb\u7522\u751f\u4e86\u6211\u6c92\u4f7f\u7528 Monkey Patch \u7684\u932f\u89ba\uff1f\n\nHistory\n=======\n\n4.0.6 (2019-02-09)\n------------------\n\n- Implement **Paranoid Text Spacing algorithm** v4\n- Support Python 3.7\n- Drop Python 2.7 support\n\n3.3.0.1 (2018-01-20)\n--------------------\n\n- Support Python 3.6\n- Add a method: ``pangu.spacing_file()``\n- Add a command-line tool: ``pangu``\n\n3.0.0 (2016-01-24)\n------------------\n\n- Support Python 3.5\n- Refactoring\n- Rename ``text_spacing()`` to ``spacing_text()``\n\n2.5.6.3 (2015-05-18)\n--------------------\n\n- Add an alias to ``spacing()``: ``text_spacing()``\n- Fix unicode issue in Python 2.x\n\n2.5.6.2 (2015-05-17)\n--------------------\n\n- Fix setup.py\n\n2.5.6 (2015-05-17)\n------------------\n\n- Synchronize version number with `pangu.js `_\n- Improve **Paranoid Text Spacing algorithm**\n\n1.0.0 (2014-02-12)\n------------------\n\n- Hello World\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/vinta/pangu.py", "keywords": "chinese file japanese korean obsessive-compulsive-disorder ocd pangu paranoia paranoid readability spacing text", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pangu", "package_url": "https://pypi.org/project/pangu/", "platform": "", "project_url": "https://pypi.org/project/pangu/", "project_urls": { "Homepage": "https://github.com/vinta/pangu.py" }, "release_url": "https://pypi.org/project/pangu/4.0.6.1/", "requires_dist": null, "requires_python": "", "summary": "Paranoid text spacing for good readability, to automatically insert whitespace between CJK (Chinese, Japanese, Korean) and half-width characters (alphabetical letters, numerical digits and symbols).", "version": "4.0.6.1" }, "last_serial": 4798702, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "3c552467ae4f79bfc8cf1c6f151692b4", "sha256": "e6bee3cd18de8e29e316eb0e519109b45c495bf1dd1978b432f3013e0a91dafd" }, "downloads": -1, "filename": "pangu-1.0.0.tar.gz", "has_sig": false, "md5_digest": "3c552467ae4f79bfc8cf1c6f151692b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3592, "upload_time": "2014-02-11T18:32:06", "url": "https://files.pythonhosted.org/packages/7b/e1/63288a71711fe61869dbca9b2004abd83ac302664474ffbcbd38fb85b930/pangu-1.0.0.tar.gz" } ], "2.5.6.2": [ { "comment_text": "", "digests": { "md5": "16dcd139466049c2176b1c5ab0faeed9", "sha256": "e30fb060e6d722380ae9f9c3416baf2597e290579fec8fec39a1035fd9ce6e91" }, "downloads": -1, "filename": "pangu-2.5.6.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "16dcd139466049c2176b1c5ab0faeed9", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6651, "upload_time": "2015-05-17T16:03:13", "url": "https://files.pythonhosted.org/packages/8a/50/f4e7109a4a82e5038aa2a64ad1cfa647134464bae3082d40fe617de88b30/pangu-2.5.6.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3643b1397ff85458fbef5af99497d032", "sha256": "18c67ee2b80ce53288f57b951a5dd1e6a6c6e1d6e46c80a45f2bb78b2c3d04e0" }, "downloads": -1, "filename": "pangu-2.5.6.2.tar.gz", "has_sig": false, "md5_digest": "3643b1397ff85458fbef5af99497d032", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4319, "upload_time": "2015-05-17T16:03:09", "url": "https://files.pythonhosted.org/packages/dc/ac/3fb2011dd1f1ecb9375afcee568664e777ab46675e21ea101617704d2db7/pangu-2.5.6.2.tar.gz" } ], "2.5.6.3": [ { "comment_text": "", "digests": { "md5": "9bb75e30f620fdeaad3082d3d32ffc4c", "sha256": "2a92d738e455829c99946d0c32df7e66de32b2f442d09500b5df0a3084b3aeb8" }, "downloads": -1, "filename": "pangu-2.5.6.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9bb75e30f620fdeaad3082d3d32ffc4c", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6860, "upload_time": "2015-05-17T17:54:25", "url": "https://files.pythonhosted.org/packages/60/37/eef12ae70281d85628b437f28d4ff28a6a90677892a42d42efe92baf661a/pangu-2.5.6.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f7b651f7129b396f9d289b454fbb6c42", "sha256": "6fe0d4ef7c204ed930ab00cec25506f94935395d4b3450d2f2008c3de6abdc5f" }, "downloads": -1, "filename": "pangu-2.5.6.3.tar.gz", "has_sig": false, "md5_digest": "f7b651f7129b396f9d289b454fbb6c42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4479, "upload_time": "2015-05-17T17:54:21", "url": "https://files.pythonhosted.org/packages/8d/75/dacfb3b5a015a33fd6a37d51e72f4956f9c0598e5b66e6903d3368ea5b2a/pangu-2.5.6.3.tar.gz" } ], "3.0.0": [ { "comment_text": "", "digests": { "md5": "ebee7bbbb0283fe2473cf2d9834a35a6", "sha256": "0098712a1f3d871b35786bfdb3c924abb95160b2a19a97e7f5e473cbd40153fd" }, "downloads": -1, "filename": "pangu-3.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ebee7bbbb0283fe2473cf2d9834a35a6", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 6854, "upload_time": "2016-01-24T08:07:40", "url": "https://files.pythonhosted.org/packages/86/6e/a784b240911ea11b370c239fca2d9572d855a85342a2571333a74d1adfe7/pangu-3.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c80ba5eef27afaad867663954beb0f62", "sha256": "400999748ada9a654af6ff50a76a1800e53dfa1a12867d872e3d40a360422912" }, "downloads": -1, "filename": "pangu-3.0.0.tar.gz", "has_sig": false, "md5_digest": "c80ba5eef27afaad867663954beb0f62", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4631, "upload_time": "2016-01-24T08:07:33", "url": "https://files.pythonhosted.org/packages/60/66/cf641afc627507db1f31eefd866bc6d2b01dbe043d1769559b5588b91b41/pangu-3.0.0.tar.gz" } ], "3.3.0.1": [ { "comment_text": "", "digests": { "md5": "41cc6fe8ac96d39e7fd8015ee64a9072", "sha256": "2c0b6cb2a4ff9e7a159e48645f81a2895037f4cdb625ef4c70a65bf32edf383c" }, "downloads": -1, "filename": "pangu-3.3.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "41cc6fe8ac96d39e7fd8015ee64a9072", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8273, "upload_time": "2018-01-20T13:50:52", "url": "https://files.pythonhosted.org/packages/0c/cf/dc6d30e01a1e10f5ea6b76ab73041e8a8dc5736b33ebd3d10b5546bdcd3a/pangu-3.3.0.1-py2.py3-none-any.whl" } ], "4.0.6.1": [ { "comment_text": "", "digests": { "md5": "d495b259c168d32f30a9d155c57f96d1", "sha256": "5023dced34b48da7ec61a2847efcbb8cf4fb748f8e589e1e7dfb008b7ad00206" }, "downloads": -1, "filename": "pangu-4.0.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d495b259c168d32f30a9d155c57f96d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6401, "upload_time": "2019-02-08T18:17:28", "url": "https://files.pythonhosted.org/packages/48/77/b52fac2ca4e4596f22dd6200b99ad515fb64b1ae7d3a12325b45b11e2a67/pangu-4.0.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c1f566e1ce37b26e56b94d14e19270a9", "sha256": "f799d127709fe5ecff5d476945ac63d4be758b7bda02efb95715f1dc24472a2f" }, "downloads": -1, "filename": "pangu-4.0.6.1.tar.gz", "has_sig": false, "md5_digest": "c1f566e1ce37b26e56b94d14e19270a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6288, "upload_time": "2019-02-08T18:17:30", "url": "https://files.pythonhosted.org/packages/78/dd/55a1e9d35ac17f49869359b2197fc09d17ee024ba545985b49b3e75a870a/pangu-4.0.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "d495b259c168d32f30a9d155c57f96d1", "sha256": "5023dced34b48da7ec61a2847efcbb8cf4fb748f8e589e1e7dfb008b7ad00206" }, "downloads": -1, "filename": "pangu-4.0.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d495b259c168d32f30a9d155c57f96d1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6401, "upload_time": "2019-02-08T18:17:28", "url": "https://files.pythonhosted.org/packages/48/77/b52fac2ca4e4596f22dd6200b99ad515fb64b1ae7d3a12325b45b11e2a67/pangu-4.0.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c1f566e1ce37b26e56b94d14e19270a9", "sha256": "f799d127709fe5ecff5d476945ac63d4be758b7bda02efb95715f1dc24472a2f" }, "downloads": -1, "filename": "pangu-4.0.6.1.tar.gz", "has_sig": false, "md5_digest": "c1f566e1ce37b26e56b94d14e19270a9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6288, "upload_time": "2019-02-08T18:17:30", "url": "https://files.pythonhosted.org/packages/78/dd/55a1e9d35ac17f49869359b2197fc09d17ee024ba545985b49b3e75a870a/pangu-4.0.6.1.tar.gz" } ] }