๐ ๐ฆ
VividHues
VividHues: ย ย ย Super light Python string formatter! ย
๐ ๏ธ Official Installation
โก Instant Installer + Updater
๐ Instant Installer ย โ ย Instructions
install_vividhues.sh
...
Once you've downloaded
bash install_vividhues.sh
in your shell/CLI
Run the command
install_vividhues.sh
file)
(Or... double click the
๐ Note!This requires Bash to be installed on your OS. Git Bash or WSL are two of many to pick from!
๐ Replit Installation
๐ Replit installation instructions in here! ๐
- Upload the installer script to your project's file system
- Run
bash install_vividhues.sh
in the shell
๐ Manual Shell Installation
๐ Manual installation instructions in here! ๐
Pop this command in your CLI/shell/terminal to install VividHues.
$ pip install VividHues
๐ก TipUse this command to update
pip install --upgrade VividHues
๐ข Importing
Stick this wherever you need VividHues!
from VividHues import Clr
๐งฑ Dependency
requirements.txt
(Highly Recommended!)
requirements.txt
...
Append the following to your Python packages VividHues>=5.3.0
Changelog:
VividHues>=3.0.0 # basics: only has Clr codes
VividHues>=4.1.0 # new: abbreviations & "Magic Functions"
VividHues>=5.2.0 # Magic Function: Clr.pattern()
VividHues>=5.3.0 # all Magic Functions no longer leak color
VividHues>=5.4.0 # Clr.delPrevLine()
.github/Dependabot.yml
(optional, but needs requirements.txt
)
.github
directory, create one.
First, if you don't already have a
Dependabot.yml
file to it.
Then, add a version: 2
updates:
- package-ecosystem: "pip"
directory: "/"
schedule:
interval: "daily"
Dockerfile
๐ณ (optional)
You can use this if you have a Docker container.
# recommended
COPY requirements.txt .
RUN pip install -r requirements.txt
# alternatively...
RUN pip install VividHues
๐ Python Example
print(Clr.BO + Clr.UL + Clr.rainbow('I love VividHues!'))
print(Clr.RED + "It's got my fave color!" + Clr.RS)
print(f"Soooo {Clr.jazzy('jazzy')}")
# ^^^
# you'll get an error using "" in f-string interpolations
print(Clr.pattern("Kenny Oliver", Clr.PURPLE, Clr.CYAN, Clr.LIME))
โ ๏ธ Preventing Color Leakage!
๐ค
What is color leakage??? Clr.RS
/Clr.RESET
It results in any trailing characters, in the output stream, to continue to have the same formatting.
This is an intentional feature, because it allows for the formatting of entire chunks of code in one go. See the example
๐ Note!As of
VividHues>=5.3.0
, ALL magic functions do not leak color.Previously, it was only
Clr.random()
!
๐
How do I prevent/solve this?
๐
ฐ๏ธ End print() with Clr.RS/Clr.RESET ย โ ย Short 'n' Sweet! ๐ฌ
print(... + Clr.RS) # recommended!
print(..., Clr.RS)
print(..., end=Clr.RS+"\n")
๐
ฑ๏ธ Format chunks of code ย โ ย Highly Recommended! ๐
# start formatting here
print(Clr.BOLD + Clr.RED, end="")
if something:
print(Clr.BLUE + "blah blah blah" + Clr.RS)
else:
for x in range(100):
# lots of print statements
# end formatting here
print(Clr.RS, end="")
๐ก Tip!These solutions also prevent the leakage of other formatting
(e.g.
Clr.BO
,Clr.BOLD
,Clr.UL
,Clr.UNDERLINE
)
๐ Available Clr
codes:
Just put a code in the gap Clr.___
Clr: ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย ย RED, ORANGE, YELLOW, LIME, GREEN, BLUE, CYAN, PURPLE, PINK, BLACK, WHITE
Formatter: ย ย ย ย UNDERLINE, UL, BOLD, BO
Reset: ย ย ย ย ย ย ย ย ย ย ย RESET, RS
๐ Note!In order to make your life easy, when reading the documentation,
Your import statement should be the following...
๐
from VividHues import Clr
so that you can useClr.___
๐๏ธ Erasing the previous line
VividHues provides you with a quick way to erase the last line of the CLI!
# Delete the last printed line of the CLI
Clr.delPrevLine()
# Delete the last 5 printed lines
Clr.delPrevLine(5)
๐ช Magic Functions!!!
๐ก TIP!Magic Functions do not leak color (as of
VividHues>=5.3.0
)
๐ฒ Clr.random()
print( Clr.random(string) )Paints your string in a random Clr code.
๐ท Clr.jazzy()
print( Clr.jazzy(string) )Paints each letter in jazzy random colors! It's a total gamble, that's guaranteed to be ugly! :)
๐ Clr.rainbow()
print( Clr.rainbow(string) )Paints your string in a rainbow pattern.
๐งช Clr.pattern()
print( Clr.pattern(string, *color) )Paint your letters in a repeating pattern, by specifying an unlimited amount of Clr codes!
๐ช How VividHues stacks up...
Feature | VividHues | Colorama | termcolor |
---|---|---|---|
Simplicity/Abstraction | |||
Font Colors | |||
Background/Highlight | |||
Bold/Underline | |||
Most Lightweight | |||
Auto-Reset | |||
Cursor Positioning | |||
Special/Unique Features | |||
Total | 6/8 | 5/8 | 6/8 |
Potentially, VividHues will have more features than the alternatives if they are implemented.
๐ Getting Package Info
VividHues comes with a variety of 'dunder' values that you can check out.
An important example is checking out the current version: VividHues.__version__
๐ Note!The import is different this time!
import VividHues
Dunders Command
You can use this command to find out all the possible dunders.
VividHues.dunders()
Dunder Values
dunder | what it does | expected output |
---|---|---|
__author__ |
author | "Kenneth Oliver ยฉ2022" |
__desc__ |
description | "Super light Python string formatter! |
__homepage__ |
GitHub URL | "https://github.com/KennyOliver/VividHues" |
__package__ |
package name | "VividHues" |
__pypi__ |
Pypi URL | "https://pypi.org/project/VividHues/" |
__version__ |
current version | (whatever the current version is!) |
Kenny Oliver ยฉ2022