{ "info": { "author": "Aegir Hall", "author_email": "aegirhall@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console :: Curses", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "|Build Status|\\ |Documentation Status|\n\nconsole-menu\n============\n\nA simple Python menu-based UI system for terminal applications.\nPerfect for those times when you need a menu-driven program, but don\u2019t want the\noverhead or learning curve of a full-fledged GUI framework.\n\nDerived from the curses-menu project, but with curses dependency removed.\n\nhttp://console-menu.readthedocs.org/en/latest/\n\n.. image:: ./images/console-menu_screenshot1.png\n\n.. image:: ./images/console-menu_screenshot2.png\n\n\nInstallation\n~~~~~~~~~~~~\n\nTested on Python 2.7, 3.4, 3.5, and 3.6, as well as pypy and pypy 3.\n\nInstallation can be performed by running pip\n\n.. code:: shell\n\n pip install console-menu\n\nUsage\n-----\n\nIt's designed to be pretty simple to use. Here's an example\n\n.. code:: python\n\n # Import the necessary packages\n from consolemenu import *\n from consolemenu.items import *\n\n # Create the menu\n menu = ConsoleMenu(\"Title\", \"Subtitle\")\n\n # Create some items\n\n # MenuItem is the base class for all items, it doesn't do anything when selected\n menu_item = MenuItem(\"Menu Item\")\n\n # A FunctionItem runs a Python function when selected\n function_item = FunctionItem(\"Call a Python function\", input, [\"Enter an input\"])\n\n # A CommandItem runs a console command\n command_item = CommandItem(\"Run a console command\", \"touch hello.txt\")\n\n # A SelectionMenu constructs a menu from a list of strings\n selection_menu = SelectionMenu([\"item1\", \"item2\", \"item3\"])\n\n # A SubmenuItem lets you add a menu (the selection_menu above, for example)\n # as a submenu of another menu\n submenu_item = SubmenuItem(\"Submenu item\", selection_menu, menu)\n\n # Once we're done creating them, we just add the items to the menu\n menu.append_item(menu_item)\n menu.append_item(function_item)\n menu.append_item(command_item)\n menu.append_item(submenu_item)\n\n # Finally, we call show to show the menu and allow the user to interact\n menu.show()\n\n.. |Build Status| image:: https://travis-ci.org/aegirhall/console-menu.svg\n :target: https://travis-ci.org/aegirhall/console-menu\n.. |Documentation Status| image:: https://readthedocs.org/projects/console-menu/badge/?version=latest\n :target: http://console-menu.readthedocs.org/en/latest/?badge=latest\n\nv0.6.0 (2019-09-07)\n===================\n- Fix issue #28, allow console screen argument for SelectionMenu.\n- Fix issue #22, allow custom exit text for main menu.\n- Fix issue #19, failure to clear screen using Windows 10 SSH.\n- Potentially Breaking Change: reverted screen.input() method to return the\n simple string value, as it did in v0.4.0 and prior. Moved the InputResult\n tuple for input validation to the PromptUtils class.\n- Expanding documentation and converting to Google-style docstrings (WIP).\n- Add flush() method to screen.\n\nv0.5.1 (2018-11-18)\n===================\n- Remove unnecessary imports (#10).\n\nv0.5.0 (2018-11-02)\n===================\n- Add new input validation feature, contributed by DaBbleR23.\n- Add feature to allow menu item removal.\n- Add feature to allow user to cancel input.\n- Remove external readline dependency.\n\nv0.4.0 (2018-03-13)\n===================\n- Add feature to hide borders for menu items.\n- Add feature to return to previous menu.\n- Add printf and println functions to prompt_utils.\n\nv0.3.0 (2018-03-09)\n===================\n- Add prompt_utils class.\n- Add feature to show borders above or below menu items.\n- Fix unit tests to run on windows.\n- Add new borders for heavy outer/light inner; and double-line outer/light inner.\n\nv0.2.0 (2018-03-09)\n===================\n- Add new multi-select menu feature.\n- Use editable flag for installing project.\n- Clean up imports.\n- Expanded unit tests.\n- Change doc theme to sphinx_rtd_theme.\n\nv0.1.0 (2018-03-08)\n===================\n- Add Python 2.7, 3.5, and 3.6 to build matrix.\n- Remove Python 2.6, 3.3, 3.4.\n- PEP8 cleanup.\n- Add pycodestyle to build process.\n- Expanded unit tests.\n- Add updated screenshots for Readme.\n- Enhance text section to allow multi-line wrapping.\n- Expand examples to show more features.\n- Fix bug in heavy borders showing incorrect characters.\n- Add optional bottom border to header section.\n- Add prologue and epilogue sections to menus.\n- Add methods for setting the border style factory and style type.\n- Add border style type enumeration and factory.\n- Change default padding for left and right to 2.\n- Add new double-line border and rename border styles for consistency.\n- Change default prompt.\n- Update screen input method for python2 & 3 compatibility\n- Remove deprecated methods\n- Change sphinx theme and fix errors in rst files.\n- Fix warnings/errors uncovered by pytest.\n- Add unicode heavy border style.\n- Add menu formatter class and related changes.\n- Remove curses dependency.\n- Initial commit of project, forked from curses-menu.\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/aegirhall/console-menu", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "console-menu", "package_url": "https://pypi.org/project/console-menu/", "platform": "", "project_url": "https://pypi.org/project/console-menu/", "project_urls": { "Homepage": "http://github.com/aegirhall/console-menu" }, "release_url": "https://pypi.org/project/console-menu/0.6.0/", "requires_dist": [ "six" ], "requires_python": "", "summary": "A simple console menu system", "version": "0.6.0" }, "last_serial": 5796986, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "2603e0530da2ab8590170bd7b80b7412", "sha256": "90e6749390dfbb031f273886677d1e2a8db130b2b747acdb47e6fbb78e8a0324" }, "downloads": -1, "filename": "console_menu-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "2603e0530da2ab8590170bd7b80b7412", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20977, "upload_time": "2018-03-08T17:26:12", "url": "https://files.pythonhosted.org/packages/87/3d/64c5e6e13f1e1bb3582b92c9db93858c12ad245ec785e617a0d4f760b042/console_menu-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4bdf92d04ba7673ee3a4b8b590d07b00", "sha256": "3eb6566ba63907b1b4cf03f810f67edd24012cd1867f21d2b6ffdd2067ac434d" }, "downloads": -1, "filename": "console-menu-0.1.0.tar.gz", "has_sig": false, "md5_digest": "4bdf92d04ba7673ee3a4b8b590d07b00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31865, "upload_time": "2018-03-08T17:26:15", "url": "https://files.pythonhosted.org/packages/2c/65/fedc952685d45595e17deff2d405be70ea0dde09cdcb30043ed7f4985913/console-menu-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "51dbd701ab0f30a5bee6667cfb0b6084", "sha256": "650815ae213abb6a2e7ee3351ff59d5017ec34842c5abeeb8a7b411fdc394ce3" }, "downloads": -1, "filename": "console_menu-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "51dbd701ab0f30a5bee6667cfb0b6084", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 22331, "upload_time": "2018-03-09T06:05:35", "url": "https://files.pythonhosted.org/packages/18/fd/5525923c92814292c2cc206167038cd3d54ea8eeae8ce8e9d7319f6ff1a2/console_menu-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7f112c8f9c8ad243eda10d1a71a80415", "sha256": "a3e0b765c2cb40cb1f20c64262806fe30721fa379805f99666d25e3a26ab9030" }, "downloads": -1, "filename": "console-menu-0.2.0.tar.gz", "has_sig": false, "md5_digest": "7f112c8f9c8ad243eda10d1a71a80415", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33121, "upload_time": "2018-03-09T06:05:36", "url": "https://files.pythonhosted.org/packages/b8/41/c8fa60a75de01bbd654ebd6b53e3cd728316ab8c44e3c9286fbdac0e6434/console-menu-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "33d33fd8fcff33f245bf7b192be28d51", "sha256": "84d4df4b7f092331f66d93392163020a2cd0624fc369199c5a1cb8b981998abd" }, "downloads": -1, "filename": "console_menu-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "33d33fd8fcff33f245bf7b192be28d51", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24978, "upload_time": "2018-03-10T01:47:04", "url": "https://files.pythonhosted.org/packages/de/1d/cfbae2712c7b46adf5273fde5a1839c047794ad0e0b3deb53a3740af839e/console_menu-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "415c21b3b966f33c30c840193cc83485", "sha256": "b9b3f5fdc5f8f1981a37c6f194832eed89c1d0f57f25038472e384c1e90e8c3e" }, "downloads": -1, "filename": "console-menu-0.3.0.tar.gz", "has_sig": false, "md5_digest": "415c21b3b966f33c30c840193cc83485", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36733, "upload_time": "2018-03-10T01:47:06", "url": "https://files.pythonhosted.org/packages/f6/20/93b3229b8b55ce6c2c260845f760d9a9efccabced149bcce8b4d5fddabde/console-menu-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "27c9089cbe31871969c0a8caddf585f4", "sha256": "e59285de23f41c1dd207bc3bf237a358bd134f43a7429672b828142125bd5bde" }, "downloads": -1, "filename": "console_menu-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "27c9089cbe31871969c0a8caddf585f4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 25251, "upload_time": "2018-03-14T05:26:36", "url": "https://files.pythonhosted.org/packages/e5/b8/5bce7b27cb75f6cd4ef41caa99a8b120e77bd54ff975344a7382fb8492b6/console_menu-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a5524f047ff0755c7ca11c28fd78e822", "sha256": "8af20cb47631b9cca00616482b784c9a0a0740edcee7ca179d698edf6ea40f56" }, "downloads": -1, "filename": "console-menu-0.4.0.tar.gz", "has_sig": false, "md5_digest": "a5524f047ff0755c7ca11c28fd78e822", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37470, "upload_time": "2018-03-14T05:26:38", "url": "https://files.pythonhosted.org/packages/12/de/becb3a4b80275879754cc6423e4682153f39bf0a5787accb96af76387228/console-menu-0.4.0.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "da08892388df4ac95c5b114fb1c3a2dc", "sha256": "a56d9f5099364b247f421233fcc42092ca1a045088798f2e908ba2583aa02e20" }, "downloads": -1, "filename": "console_menu-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "da08892388df4ac95c5b114fb1c3a2dc", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27598, "upload_time": "2018-11-02T20:38:56", "url": "https://files.pythonhosted.org/packages/8f/6f/dee31918b6f05433c94f52f22735ca1021215f73a6b27c3a03a5ad9a2995/console_menu-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d0e5a70bcdc74ab30ed9b1841e32d9b8", "sha256": "4cd817552d5655023c2a1cb04e565344b78c0f9c70d1723da541fa5663d54c96" }, "downloads": -1, "filename": "console-menu-0.5.0.tar.gz", "has_sig": false, "md5_digest": "d0e5a70bcdc74ab30ed9b1841e32d9b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40812, "upload_time": "2018-11-02T20:38:57", "url": "https://files.pythonhosted.org/packages/d9/cd/5f322440767de0970a61a955d73b084561e1420ee8210f46ba3933069412/console-menu-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "831afb6e24da3d38a719e13ba827c0b5", "sha256": "b6ce4173341fac72fe693a271369385d354633e343539c72a54b94d540597e13" }, "downloads": -1, "filename": "console_menu-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "831afb6e24da3d38a719e13ba827c0b5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 27533, "upload_time": "2018-11-19T00:49:23", "url": "https://files.pythonhosted.org/packages/f3/2d/8e98aa57fe8027e464bdf315478f0dc6fce86e6c98ecb5013371c6f2fb29/console_menu-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7d9cfeac82f245920a596c1e200d18bd", "sha256": "a3e09d6dfb263a20e2cc44601a723ca4c3c3e31a869b2a289e86833956b7b62e" }, "downloads": -1, "filename": "console-menu-0.5.1.tar.gz", "has_sig": false, "md5_digest": "7d9cfeac82f245920a596c1e200d18bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40796, "upload_time": "2018-11-19T00:48:04", "url": "https://files.pythonhosted.org/packages/ad/c9/46ac32580870de52aa0a13d4f557b7d52de27c4c960e96c687509bb12564/console-menu-0.5.1.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "e3c3f227f5e2beb66e691538beb7f327", "sha256": "c80d6ad8ebef25092b139dadd6866410e555ac815dfcfdc671af0daafcf7df25" }, "downloads": -1, "filename": "console_menu-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e3c3f227f5e2beb66e691538beb7f327", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32163, "upload_time": "2019-09-07T18:42:34", "url": "https://files.pythonhosted.org/packages/db/00/b15db89f70b722d962ce3e3ab77b7135fa7493ae3189683272595980c865/console_menu-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee0e918c60afe69d14728a9e92555c10", "sha256": "c4dc34a026a064f2b83ce67e698b5608854b7301545fb0a2af63ec7f8bb4936b" }, "downloads": -1, "filename": "console-menu-0.6.0.tar.gz", "has_sig": false, "md5_digest": "ee0e918c60afe69d14728a9e92555c10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49220, "upload_time": "2019-09-07T18:42:36", "url": "https://files.pythonhosted.org/packages/54/3b/d3ad2b8ff85af9395960b1ffd67239f3b5a826ef6f1d12bcb5865f9736c3/console-menu-0.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e3c3f227f5e2beb66e691538beb7f327", "sha256": "c80d6ad8ebef25092b139dadd6866410e555ac815dfcfdc671af0daafcf7df25" }, "downloads": -1, "filename": "console_menu-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "e3c3f227f5e2beb66e691538beb7f327", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 32163, "upload_time": "2019-09-07T18:42:34", "url": "https://files.pythonhosted.org/packages/db/00/b15db89f70b722d962ce3e3ab77b7135fa7493ae3189683272595980c865/console_menu-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ee0e918c60afe69d14728a9e92555c10", "sha256": "c4dc34a026a064f2b83ce67e698b5608854b7301545fb0a2af63ec7f8bb4936b" }, "downloads": -1, "filename": "console-menu-0.6.0.tar.gz", "has_sig": false, "md5_digest": "ee0e918c60afe69d14728a9e92555c10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 49220, "upload_time": "2019-09-07T18:42:36", "url": "https://files.pythonhosted.org/packages/54/3b/d3ad2b8ff85af9395960b1ffd67239f3b5a826ef6f1d12bcb5865f9736c3/console-menu-0.6.0.tar.gz" } ] }