Skip to main content

Terminal colors made easy!

Project description

Python Easy Color

Color output in python2/3 made easy!

Description

Make python color ouput easy in UNIX terminals that support ANSI sequences.

Installation

pip install easycolor

Documentation

Check the documentation at: (http://easycolor.readthedocs.io/en/latest/) also available at: (https://georgetg.github.io/easycolor/)

Source Code

Check at github: (https://github.com/GeorgeTG/easycolor)

License

Copyright George T. Gougoudis 2016. BSD 3-Clause license; see LICENSE file.

Basic usage

To wrap text, the wrap function must be imported.

from easycolor.style import wrap as _w

The text is then wrapped as easy as

# wrap text, appends a style-reset
print(_w('yellow on red', fg='yellow', bg='red'))
print('normal text')

To compile a style, the make_style function is used:

from easycolor.style import make_style, RESET

Example:

# define some styles
black_on_white = make_style(fg='black', bg='white')
# we have to reset the background here
red_bold = make_style(fg='red', bg='reset', opt='bold')
# An options reset is only possible with a total reset
# we can however negate an option to remove it('!option').
green_bold_underline = make_style(fg='green', opt=('!bold', 'underline'))

print(black_on_white + 'Black on white' + red_bold + 'Red bold' +
      green_bold_underline + 'Green not bold underline' + RESET)

Note: For advanced formatting use the easycolor.parser module.

Advanced usage

First obtain an instance

from easycolor.parser import ColorParser
parser = ColorParser()

Then for printing

cprint = parser.cprint
# Add rainbow colors!
cprint("""<f:red>r<f:yellow>ai<f:green>nb<f:blue>o<f:magenta>w"""
       """</f>o</f>bn</f>ia</f>r</f>""")
# complex foreground - background
cprint("""<f:red,b:yellow>red on yellow</b>just red<b:black>red on black!"""
       """<f:green>green on black</f>again red on black</f,b>normal""")

Parse a format string for a colored logger, for later use

INFO = parser.parse("[<f:cyan>INFO</f>] <o:bold>{}")
print(INFO.format('Some info..'))

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

easycolor-0.1.tar.gz (5.1 kB view hashes)

Uploaded Source

Built Distribution

easycolor-0.1-py2.py3-none-any.whl (7.3 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page