🌀 blue-options
🌀 blue_options implements an options argument for Bash.
here is an example use of an options in the vancouver-watching 🌈 ingest command:
> vanwatch help
vanwatch ingest \
area=<vancouver>,~batch,count=<-1>,dryrun,gif,model=<model-id>,~process,publish,~upload \
-|<object-name> \
[<args>]
. ingest <area> -> <object-name>.
this command takes in an options, an object, and args. an options is a string representation of a dictionary, such as,
area=<vancouver>,~batch,count=<-1>,dryrun,gif,model=<model-id>,~process,publish,~upload
which is equivalent, in json notation, to,
{
"area": "vancouver",
"batch": false,
"count": -1,
"dryrun": true,
"gif": true,
"model": "<model-id>",
"process": false,
"publish": true,
"upload": false,
}
for more refer to 🔻 giza.
installation
pip install blue_options
add this line to your ~/.bash_profile or ~/.bashrc,
source $(python -m blue_options locate)/.bash/blue_options.sh
usage
let your function receive an options argument, then parse it with abcli_options and abcli_options_int.
function func() {
local options=$1
local var=$(abcli_options "$options" var default)
local key=$(abcli_options_int "$options" key 0)
[[ "$key" == 1 ]] &&
echo "var=$var"
}
example 1
from reddit
How can I automate these tree commands I frequently need to type out? I would like to run:
git add .
git commit -m "Initial "commit"
git push
I got bored of typing them out each time. Can I make an alias or something like "gc" (for git commit). The commit message is always the same "Initial commit".
first, install blue-options. this will also install blueness.
pip install blue_options
then, copy example1.sh to your machine and add this line to the end of your bash_profile,
source <path/to/example1.sh>
now, you have access to the @git super command. here is how it works.
@git helpshows usage instructions (see below).@git commitruns the three commands. you can customize the message by running@git commit <message>. you can also avoid the push by running@git commit <message> ~push.- for any
<task>other thancommit,@git <task> <args>runsgit <task> <args>.
> @git help
@git commit [<message>] \
~push
. git commit with <message> and push.
@git <command>
. git <command>.
Metadata
Release files for blue-options 4.67.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| blue_options-4.67.1.tar.gz | 17.5 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| blue_options-4.67.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.6 kB
Release files / blue_options-4.67.1.tar.gz
| Download URL | blue_options-4.67.1.tar.gz |
|---|---|
| Size | 17.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c4ba7c890ea6725f95c25474acc4eeaa860a6c5c13e0373adb3713684d74a197
|
|
BLAKE2b-256 checksum How to use checksums |
42528b6e870c0ddb40133c73b3060818cb38ba07aec0f1bafa2fd45bdf09a952
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|
Release files / blue_options-4.67.1-py3-none-any.whl
| Download URL | blue_options-4.67.1-py3-none-any.whl |
|---|---|
| Size | 22.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
eaaf3262482b4bbc074293e85c124866521d11764ae5d66fa5656421c42c6e45
|
|
BLAKE2b-256 checksum How to use checksums |
f62e3cd18b27405ec0fdf067bd64e848764926b256822bbe931640daefefa071
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.9.19
|
Security for blue-options 4.67.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.