Skip to main content

Color printing in python

Project description

CircleCI

codecov

A Light-weight python package for terminal output in color

Overview

Chalk allows you to print to your terminal in color. It also provides a simple logging handler and formatter for a more informative logging experience. Why print in black and white?

Installation

pip install pychalk

Usage

from __future__ import print_function
import chalk

print(chalk.red('foo'))
import chalk

white = chalk.Chalk('white')
white('foo', bold=True, underline=True)
# returns '\x1b[37;1;4mfoo\x1b[0m'

bold_white = white + chalk.utils.FontFormat('bold')
bold_white('foo')
# returns '\x1b[37;1mfoo\x1b[0m'

bold_white + 'foo'
# returns '\x1b[37;1mfoo'

bold_white + 'foo' + chalk.RESET
# returns '\x1b[37;1mfoo/x1b[0m'

Testing

Install pyenv

curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
pyenv install -s -v 2.7.14 \
&& pyenv install -s -v 3.5.4 \
&& pyenv install -s -v 3.6.3

Then install the development requirements… To help with this please use:

./bin/install

Then run the tests using tox.

source venv/bin/activate
tox
py27 develop-inst-noop: /home/anthony/git/chalk

...

Ran 37 tests in 0.009s

OK
py36 runtests: commands[1] | coverage report -m
Name                Stmts   Miss  Cover   Missing
-------------------------------------------------
chalk/__init__.py      18      0   100%
chalk/logging.py       28      0   100%
chalk/utils.py        124      0   100%
-------------------------------------------------
TOTAL                 170      0   100%
_________________________________________________________________________________________ summary _________________________________________________________________________________________
  py27: commands succeeded
  py35: commands succeeded
  py36: commands succeeded
  congratulations :)

Using Docker

Alternatively use a docker image with pyenv installed. This project uses anthonyalmarza/alpine-pyenv:cable which has pyenv setup with the latest versions of python 2.7, 3.5 and 3.6 (as of Dec 19th 2017).

First build the image and tag it as chalk

./bin/local/build

Then run the tests

./bin/local/test

Thank you

  • @billjohnston

  • @livibetter

Project details


Download files

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

Source Distribution

pychalk-2.0.0.tar.gz (17.2 kB view details)

Uploaded Source

File details

Details for the file pychalk-2.0.0.tar.gz.

File metadata

  • Download URL: pychalk-2.0.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pychalk-2.0.0.tar.gz
Algorithm Hash digest
SHA256 d717fb587252bac5f7a9b832d361a186ae264780581a4e17d5e2b1f785ccb059
MD5 7d7684ad21d4c8e92e7cfd620feb0919
BLAKE2b-256 8d54dc8fc0ee09f073b9a65bced14859d98548cb6c2b00bbcdc0941f7599d7f7

See more details on using hashes here.

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