335 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			335 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Metadata-Version: 2.1
 | |
| Name: urwid
 | |
| Version: 2.6.16
 | |
| Summary: A full-featured console (xterm et al.) user interface library
 | |
| Home-page: https://urwid.org/
 | |
| Author-email: Ian Ward <ian@excess.org>
 | |
| License: LGPL-2.1-only
 | |
| Project-URL: Homepage, https://urwid.org/
 | |
| Project-URL: Documentation, https://urwid.org/manual/index.html
 | |
| Project-URL: Repository, https://github.com/urwid/urwid
 | |
| Project-URL: Bug Tracker, https://github.com/urwid/urwid/issues
 | |
| Keywords: curses,ui,widget,scroll,listbox,user interface,text layout,console,ncurses
 | |
| Platform: unix-like
 | |
| Classifier: Development Status :: 5 - Production/Stable
 | |
| Classifier: Environment :: Console
 | |
| Classifier: Environment :: Console :: Curses
 | |
| Classifier: Intended Audience :: Developers
 | |
| Classifier: License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)
 | |
| Classifier: Operating System :: POSIX
 | |
| Classifier: Operating System :: Unix
 | |
| Classifier: Operating System :: MacOS :: MacOS X
 | |
| Classifier: Operating System :: Microsoft :: Windows
 | |
| Classifier: Topic :: Software Development :: Libraries :: Python Modules
 | |
| Classifier: Topic :: Software Development :: Widget Sets
 | |
| Classifier: Programming Language :: Python :: 3
 | |
| Classifier: Programming Language :: Python :: 3.7
 | |
| Classifier: Programming Language :: Python :: 3.8
 | |
| Classifier: Programming Language :: Python :: 3.9
 | |
| Classifier: Programming Language :: Python :: 3.10
 | |
| Classifier: Programming Language :: Python :: 3.11
 | |
| Classifier: Programming Language :: Python :: 3.12
 | |
| Classifier: Programming Language :: Python :: 3.13
 | |
| Classifier: Programming Language :: Python :: 3 :: Only
 | |
| Classifier: Programming Language :: Python :: Implementation :: CPython
 | |
| Classifier: Programming Language :: Python :: Implementation :: PyPy
 | |
| Requires-Python: >3.7
 | |
| Description-Content-Type: text/x-rst
 | |
| License-File: COPYING
 | |
| Requires-Dist: typing-extensions
 | |
| Requires-Dist: wcwidth
 | |
| Provides-Extra: curses
 | |
| Requires-Dist: windows-curses; sys_platform == "win32" and extra == "curses"
 | |
| Provides-Extra: glib
 | |
| Requires-Dist: PyGObject; extra == "glib"
 | |
| Provides-Extra: lcd
 | |
| Requires-Dist: pyserial; extra == "lcd"
 | |
| Provides-Extra: serial
 | |
| Requires-Dist: pyserial; extra == "serial"
 | |
| Provides-Extra: tornado
 | |
| Requires-Dist: tornado>=5.0; extra == "tornado"
 | |
| Provides-Extra: trio
 | |
| Requires-Dist: trio>=0.22.0; extra == "trio"
 | |
| Requires-Dist: exceptiongroup; extra == "trio"
 | |
| Provides-Extra: twisted
 | |
| Requires-Dist: twisted; extra == "twisted"
 | |
| Provides-Extra: zmq
 | |
| Requires-Dist: zmq; extra == "zmq"
 | |
| 
 | |
| Urwid
 | |
| =====
 | |
| |pypi| |docs| |gitter| |ci| |pre-commit| |coveralls|
 | |
| 
 | |
| About
 | |
| =====
 | |
| 
 | |
| Urwid is a console user interface library for Python on Linux, OSX, Cygwin or other unix-like OS
 | |
| and partially supports Windows OS (see below).
 | |
| 
 | |
| It includes many features useful for text console application developers including:
 | |
| 
 | |
| - Applications resize quickly and smoothly
 | |
| - Automatic, programmable text alignment and wrapping
 | |
| - Simple markup for setting text attributes within blocks of text
 | |
| - Powerful list box with programmable content for scrolling all widget types
 | |
| - Your choice of event loops: Twisted, Glib, Tornado, asyncio, trio, ZeroMQ or select-based loop
 | |
| - Pre-built widgets include edit boxes, buttons, check boxes and radio buttons
 | |
| - Display modules include raw, curses, and experimental LCD and web displays
 | |
| - Support for UTF-8, simple 8-bit and CJK encodings
 | |
| - 24-bit (true color), 256 color, and 88 color mode support
 | |
| - Compatible with Python 3.7+ and PyPy
 | |
| 
 | |
| Home Page:
 | |
|   http://urwid.org/
 | |
| 
 | |
| Installation
 | |
| ============
 | |
| 
 | |
| To install using pip
 | |
| 
 | |
| .. code:: bash
 | |
| 
 | |
|    pip install urwid
 | |
| 
 | |
| For advanced functionality extra requirements need to be installed.
 | |
| Example for ZeroMQ event loop and LCD display:
 | |
| 
 | |
| .. code:: bash
 | |
| 
 | |
|     pip install urwid[serial,zmq]
 | |
| 
 | |
| Alternatively if you are on Debian or Ubuntu
 | |
| 
 | |
| .. code:: bash
 | |
| 
 | |
|    apt-get install python3-urwid
 | |
| 
 | |
| Windows support notes
 | |
| =====================
 | |
| 
 | |
| * Not supported:
 | |
| 
 | |
| 1. Terminal widget and all related render API (TermCanvas, TermCharset, TermModes, TermScroller)
 | |
| 2. Any file descriptors except sockets (Windows OS limitation)
 | |
| 3. ZMQEventLoop.
 | |
| 
 | |
| * Special requirements:
 | |
| 
 | |
| 1. Extra libraries required for curses display support:
 | |
| 
 | |
| .. code-block:: bash
 | |
| 
 | |
|     pip install urwid[curses]
 | |
| 
 | |
| * CursesDisplay incorrectly handles mouse input in case of fast actions.
 | |
| * Only UTF-8 mode is supported.
 | |
| 
 | |
| 
 | |
| Testing
 | |
| =======
 | |
| 
 | |
| To run tests locally, install & run `tox`. You must have
 | |
| appropriate Python versions installed to run `tox` for
 | |
| each of them.
 | |
| 
 | |
| To test code in all Python versions:
 | |
| 
 | |
| .. code:: bash
 | |
| 
 | |
|     tox                     # Test all versions specified in tox.ini:
 | |
|     tox -e py39             # Test Python 3.9 only
 | |
|     tox -e py39,py10,pypy3  # Test Python 3.9, Python 3.10 & pypy3
 | |
| 
 | |
| Supported Python versions
 | |
| =========================
 | |
| 
 | |
| - 3.7
 | |
| - 3.8
 | |
| - 3.9
 | |
| - 3.10
 | |
| - 3.11
 | |
| - 3.12
 | |
| - 3.13
 | |
| - pypy3
 | |
| 
 | |
| Authors
 | |
| =======
 | |
| 
 | |
| Creator
 | |
| -------
 | |
| 
 | |
| `wardi <//github.com/wardi>`_
 | |
| 
 | |
| Maintainers
 | |
| -----------
 | |
| 
 | |
| `and3rson <//github.com/and3rson>`_,
 | |
| `tonycpsu <//github.com/tonycpsu>`_,
 | |
| `ulidtko <//github.com/ulidtko>`_,
 | |
| `penguinolog <//github.com/penguinolog>`_
 | |
| 
 | |
| Contributors
 | |
| ------------
 | |
| 
 | |
| `1in7billion <//github.com/1in7billion>`_,
 | |
| `abadger <//github.com/abadger>`_,
 | |
| `agrenott <//github.com/agrenott>`_,
 | |
| `akorb <//github.com/akorb>`_,
 | |
| `alethiophile <//github.com/alethiophile>`_,
 | |
| `aleufroy <//github.com/aleufroy>`_,
 | |
| `alobbs <//github.com/alobbs>`_,
 | |
| `amjltc295 <//github.com/amjltc295>`_,
 | |
| `and-semakin <//github.com/and-semakin>`_,
 | |
| `andrewshadura <//github.com/andrewshadura>`_,
 | |
| `andy-z <//github.com/andy-z>`_,
 | |
| `anttin2020 <//github.com/anttin2020>`_,
 | |
| `Apteryks <//github.com/Apteryks>`_,
 | |
| `Arfrever <//github.com/Arfrever>`_,
 | |
| `AutoAwesome <//github.com/AutoAwesome>`_,
 | |
| `belak <//github.com/belak>`_,
 | |
| `berney <//github.com/berney>`_,
 | |
| `bk2204 <//github.com/bk2204>`_,
 | |
| `BkPHcgQL3V <//github.com/BkPHcgQL3V>`_,
 | |
| `bwesterb <//github.com/bwesterb>`_,
 | |
| `carlos-jenkins <//github.com/carlos-jenkins>`_,
 | |
| `Certseeds <//github.com/Certseeds>`_,
 | |
| `Chipsterjulien <//github.com/Chipsterjulien>`_,
 | |
| `chrisspen <//github.com/chrisspen>`_,
 | |
| `cltrudeau <//github.com/cltrudeau>`_,
 | |
| `Codeberg-AsGithubAlternative-buhtz <//github.com/Codeberg-AsGithubAlternative-buhtz>`_,
 | |
| `cortesi <//github.com/cortesi>`_,
 | |
| `d0c-s4vage <//github.com/d0c-s4vage>`_,
 | |
| `derdon <//github.com/derdon>`_,
 | |
| `dholth <//github.com/dholth>`_,
 | |
| `dimays <//github.com/dimays>`_,
 | |
| `dlo <//github.com/dlo>`_,
 | |
| `dnaeon <//github.com/dnaeon>`_,
 | |
| `doddo <//github.com/doddo>`_,
 | |
| `douglas-larocca <//github.com/douglas-larocca>`_,
 | |
| `drestebon <//github.com/drestebon>`_,
 | |
| `dsotr <//github.com/dsotr>`_,
 | |
| `dwf <//github.com/dwf>`_,
 | |
| `EdwardBetts <//github.com/EdwardBetts>`_,
 | |
| `elenril <//github.com/elenril>`_,
 | |
| `EnricoBilla <//github.com/EnricoBilla>`_,
 | |
| `extempore <//github.com/extempore>`_,
 | |
| `fabiand <//github.com/fabiand>`_,
 | |
| `floppym <//github.com/floppym>`_,
 | |
| `flowblok <//github.com/flowblok>`_,
 | |
| `fmoreau <//github.com/fmoreau>`_,
 | |
| `goncalopp <//github.com/goncalopp>`_,
 | |
| `Gordin <//github.com/Gordin>`_,
 | |
| `GregIngelmo <//github.com/GregIngelmo>`_,
 | |
| `grzaks <//github.com/grzaks>`_,
 | |
| `gurupras <//github.com/gurupras>`_,
 | |
| `HarveyHunt <//github.com/HarveyHunt>`_,
 | |
| `Hoolean <//github.com/Hoolean>`_,
 | |
| `hukka <//github.com/hukka>`_,
 | |
| `hydratim <//github.com/hydratim>`_,
 | |
| `ids1024 <//github.com/ids1024>`_,
 | |
| `imrek <//github.com/imrek>`_,
 | |
| `isovector <//github.com/isovector>`_,
 | |
| `itaisod <//github.com/itaisod>`_,
 | |
| `ixxra <//github.com/ixxra>`_,
 | |
| `jeblair <//github.com/jeblair>`_,
 | |
| `johndeaton <//github.com/johndeaton>`_,
 | |
| `jonblack <//github.com/jonblack>`_,
 | |
| `jspricke <//github.com/jspricke>`_,
 | |
| `kedder <//github.com/kedder>`_,
 | |
| `Kelketek <//github.com/Kelketek>`_,
 | |
| `KennethNielsen <//github.com/KennethNielsen>`_,
 | |
| `kesipyc <//github.com/kesipyc>`_,
 | |
| `kkrolczyk <//github.com/kkrolczyk>`_,
 | |
| `Kwpolska <//github.com/Kwpolska>`_,
 | |
| `Lahorde <//github.com/Lahorde>`_,
 | |
| `laike9m <//github.com/laike9m>`_,
 | |
| `larsks <//github.com/larsks>`_,
 | |
| `lfam <//github.com/lfam>`_,
 | |
| `lgbaldoni <//github.com/lgbaldoni>`_,
 | |
| `lighth7015 <//github.com/lighth7015>`_,
 | |
| `livibetter <//github.com/livibetter>`_,
 | |
| `Lothiraldan <//github.com/Lothiraldan>`_,
 | |
| `Mad-ness <//github.com/Mad-ness>`_,
 | |
| `madebr <//github.com/madebr>`_,
 | |
| `magniff <//github.com/magniff>`_,
 | |
| `marlox-ouda <//github.com/marlox-ouda>`_,
 | |
| `mattymo <//github.com/mattymo>`_,
 | |
| `mdtrooper <//github.com/mdtrooper>`_,
 | |
| `mgk <//github.com/mgk>`_,
 | |
| `mimi1vx <//github.com/mimi1vx>`_,
 | |
| `mobyte0 <//github.com/mobyte0>`_,
 | |
| `MonAaraj <//github.com/MonAaraj>`_,
 | |
| `MonthlyPython <//github.com/MonthlyPython>`_,
 | |
| `mountainstorm <//github.com/mountainstorm>`_,
 | |
| `mselee <//github.com/mselee>`_,
 | |
| `mwhudson <//github.com/mwhudson>`_,
 | |
| `naquad <//github.com/naquad>`_,
 | |
| `nchavez324 <//github.com/nchavez324>`_,
 | |
| `neumond <//github.com/neumond>`_,
 | |
| `nolash <//github.com/nolash>`_,
 | |
| `ntamas <//github.com/ntamas>`_,
 | |
| `nyov <//github.com/nyov>`_,
 | |
| `ocarneiro <//github.com/ocarneiro>`_,
 | |
| `okayzed <//github.com/okayzed>`_,
 | |
| `pquentin <//github.com/pquentin>`_,
 | |
| `rbanffy <//github.com/rbanffy>`_,
 | |
| `ReddyKilowatt <//github.com/ReddyKilowatt>`_,
 | |
| `regebro <//github.com/regebro>`_,
 | |
| `renegarcia <//github.com/renegarcia>`_,
 | |
| `rianhunter <//github.com/rianhunter>`_,
 | |
| `roburban <//github.com/roburban>`_,
 | |
| `RRMoelker <//github.com/RRMoelker>`_,
 | |
| `rwarren <//github.com/rwarren>`_,
 | |
| `scopatz <//github.com/scopatz>`_,
 | |
| `seanhussey <//github.com/seanhussey>`_,
 | |
| `seonon <//github.com/seonon>`_,
 | |
| `shadedKE <//github.com/shadedKE>`_,
 | |
| `sithglan <//github.com/sithglan>`_,
 | |
| `Sjc1000 <//github.com/Sjc1000>`_,
 | |
| `sporkexec <//github.com/sporkexec>`_,
 | |
| `squrky <//github.com/squrky>`_,
 | |
| `ssbr <//github.com/ssbr>`_,
 | |
| `techdragon <//github.com/techdragon>`_,
 | |
| `thehunmonkgroup <//github.com/thehunmonkgroup>`_,
 | |
| `thisch <//github.com/thisch>`_,
 | |
| `thornycrackers <//github.com/thornycrackers>`_,
 | |
| `TomasTomecek <//github.com/TomasTomecek>`_,
 | |
| `tompickering <//github.com/tompickering>`_,
 | |
| `tony <//github.com/tony>`_,
 | |
| `ttanner <//github.com/ttanner>`_,
 | |
| `tu500 <//github.com/tu500>`_,
 | |
| `uSpike <//github.com/uSpike>`_,
 | |
| `vega0 <//github.com/vega0>`_,
 | |
| `vit1251 <//github.com/vit1251>`_,
 | |
| `waveform80 <//github.com/waveform80>`_,
 | |
| `Wesmania <//github.com/Wesmania>`_,
 | |
| `xandfury <//github.com/xandfury>`_,
 | |
| `xndcn <//github.com/xndcn>`_,
 | |
| `zhongshangwu <//github.com/zhongshangwu>`_,
 | |
| `zrax <//github.com/zrax>`_
 | |
| 
 | |
| 
 | |
| .. |pypi| image:: https://img.shields.io/pypi/v/urwid
 | |
|     :alt: current version on PyPi
 | |
|     :target: https://pypi.python.org/pypi/urwid
 | |
| 
 | |
| .. |docs| image:: https://github.com/urwid/urwid/actions/workflows/documentation.yml/badge.svg?branch=master
 | |
|     :alt: Documentation Status
 | |
|     :target: https://urwid.org
 | |
| 
 | |
| .. |gitter| image:: https://img.shields.io/gitter/room/urwid/community
 | |
|    :alt: Gitter
 | |
|    :target: https://gitter.im/urwid/community
 | |
| 
 | |
| .. |ci| image:: https://github.com/urwid/urwid/actions/workflows/pythonpackage.yml/badge.svg?branch=master
 | |
|     :target: https://github.com/urwid/urwid/actions
 | |
|     :alt: CI status
 | |
| 
 | |
| .. |pre-commit| image:: https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit
 | |
|    :target: https://github.com/pre-commit/pre-commit
 | |
|    :alt: pre-commit
 | |
| 
 | |
| .. |coveralls| image:: https://coveralls.io/repos/github/urwid/urwid/badge.svg
 | |
|     :alt: test coverage
 | |
|     :target: https://coveralls.io/github/urwid/urwid
 | 
