Assign options to groups in the terminal with a simple GUI. Based on wong2's pick
Project description
groupick
[!WARNING]
This project is semi-abandoned. If anyone is using it, submit an issue and I will check why the CI is failing.
groupick is a small python library based on wong2's pick which allows you to create a curses-based interactive selection in the terminal. With groupick you can assign options to groups.
Installation
$ pip install groupick
Usage
groupick comes with a simple api:
>>> from groupick import groupick
>>> instructions = "Assign languages to groups 'a', 'b' or '1'."
>>> options = ["Java", "JavaScript", "Python", "PHP", "C++", "Erlang", "Haskell"]
>>> groups:set = {"a", "b", 1}
>>> selected = groupick(options, groups, instructions, indicator="=>", default_index=2)
>>> print(f"Here is your assignment: {selected}")
output:
>>> {'1': [], 'a': [("JavaScript", 1)], 'b': []}
Options
options: a list of options to choose fromgroups: a list of ints and/or characters symbolising groups (max-length per item is 1)instructions: (optional) a title above options listindicator: (optional) custom the selection indicator, defaults to*default_index: (optional) index of item where cursor starts at by defaulthandle_all: (optional) define whether it is mandatory to assign all options to groups, defaults toFalsescreen: (optional), if you are usinggroupickwithin an existing curses application, pass your existingscreenobject. It is assumed this has initialised in the standard way (e.g. viacurses.wrapper(), orcurses.noecho(); curses.cbreak(); screen.kepad(True))
Community Projects
wong2's pick: Original pick project, for selecting one or more options (no grouping)
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file groupick-1.1.2.post3.tar.gz.
File metadata
- Download URL: groupick-1.1.2.post3.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bef98edd9cf2369cea7e709a8bca8d59b61e49dcf7b8f79c0e711d534d8674e9
|
|
| MD5 |
7d3c18d4d6ed6ef764e49052ab894484
|
|
| BLAKE2b-256 |
d265f5121d2980b03dc6172ac1916a9a5628163a954e138f475f4206e774919d
|
File details
Details for the file groupick-1.1.2.post3-py3-none-any.whl.
File metadata
- Download URL: groupick-1.1.2.post3-py3-none-any.whl
- Upload date:
- Size: 6.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3408703d8556be05859b0db15a3c823ad5dd41e7665f0b89e1d9a0418be37f74
|
|
| MD5 |
77433cfa36f4013da62c38431497d5a8
|
|
| BLAKE2b-256 |
a2c1667f6bed11e0fef76716ce5b73b023e7e5fb44ac21a16925637906730837
|