{ "info": { "author": "Yaowu Zhang", "author_email": "BiarFordlander@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Terminals" ], "description": "Sheen:\n==========================\n\n**Pythonic** cross-platform colored terminal text **[support 16/256 colors]**\n> Let color be your _new dimension_ to integrate _more imagination_.\n\n
\n\nQuick Learn\n---\n> Come to try the code below, in your IDLE\n\n```{.sourceCode .python}\n>>> from sheen import Str\n>>>\n>>> Str.red('render font color with lowercase')\n>>> Str.RED('render background color with uppercase')\n>>> Str.Underline('render style with capital')\n>>> \n>>> Str.red.BLUE('joint rendering with dot')\n>>> Str.BLUE.red(\"yes! it's free, no order restrain\")\n>>> Str.cyan.LIGHTBLUE.Underline('esay to lean, ease to use')\n>>>\n>>> Str.red(\"You can use it like builtin 'str'\").split(' ')\n>>> text = Str.lightcyan.Twinkle(\"Let us integrate more imagination\")\n>>> text.replace('Let us', Str.lightred('pip install sheen, to'))\n>>> Str.LIGHTWHITE('@!$#!&*&simplify for human! i am sheen!#@$#%^&').title().strip('!@#$%^&*')\n```\n

Simple is better than complex. flat is better than nested. Readability counts.
-- excerpt from the zen of python

\n\n**Str Type Supported:**\n\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n \n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\t\n\n\n\n\n
Str Type Supported Attribute Chain
Font Colorblackredgreenyellow
lightblacklightredlightgreenlightyellow
bluemagentacyanwhite
lightbluelightmagentalightcyanlightwhite
Background ColorBLACKREDGREENYELLOW
BLUEMAGENTACYANWHITE
LIGHTBLACKLIGHTREDLIGHTGREENLIGHTYELLOW
LIGHTBLUELIGHTMAGENTALIGHTCYANLIGHTWHITE
Style TypeBoldItalicUnderlineTwinkle
\n\n\nInstallation\n---\n> To install sheen, simply use pip:\n\n```{.sourceCode .bash}\n$ pip install sheen\n$ python -m sheen\n```\n\n**If it's successfully installed, it will be as shown below.**\n\n
\n\n

It's a simple way to get tutorial, you don't need to come here every time\n
when you forget the usage of sheen

\n\nLearn More\n---\n### How to display with 256 colors\n> Your can choose the color that your like with 'Color' type\n\n```{.sourceCode .python}\n>>> from sheen import Str, Color\n>>> Color.palette() # Reference color code\n>>>\n>>> Color.rgb(222)('render font color with rgb')\n>>> Color.RGB(123)('render background color with RGB')\n>>> \n>>> Color.rgb([255,200,190])('render font color with rgb')\n>>> Color.RGB([150,120,250])('render background color with RGB')\n>>>\n>>> DIYcolor = Color.rgb(222) | Color.RGB(123) | Str.Underline\n>>> DIYcolor(\"It's my color style\")\n>>>\n>>> text = Str.Underline('Use slice to modification color')\n>>> text[:] = Color.rgb(222)\n>>> text[-3:-5] = Color.RGB(123)\n>>> text\n``` \n\n
\n\n

It's said that 256 colors can be valid in the terminal
but maybe invalid in the IDE

\n\n### How to config Multicolored logging\n> Sheen has been build-in scheme, which can prints different colored logs based on log level:\n\n
\n\n

As you can see, sheen only takes 5 lines to complete\n
the configuration of the Multicolored logging

\n\n> You can design 'Formatter', to get color scheme which belong to yourself\n\n```python\nimport logging\nfrom sheen import Str, ColoredHandler\n\nlogger = logging.getLogger(__name__)\nlogger.setLevel(logging.DEBUG)\n\n\nhandle = ColoredHandler()\nhandle.setFormatters({\n logging.DEBUG: logging.Formatter(fmt=str(Str.blue('%(asctime)s - %(levelname)s | %(message)s')), datefmt='%Y-%m-%d'),\n logging.INFO: Str.magenta('%(asctime)s - %(levelname)s | %(message)s'),\n})\nlogger.addHandler(handle)\n\nlogger.debug('debug')\nlogger.info('info')\nlogger.warning('warning')\nlogger.error('error')\nlogger.critical('critical')\n```\n

Take it easy, it will be use after rendered as 'str' type \n
without affecting the logging output speed

\n\n### How to get the best performance\n> Sheen was born for convenience, when you want the fastest, there is a way.\n\n```{.sourceCode .python}\n>>> from sheen import Str, Color\n>>> str(Str.cyan.BLUE('... content ...'))\n'\\x1b[36;44m... content ...\\x1b[0m'\n>>>\n``` \n\n

\n\n

Don't forget to 'import sheen', It's necessary on windows.\n
-- Windows 10 is default closed ANSI Escape Code

\n\nFAQ\n---\n- :speech_balloon: Why not support python2.7\n > Python 2.7 will retire in 2020 https://pythonclock.org/, \n > Many libraries already or will to give up compatibility 2.7, \n > such as NumPy, Pandas, Ipython, Matplotlib ... \n- :speech_balloon: Why not support version below Windows 10\n > Windows support _ANSI Escape Code_ start with win10, \n > this gives the possibility to use ANSI to display colors for sheen.\n > the version below Windows 10 will retire in future, just like python2.7\n- :speech_balloon: How to get the best running performance\n > Render to _ANSI Escape Code_, and then copy it into your code, no faster than this.\n > but in most cases you needn't to do this\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/EchoShoot/Sheen", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "sheen", "package_url": "https://pypi.org/project/sheen/", "platform": "", "project_url": "https://pypi.org/project/sheen/", "project_urls": { "Homepage": "https://github.com/EchoShoot/Sheen" }, "release_url": "https://pypi.org/project/sheen/0.1.1/", "requires_dist": null, "requires_python": ">=3.5", "summary": "Pythonic cross-platform colored terminal text [support 16/256 colors]", "version": "0.1.1" }, "last_serial": 5948064, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "455a9de8a896749ddec5f831afa40c35", "sha256": "3cad9c61f70f0b783293b01cd02e88a008ee729c288b071f4beb78ce42ea05d0" }, "downloads": -1, "filename": "sheen-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "455a9de8a896749ddec5f831afa40c35", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 11851, "upload_time": "2019-09-23T05:39:21", "url": "https://files.pythonhosted.org/packages/34/b0/da2c71ec34e1c5a1820ce5f17793c4a8481a93a5d40780a3499219f7c83a/sheen-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "13d3aa5cc8637c8be237b80b30ea1eb7", "sha256": "0b18fb13a35c9d229c74c70720145d29aa8a312322d552a72a3db37ae48c75cc" }, "downloads": -1, "filename": "sheen-0.0.1.tar.gz", "has_sig": false, "md5_digest": "13d3aa5cc8637c8be237b80b30ea1eb7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 12859, "upload_time": "2019-09-23T05:39:24", "url": "https://files.pythonhosted.org/packages/13/1c/0b4ba0d2c94fd1924ec3b969d4d3f1d8af673c96c29d567c333c6fd5d47b/sheen-0.0.1.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "caa827ca9c5d7b9d373797b03cbe7681", "sha256": "9276742e86ddb9ddd29c2c8987f5457e0b463cf7c68a3bf6cc5ee6bbf7112ef9" }, "downloads": -1, "filename": "sheen-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "caa827ca9c5d7b9d373797b03cbe7681", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 11992, "upload_time": "2019-09-24T12:02:14", "url": "https://files.pythonhosted.org/packages/8e/4f/5f80a5935d91158ca28064d2536557a7baee78f3742cb87e29a275a75195/sheen-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cf22272d8b8c6fc492670b51826aee2c", "sha256": "8ad865adb5bacd17a506f5e42df19392bd89adac495858325b6241deb37c0ae7" }, "downloads": -1, "filename": "sheen-0.1.0.tar.gz", "has_sig": false, "md5_digest": "cf22272d8b8c6fc492670b51826aee2c", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13153, "upload_time": "2019-09-24T12:02:17", "url": "https://files.pythonhosted.org/packages/77/9d/a328e42a01857b3c856c4f206c2de4d72ada27bdb2c33baf61067d173862/sheen-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "cb6d3f15df68b45d4f1e5947782e0a50", "sha256": "37dfc7864851c345eb9a9df7ff77875feeea9912dd091ba5b0e90e0433ed0e33" }, "downloads": -1, "filename": "sheen-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cb6d3f15df68b45d4f1e5947782e0a50", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12598, "upload_time": "2019-10-09T06:33:23", "url": "https://files.pythonhosted.org/packages/7b/78/36c4d1451d6de640f6907dca5d3a389a7e55bbbf18c9c4a44098f53aa051/sheen-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1676cee49f66b3c59b10a932c8a208d5", "sha256": "3222615ba74f51e2f04bd344aa1bd122e97ec561cd2d52ff4a6184c04aafa743" }, "downloads": -1, "filename": "sheen-0.1.1.tar.gz", "has_sig": false, "md5_digest": "1676cee49f66b3c59b10a932c8a208d5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13759, "upload_time": "2019-10-09T06:33:25", "url": "https://files.pythonhosted.org/packages/76/63/90a2a4d0097a9524a36542fdfb3996312d1fc7d30851ffdfa8780458b216/sheen-0.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "cb6d3f15df68b45d4f1e5947782e0a50", "sha256": "37dfc7864851c345eb9a9df7ff77875feeea9912dd091ba5b0e90e0433ed0e33" }, "downloads": -1, "filename": "sheen-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cb6d3f15df68b45d4f1e5947782e0a50", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 12598, "upload_time": "2019-10-09T06:33:23", "url": "https://files.pythonhosted.org/packages/7b/78/36c4d1451d6de640f6907dca5d3a389a7e55bbbf18c9c4a44098f53aa051/sheen-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1676cee49f66b3c59b10a932c8a208d5", "sha256": "3222615ba74f51e2f04bd344aa1bd122e97ec561cd2d52ff4a6184c04aafa743" }, "downloads": -1, "filename": "sheen-0.1.1.tar.gz", "has_sig": false, "md5_digest": "1676cee49f66b3c59b10a932c8a208d5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 13759, "upload_time": "2019-10-09T06:33:25", "url": "https://files.pythonhosted.org/packages/76/63/90a2a4d0097a9524a36542fdfb3996312d1fc7d30851ffdfa8780458b216/sheen-0.1.1.tar.gz" } ] }