Automated music library format conversion with cuesheet detection, tagging support and configurable regex to obtain tags from filenames. Configuration with ini-files to support multiple locations with multiple quality requirements.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

64 lines
1.8 KiB

# -*- coding: utf-8 -*-
"""
Name: str_utils.py (module)
Porpose: module for cosmetic output console in ANSI sequences
Writer: Gianluca Pernigoto <jeanlucperni@gmail.com>
Copyright: (c) 2022 Gianluca Pernigoto <jeanlucperni@gmail.com>
license: GPL3
Rev: Jan 10 2022
Code checker: flake8, pylint
"""
def msgdebug(head='', info=None, warn=None, err=None, tail=''):
"""
Print debug messages:
``head`` can be used for additionals custom string to use
at the beginning of the string.
``tail`` can be used for additionals custom string to use
at the end of the string.
``info`` print in blue color, ``warn`` print in yellow color
``err`` print in red color.
"""
if info:
print(f"{head}\033[32;1mINFO:\033[0m {info}{tail}")
elif warn:
print(f"{head}\033[33;1mWARNING:\033[0m {warn}{tail}")
elif err:
print(f"{head}\033[31;1mERROR:\033[0m {err}{tail}")
def msgcolor(head='', orange=None, green=None, azure=None, tail=''):
"""
Print information messages by explicitly
choosing the name of the color to be displayed:
``head`` can be used for additionals custom string to use
at the beginning of the string.
``tail`` can be used for additionals custom string to use
at the end of the string.
"""
if orange:
print(f"{head}\033[33;1m{orange}\033[0m{tail}")
elif green:
print(f"{head}\033[32;1m{green}\033[0m{tail}")
elif azure:
print(f"{head}\033[34;1m{azure}\033[0m{tail}")
def msgend(done=None, abort=None):
"""
Print status messages at the end of the tasks
"""
if done:
print("\033[1m..Finished!\033[0m\n")
elif abort:
print("\033[1m..Abort!\033[0m\n")
def msg(message):
"""
Print any string messages
"""
print(message)