Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/reorx/python-terminal-color
Drop-in single file library for printing color in terminal
https://github.com/reorx/python-terminal-color
color python terminal
Last synced: 2 months ago
JSON representation
Drop-in single file library for printing color in terminal
- Host: GitHub
- URL: https://github.com/reorx/python-terminal-color
- Owner: reorx
- License: mit
- Created: 2016-08-27T11:09:24.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-04-11T05:50:57.000Z (9 months ago)
- Last Synced: 2024-11-01T10:35:08.214Z (2 months ago)
- Topics: color, python, terminal
- Language: Python
- Homepage:
- Size: 265 KB
- Stars: 71
- Watchers: 4
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
Python Terminal Color
=====================.. image:: screenshot.png
Introduction
------------1. This is a drop-in library for print colorized output in terminal.
2. It has no pypi package, which means you can't install it through pip.
3. It is recommended to be used as a submodule of your own project,
so that no dependency will be involved.
4. ``color.py`` is Python 3 only and recommended to choose; ``color_compat.py`` is Python 2/3 compatible, only use it if you still struggle in the Python 2 morass.Usage
-----Copy the ``color.py`` file to your project, then:
.. code:: python
from yourproject import color
# 8 bit color
print(color.red('red') + color.green('green') + color.blue('blue'))
print(color.bold(color.yellow('bold yellow')) + color.underline(color.cyan('underline cyan')))
print(color.magenta_hl('magenta highlight'))# xterm 256 color
print(color.bg256('A9D5DE', color.fg256('276F86', 'Info!')))
print(color.bg256('E0B4B4', color.fg256('912D2B', 'Warning!')))
print(color.hl256('10a3a3', 'Teal'))Note:
1. Every color function receives and returns string, so that the result
could be used with any other strings, in any string formatting situation.2. If you pass a str type string, the color function will return a str.
If you pass a bytes type string, the color function will return a bytes.3. Color functions could be composed together, like put ``red`` into ``bold``,
or put ``bg256`` into ``fg256``. ``xxx_hl`` and ``hl256`` are mostly used
independently.API
---function ``(s)``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Decorate string with specified color.
``color_function`` is one of below function names:
======== ============ ===========
Colors Background Highlight
======== ============ ===========
black black_bg black_hl
red red_bg red_hl
green green_bg green_hl
yellow yellow_bg yellow_hl
blue blue_bg blue_hl
magenta magenta_bg magenta_hl
cyan cyan_bg cyan_hl
white white_bg white_hl
======== ============ ===========A color function with ``_bg`` suffix means it will set color as background.
A color function with ``_hl`` suffix means it will set color as background,
and change the foreground as well to make the word standout.Parameters:
:param str s: The input string
:return: The decorated string
:rtype: string
:raises ValueError: if the message_body exceeds 160 charactersfunction ``(s)``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Decorate string with specified style.
``style_function`` is one of below function names:
- bold
- italic
- underline
- strike
- blinkArguments and return are the same as ``color_function``.
function ``<256_color_function>(hexrgb, s)``
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Decorate string with specified hex rgb color
``256_color_function`` is one of below function names:
- fg256: will set color as foreground.
- bg256: will set color as background.
- hl256: will highlight input with the color.Parameters:
:param str hexrgb: The hex rgb color string, accept length 3 and 6. eg: ``555``, ``912D2B``
:param str s: The input string
:return: The decorated string
:rtype: string
:raises ValueError: If the input string's length not equal to 3 or 6.