Awesome CLI input and output functions for Python 3.x scripts.
Project description
cli-fragments
Awesome terminal input and output functions for python scripts.
Icon by by Pop Vectors - Flaticon
Why this name?
I like to consider the command-line interface as if it were a graphical interface. In the development of graphical interfaces, 'components' are usually used to facilitate maintainability and design consistency. In my opinion, the word 'fragments' is a correct synonym to describe the same approach, but for command-line interfaces.
Fragments
error
: a red message having[✕]
as prefixsuccess
: a green message having[✓]
as prefixwarning
: a yellow message having[!]
as prefixtext
: a standard text in terminal having the proper paddingdebug
: a default color message having[#]
as prefixnotice
: a blue message having[~]
as prefixask
: a qustion to the user having[?]
as prefix. The input value can be optionally validated passing avalidator
callback
Screenshot
Usage
First of all, you have to install the library using pip
.
pip install cli-fragments
Then import the library in your script and use it as follows.
from cli_fragments import CliFragments
# Custom validators function.
# They must accept an str parameter and must raise ValueError on validation failure.
def validator_function(value: str):
if value == "wrong":
raise ValueError
# Instantiate the main class
io = CliFragments()
# Use the output methods as shown
io.debug("This is a debug message.")
io.notice("This is a notice message.")
io.warning("This is a warning message.")
io.error("This is an error message.")
io.success("This is a success message.")
io.text("This is padded raw text message.")
# The default and the validator parameters are optional in the ask method.
# You can pass None to avoid using them.
io.ask("This is a user question.", None, None)
# This is a validated ask method call having a default value.
io.ask("This is a user question.", "default", validator_function)
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
cli_fragments-1.2.0.tar.gz
(15.1 kB
view hashes)
Built Distribution
Close
Hashes for cli_fragments-1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2b3ff23f9631def40c568f11f1fdf43f6dd27a27e4435d225a411ee0d6502795 |
|
MD5 | 85491430caf5a6913f2d71629f4e61bd |
|
BLAKE2b-256 | 31f12919afa366a87aa6251dcd32595ccaad762d1b65909d5532d1a96782179a |