A Python module to add ANSI color and format codes to strings for terminal output
Project description
eRCaGuy_PyColors
For text formatting and colorization in the terminal.
A Python module to add ANSI color and format codes to strings for terminal output.
Installation
Install from PyPI (once published):
pip install eRCaGuy_PyColors
Or install from source:
git clone https://github.com/ElectricRCAircraftGuy/eRCaGuy_PyColors.git
cd eRCaGuy_PyColors
pip install .
For development (editable install):
pip install -e .
To install into a virtual environment:
# Create and activate a virtual environment
python3 -m venv ~/venvs/eRCaGuy_PyColors
. ~/venvs/eRCaGuy_PyColors/bin/activate
# To see if you're in a virtual environment, run:
echo "$VIRTUAL_ENV"
# If in a virtual environment, this will print the path to the virtual environment.
# Otherwise, it will print nothing.
# Now install as above. Ex:
# Option 1: install from PyPI:
pip install eRCaGuy_PyColors
# Option 2: install from source:
# - Inside of the `eRCaGuy_PyColors` repo:
pip install .
Example usage in your Python program
# Recommended import style
import eRCaGuy_PyColors as colors
# OR (older style):
# import eRCaGuy_PyColors.ansi_colors as colors
print(f"{colors.FGR}This text is green.{colors.END}")
print(f"{colors.FBB}This text is bright blue.{colors.END}")
print(f"{colors.FBR}This text is bright red.{colors.END}")
colors.print_green("This text is green.")
colors.print_blue("This text is bright blue.")
colors.print_red("This text is bright red.")
colors.print_yellow("This text is bright yellow.")
Test and run this program
Run the built-in tests:
python3 -m eRCaGuy_PyColors
Example run and output:
eRCaGuy_PyColors$ ./ansi_colors.py
This text is green.
This text is bright blue.
This text is bright red.
This text is bright red.
This text is bright red.
This text is bright red.
This text is
bright red.
This text is bright yellow.
This text is not colored.
This text is bright yellow again.
This text is green.
Screenshot:
Publishing to PyPI
See:
- https://packaging.python.org/en/latest/tutorials/packaging-projects/
- https://packaging.python.org/en/latest/guides/writing-pyproject-toml/
For maintainers, to publish a new version to PyPI:
- Install or upgrade
twine:python3 -m pip install --upgrade twine build
- Update the version number in
eRCaGuy_PyColors/__init__.py. - Build the distribution packages according to the settings in
pyproject.toml:time python3 -m build
- Test an upload to TestPyPI first (recommended):
python3 -m twine upload --repository testpypi dist/*
- Test an installation in a virtual environment from TestPyPI:
python3 -m venv ~/venvs/test_eRCaGuy_PyColors . ~/venvs/test_eRCaGuy_PyColors/bin/activate pip install --index-url https://test.pypi.org/simple/ --no-deps eRCaGuy_PyColors
Test that it works as expected. - Upload to PyPI using twine:
python3 -m twine upload dist/*
- Test an installation in a virtual environment from PyPI:
python3 -m venv ~/venvs/eRCaGuy_PyColors . ~/venvs/eRCaGuy_PyColors/bin/activate pip install eRCaGuy_PyColors
Test that it works as expected.
References
- Borrowed from my file here: https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world/blob/master/python/pandas_dataframe_iteration_vs_vectorization_vs_list_comprehension_speed_tests.py
- https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world/blob/master/python/ansi_colors.py
- https://github.com/ElectricRCAircraftGuy/eRCaGuy_PathShortener/blob/main/ansi_colors.py <==
- My Bash ANSI format library here: https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world/blob/master/bash/ansi_text_format_lib.sh
- https://en.wikipedia.org/wiki/ANSI_escape_code#3-bit_and_4-bit
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ercaguy_pycolors-0.1.0.tar.gz.
File metadata
- Download URL: ercaguy_pycolors-0.1.0.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
54c89673f285373270c5bd372c616272a3899d6b55ddef3b106ac6c82446b342
|
|
| MD5 |
819c22dcd8b909a52d11f673d2c34409
|
|
| BLAKE2b-256 |
3ac121a7cae150f194c25ce5b8bd6b1e30521b886dd6ea4b7b168812035b855f
|
File details
Details for the file ercaguy_pycolors-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ercaguy_pycolors-0.1.0-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b34dee588df414a57e54a2176e5fdf55e36e1800ccfe1bfe4bf6f93bbf3f95c4
|
|
| MD5 |
63a0393fb6c4eca89e0c7fa0113b4f45
|
|
| BLAKE2b-256 |
d307cfaf867389e27243aeccc108c74a06d6cd935440fa1e510ea84008e99012
|