Skip to content
This repository was archived by the owner on Jan 13, 2024. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 0 additions & 39 deletions Examples/Styling.py

This file was deleted.

15 changes: 8 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# - AthenaColor -
[![pypi](https://img.shields.io/pypi/v/AthenaColor)](https://pypi.org/project/AthenaColor/) [![GitHub license](https://img.shields.io/github/license/DirectiveAthena/VerSC-AthenaColor)](https://github.com/DirectiveAthena/VerSC-AthenaColor/blob/master/LICENSE) [![Discord](https://img.shields.io/discord/814599159926620160?color=maroon)](https://discord.gg/6JcDbhXkCH) [![Downloads](https://pepy.tech/badge/athenacolor)](https://pepy.tech/project/athenacolor)

<img height="128" src="https://github.com/DirectiveAthena/VSC-AthenaColor/blob/master/Resources/AthenaColor.png?raw=true" width="128"/>
<img height="128" src="https://github.com/DirectiveAthena/AthenaColor/blob/master/Resources/AthenaColor.png?raw=true" width="128" alt="AthenaColor Logo"/>

---
## Package Details
Expand All @@ -16,11 +16,11 @@ A *No Dependency* Python package do display stext styling in a console.
#### Python Version
- Supported Python versions: **3.7**, **3.8**, **3.9**, **3.10**
- Other older versions of Python are not currently supported.
- These older versions will probably not be supported by @Andreas Sas himself, but if you want to contribute to the project and make this package compatible with older versions of Python, Pull requests are always welcome.
- These older versions will probably not be supported by @AndreasSas himself, but if you want to contribute to the project and make this package compatible with older versions of Python, Pull requests are always welcome.

---
## Quick Examples
Inline styling:
**Inline styling**:
```python
from AthenaColor import Fore, Style

Expand All @@ -32,7 +32,7 @@ print(
"""
)
```
Nested Styling:
**Nested Styling**:
```python
from AthenaColor import ForeNest, StyleNest

Expand All @@ -44,7 +44,7 @@ print(
StyleNest.Bold("EXAMPLE"),
"of nested styling"
),
"As you can see, the correct color returns here by itself",
"As you can see, a reset of color doesn't need to happen as this is done automatically",
sep="\n"
))
)
Expand All @@ -54,20 +54,21 @@ print(
## Documentation
Full documentation can be found at:
**[directiveathena.com/athenacolor-docu](https://www.directiveathena.com/athenacolor-docu)** (redirect to Obsidian.md publish site)
(Reminder, the documentation is still under heavy development)

---
## Install
To install the package in your Python environment

```console
```
pip install AthenaColor --upgrade
```

---

## Links
Project files can be found at:
- [GitHub Repo](https://github.com/DirectiveAthena/VerSC-AthenaColor)
- [GitHub Repo](https://github.com/DirectiveAthena/AthenaColor)
- [Pypi link](https://pypi.org/project/AthenaColor/)

---
Expand Down
6 changes: 3 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,15 @@

setuptools.setup(
name="AthenaColor",
version="5.1.0",
version="5.1.1",
author="Andreas Sas",
author_email="",
description="Package to support full usage of RGB colors in the Console.",
long_description=long_description,
long_description_content_type="text/markdown",
url="https://github.com/DirectiveAthena/VerSC-AthenaColor",
url="https://github.com/DirectiveAthena/AthenaColor",
project_urls={
"Bug Tracker": "https://github.com/DirectiveAthena/VerSC-AthenaColor/issues",
"Bug Tracker": "https://github.com/DirectiveAthena/AthenaColor/issues",
},
license="GPLv3",
package_dir={"": "src"},
Expand Down
111 changes: 44 additions & 67 deletions src/AthenaColor/Color/ColorSystem.py
Original file line number Diff line number Diff line change
Expand Up @@ -568,95 +568,72 @@ def __repr__(self) -> str:
# BELOW HERE IS FOR SPEED INCREASE!
# Possible because we now have a __hash__ on any given ColorSystem class
# needs to be placed here, as only after all the defining of all the colors, this map can be made
_r_export = lambda r: r.export()
_r_export_RGBAtoRGB = lambda r: (r.r, r.g, r.b)
_tuple3 = lambda r: (r,r,r)
_tuple4 = lambda r: (r,r,r,r)
_same = lambda r: r
trnspDef = init.transparentDefault[1]
_rgb_hex_mapped = {
RGB: lambda r: r.export(),
HEX: lambda r: r.export(),
HSL: lambda r: hsl_to_rgb(r.h, r.s, r.l),
HSV: lambda r: hsv_to_rgb(r.h, r.s, r.v),
CMYK: lambda r: cmyk_to_rgb(r.c,r.m,r.y,r.k),
RGBA: lambda r: (r.r, r.g, r.b),
HEXA: lambda r: (r.r, r.g, r.b),
int: lambda r: (r,r,r),
float: lambda r: (r,r,r),
tuple: lambda r: r
}
_rgba_hexa_mapped = {
RGB: lambda r: (r.r, r.g, r.b, init.transparentDefault[1]),
HEX: lambda r: (r.r, r.g, r.b, init.transparentDefault[1]),
HSL: lambda r: (*hsl_to_rgb(r.h, r.s, r.l), init.transparentDefault[1]),
HSV: lambda r: (*hsv_to_rgb(r.h, r.s, r.v), init.transparentDefault[1]),
CMYK: lambda r: (*cmyk_to_rgb(r.c,r.m,r.y,r.k), init.transparentDefault[1]),
RGBA: lambda r: r.export(),
HEXA: lambda r: r.export(),
int: lambda r: (r,r,r,r),
float: lambda r: (r,r,r,r),
tuple: lambda r: r
}

color_conversions_mapped ={
RGB : {
RGB: _r_export,
HEX: _r_export,
HSL: lambda r: hsl_to_rgb(r.h, r.s, r.l),
HSV: lambda r: hsv_to_rgb(r.h, r.s, r.v),
CMYK: lambda r: cmyk_to_rgb(r.c,r.m,r.y,r.k),
RGBA: _r_export_RGBAtoRGB,
HEXA: _r_export_RGBAtoRGB,
int: _tuple3,
float: _tuple3,
tuple: _same
},
HEX : {
RGB: _r_export,
HEX: _r_export,
HSL: lambda r: hsl_to_rgb(r.h, r.s, r.l),
HSV: lambda r: hsv_to_rgb(r.h, r.s, r.v),
CMYK: lambda r: cmyk_to_rgb(r.c,r.m,r.y,r.k),
RGBA: _r_export_RGBAtoRGB,
HEXA: _r_export_RGBAtoRGB,
int: _tuple3,
float: _tuple3,
tuple: _same
},
# RGB, HEX follow the same pattern
RGB : _rgb_hex_mapped,
HEX : _rgb_hex_mapped,
# RGBA and HEXA follow the same pattern
RGBA : _rgba_hexa_mapped,
HEXA : _rgba_hexa_mapped,
HSL : {
RGB: lambda r: rgb_to_hsl(r.r, r.g, r.b),
HEX: lambda r: rgb_to_hsl(r.r, r.g, r.b),
HSL: _r_export,
HSL: lambda r: r.export(),
HSV: lambda r: hsv_to_hsl(r.h, r.s, r.v),
CMYK: lambda r: cmyk_to_hsl(r.c,r.m,r.y,r.k),
RGBA: lambda r: rgb_to_hsl(r.r, r.g, r.b),
HEXA: lambda r: rgb_to_hsl(r.r, r.g, r.b),
int: _tuple3,
float: _tuple3,
tuple: _same
int: lambda r: (r,r,r),
float: lambda r: (r,r,r),
tuple: lambda r: r
},
HSV : {
RGB: lambda r: rgb_to_hsv(r.r, r.g, r.b),
HEX: lambda r: rgb_to_hsv(r.r, r.g, r.b),
HSL: lambda r: hsl_to_hsv(r.h, r.s, r.l),
HSV: _r_export,
HSV: lambda r: r.export(),
CMYK: lambda r: cmyk_to_hsv(r.c,r.m,r.y,r.k),
RGBA: lambda r: rgb_to_hsv(r.r, r.g, r.b),
HEXA: lambda r: rgb_to_hsv(r.r, r.g, r.b),
int: _tuple3,
float: _tuple3,
tuple: _same
int: lambda r: (r,r,r),
float: lambda r: (r,r,r),
tuple: lambda r: r
},
CMYK : {
RGB: lambda r: rgb_to_cmyk(r.r, r.g, r.b),
HEX: lambda r: rgb_to_cmyk(r.r, r.g, r.b),
HSL: lambda r: hsl_to_cmyk(r.h, r.s, r.l),
HSV: lambda r: hsv_to_cmyk(r.h, r.s, r.v),
CMYK: _r_export,
CMYK: lambda r: r.export(),
RGBA: lambda r: rgb_to_cmyk(r.r, r.g, r.b),
HEXA: lambda r: rgb_to_cmyk(r.r, r.g, r.b),
int: _tuple4,
float: _tuple4,
tuple: _same
},
RGBA : {
RGB: lambda r: (r.r, r.g, r.b, trnspDef),
HEX: lambda r: (r.r, r.g, r.b, trnspDef),
HSL: lambda r: (*hsl_to_rgb(r.h, r.s, r.l), trnspDef),
HSV: lambda r: (*hsv_to_rgb(r.h, r.s, r.v), trnspDef),
CMYK: lambda r: (*cmyk_to_rgb(r.c,r.m,r.y,r.k), trnspDef),
RGBA: _r_export,
HEXA: _r_export,
int: _tuple4,
float: _tuple4,
tuple: _same
},
HEXA : {
RGB: lambda r: (r.r, r.g, r.b, trnspDef),
HEX: lambda r: (r.r, r.g, r.b, trnspDef),
HSL: lambda r: (*hsl_to_rgb(r.h, r.s, r.l), trnspDef),
HSV: lambda r: (*hsv_to_rgb(r.h, r.s, r.v), trnspDef),
CMYK: lambda r: (*cmyk_to_rgb(r.c,r.m,r.y,r.k), trnspDef),
RGBA: _r_export,
HEXA: _r_export,
int: _tuple4,
float: _tuple4,
tuple: _same
},
int: lambda r: (r,r,r,r),
float: lambda r: (r,r,r,r),
tuple: lambda r: r
}
}
Loading