Skip to main content

Create curses-based interactive selection list in the terminal. Now with color!

Project description

pick

image PyPI PyPI

pick is a small python library to help you create curses based interactive selection list in the terminal.

Basic Multiselect

Installation

$ pip install pick

Usage

pick comes with a simple api:

>>> from pick import pick

>>> title = 'Please choose your favorite programming language: '
>>> options = ['Java', 'JavaScript', 'Python', 'PHP', 'C++', 'Erlang', 'Haskell']
>>> option, index = pick(options, title)
>>> print(option)
>>> print(index)

outputs:

>>> C++
>>> 4

pick multiselect example:

>>> from pick import pick

>>> title = 'Please choose your favorite programming language (press SPACE to mark, ENTER to continue): '
>>> options = ['Java', 'JavaScript', 'Python', 'PHP', 'C++', 'Erlang', 'Haskell']
>>> selected = pick(options, title, multiselect=True, min_selection_count=1)
>>> print(selected)

outputs:

>>> [('Java', 0), ('C++', 4)]

Options

  • options: a list of options to choose from
  • title: (optional) a title above options list
  • indicator: (optional) custom the selection indicator, defaults to *
  • default_index: (optional) set this if the default selected option is not the first one
  • multiselect: (optional), if set to True its possible to select multiple items by hitting SPACE
  • min_selection_count: (optional) for multi select feature to dictate a minimum of selected items before continuing
  • screen: (optional), if you are using pick within an existing curses application set this to your existing screen object. It is assumed this has initialised in the standard way (e.g. via curses.wrapper(), or curses.noecho(); curses.cbreak(); screen.kepad(True))
  • position: (optional), if you are using pick within an existing curses application use this to set the first position to write to. e.g., position=pick.Position(y=1, x=1)
  • quit_keys: (optional), if you want to quit early, you can pass a key codes. If the corresponding key are pressed, it will quit the menu.

Community Projects

pickpack: A fork of pick to select tree data.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

colorpick-2.4.3.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

colorpick-2.4.3-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file colorpick-2.4.3.tar.gz.

File metadata

  • Download URL: colorpick-2.4.3.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Windows/11

File hashes

Hashes for colorpick-2.4.3.tar.gz
Algorithm Hash digest
SHA256 def5450a3ae4db7510f2d01377bbb430304f82b5b7af0d8e9b89144f94f28fcf
MD5 483e65daccb7e8c7828cd833501bef17
BLAKE2b-256 d94e7b0db4edb07b3ac93e7ebddd79eeefae0e830d02567d8e46b332784344c6

See more details on using hashes here.

File details

Details for the file colorpick-2.4.3-py3-none-any.whl.

File metadata

  • Download URL: colorpick-2.4.3-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Windows/11

File hashes

Hashes for colorpick-2.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 93873346b2833077b497ddcee7b03a6ff4271fc868f2aff5cf4cab432031d771
MD5 78e28d6ad82aa414e604ec84d1b1f60e
BLAKE2b-256 b3b4b8daa318dfc4152970f73b40c6c1f46e82fa9e9618b0964b076847668170

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page