Generate console base notification messages.
Project description
Overview
The Notify package provides a set of utility functions for printing formatted messages to the terminal. The main purpose of this module is to facilitate the display of success, warning, error, informational, and system messages with specific color and style formatting using predefined constants.
Features
- Display success messages with green text.
- Display warning messages with yellow text.
- Display error messages with red text.
- Display informational messages with cyan text.
- Display system messages with grey text.
- Support for custom colors, prompts, and formatting scopes.
- Error handling for invalid colors and scopes.
Installation
To install the Notify package, use the following command:
pip install wolfsoftware.notify
Usage
Here is an example of how to use the notification functions provided by the Notify package:
from wolfsoftware.notify import success_message, warning_message, error_message, info_message, system_message
print(success_message("Operation completed successfully."))
print(warning_message("This is a warning message."))
print(error_message("An error occurred."))
print(info_message("This is some information."))
print(system_message("System update available."))
Functions
success_message
Print a success message with a specific format.
def success_message(
message: str,
color: str = 'green+bold',
prompt: str = 'Success',
scope: str = 'prompt_text',
prompt_prefix: str = '[ ',
prompt_suffix: str = ' ]'
) -> str:
warning_message
Print a warning message with a specific format.
def warning_message(
message: str,
color: str = 'yellow+bold',
prompt: str = 'Warning',
scope: str = 'prompt_text',
prompt_prefix: str = '[ ',
prompt_suffix: str = ' ]'
) -> str:
error_message
Print an error message with a specific format.
def error_message(
message: str,
color: str = 'red+bold',
prompt: str = 'Error',
scope: str = 'prompt_text',
prompt_prefix: str = '[ ',
prompt_suffix: str = ' ]'
) -> str:
failure_message
Alias for error_message
, but with a prompt='Failure'.
failure_message = error_message
info_message
Print an informational message with a specific format.
def info_message(
message: str,
color: str = 'cyan+bold',
prompt: str = 'Info',
scope: str = 'prompt_text',
prompt_prefix: str = '[ ',
prompt_suffix: str = ' ]'
) -> str:
system_message
Print a system message with a specific format.
def system_message(
message: str,
color: str = 'grey+bold',
prompt: str = 'System',
scope: str = 'prompt_text',
prompt_prefix: str = '[ ',
prompt_suffix: str = ' ]'
) -> str:
Customization
You can customize the color, prompt text, and the scope of the color application using the provided parameters. Here are some examples:
Custom Colors
print(success_message("Operation completed successfully.", color="blue+bold"))
Custom Prompts
print(success_message("Operation completed successfully.", prompt="Completed"))
Custom Scopes
all
: Applies the color to the entire message.prompt
: Applies the color to the prompt only.prompt_text
: Applies the color to the text inside the brackets.
print(success_message("Operation completed successfully.", scope="prompt"))
print(success_message("Operation completed successfully.", scope="prompt_text"))
Custom Prefixes and Suffixes
You can also customize the prompt prefix and suffix.
print(success_message("Operation completed successfully.", prompt_prefix="<<", prompt_suffix=">>"))
Error Handling
The Notify package includes error handling for invalid color and scope inputs. If an invalid color or scope is provided, a NotifyValueError
will be raised with an appropriate error message.
from wolfsoftware.notify import NotifyValueError
try:
print(success_message("Operation completed successfully.", color="invalid"))
except NotifyValueError as e:
print(f"Error: {e}")
Testing
The Notify package includes a comprehensive test suite to ensure the correct functionality of all message formatting functions. The tests verify that the package version is defined, the message functions return correctly formatted strings, and exceptions are raised appropriately for invalid inputs.
Running Tests
To run the tests, use a testing framework such as pytest:
pytest tests/test_notify.py
Acknowledgements
The Notify package uses the colorama
library for cross-platform support of ANSI color codes. Many thanks to the contributors of the colorama
project for their excellent work.
Project details
Release history Release notifications | RSS feed
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
File details
Details for the file wolfsoftware_notify-0.1.1.tar.gz
.
File metadata
- Download URL: wolfsoftware_notify-0.1.1.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7c8ea0e3bc469cef032670be6d97b1d7fcaf20680321e5552b77740d9033334b |
|
MD5 | 6c0e079c05a95859e25d672face4edae |
|
BLAKE2b-256 | c5b1dbb93ec5e20b563b59b506be8b6d1b1b9bf4c534150d2526861b6efd829c |
File details
Details for the file wolfsoftware.notify-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: wolfsoftware.notify-0.1.1-py3-none-any.whl
- Upload date:
- Size: 9.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.0 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d524dca906f7cb19ad316b450e867522d40c8b1fcd73042718ea0bb07b0c3f9 |
|
MD5 | 74e4ac887b41cab7a1f4cbd6d552f901 |
|
BLAKE2b-256 | c6ba24d16ea2310cbea5b162adbd5d40e950ded9067ff8687785f7b7f96aa00d |