{ "info": { "author": "BlueWingTan", "author_email": "bluewingtan@yeah.net", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# cli_utility\n\n\n![GitHub](https://img.shields.io/github/license/bluewingtan/cli_utility ) ![GitHub pull requests](https://img.shields.io/github/issues-pr/bluewingtan/cli_utility ) ![GitHub last commit (branch)](https://img.shields.io/github/last-commit/bluewingtan/cli_utility/master ) ![Language](https://img.shields.io/badge/language-python-brightgreen ) ![Travis (.com) branch](https://img.shields.io/travis/com/bluewingtan/cli_utility/master ) [![Author](https://img.shields.io/badge/powered%20by-BlueWingTan-blue? )](https://github.com/bluewingtan)\n\n> Cli_utility is a python module whitch provide a high-level API to generate an appealing colorful single/multiple selection menu and informational logging output. Cli-utility brings a new life to boring command-line menus and log output programming.\n\n*What can I do?*\n\nMost things that you can do with cli_utility module! Here are a few examples to get you started:\n\n- Generate a single/multiple selection menu and get the result easily\n- Logging messages with colorful `[+]` `[-]` `[!]` `[*]` symbol by using built-in functions\n- Free logging output of custom foreground colors and meaningful symbols\n- Using call chain to log messages\n\n![Peek 2019-10-25 01-45](https://i.loli.net/2019/10/25/dJHh5wUZ8jupPlQ.gif )\n\nIssues or pull requests are welcome.\n\n## Table of Contents\n\n\n- [cli_utility](#cli_utility )\n - [Table of Contents](#table-of-contents )\n - [Features](#features )\n - [Getting Started](#getting-started )\n - [Installation](#installation )\n - [Usage](#usage )\n - [Dependences](#dependences )\n - [Change Log](#change-log )\n - [Alternatives](#alternatives )\n\n## Features\n\n\n- Beautiful single/multiple selection menu with default value\n- Highlight the selection line\n- Standardized color log tools\n- Highly customizable color log output\n- Log tools supports chain call\n- Support for all types of output supported by standard print functions\n\n## Getting Started\n\n\n### Installation\n\n\nThis module can be easily installed with `pip`:\n\n```bash\npip install cli_utility\n```\n\nOr you can just use `git clone`:\n\n```bash\ngit colne https://github.com/bluewingtan/cli_utility.git\n```\n\n### Usage\n\n\n**Example 1 - generate a single/multiple selection menu and get the result**\n\nUse direction key `up`, `down` to move cursor. In single selection mode, use key `enter` to select and confirm. Comparatively, in multiple selection mode, use key `space` to select and key `enter` to confirm.\n\nHere goes the single selection menu code:\n\n***Code 1.1***\n\n```python\nimport cli_utility\n\nmenu = cli_utility.cli_menu(False)\nlogger = cli_utility.output_manager()\n\nchoices = ['Haruhi Suzumiya', 'Yuki Nagato', 'Mikuru Asahina']\ntitle = 'Who do you love?'\n\nselected = menu.show(title, choices)\nlogger.print('Girls you selected:',\n fore_color=cli_utility.colorama.Fore.LIGHTCYAN_EX)\nlogger.print_success(choices[selected])\n```\n\n***Result 1.1***\n\n![Peek 2019-10-25 01-29](https://i.loli.net/2019/10/25/Fo73ctIyPSqTzeJ.gif )\n\nHere goes the multiple selection menu code:\n\n***Code 1.2***\n\n```python\nimport cli_utility\n\nmenu = cli_utility.cli_menu()\nlogger = cli_utility.output_manager()\n\nchoices = ['Haruhi Suzumiya', 'Yuki Nagato', 'Mikuru Asahina']\ndefault_selection = [1]\ntitle = 'Who do you love?'\n\nselected = menu.show(title, choices, default_selection)\nlogger.print('Girls you selected:',\n fore_color=cli_utility.colorama.Fore.LIGHTCYAN_EX)\n\nfor index, choice in enumerate(choices):\n if index in selected:\n logger.print_success(choices[index])\n```\n\n***Result 1.2***\n\n![Peek 2019-10-25 01-45](https://i.loli.net/2019/10/25/dJHh5wUZ8jupPlQ.gif )\n\n**Example 2 - logging messages with colorful symbol**\n\nHere goes the code:\n\n***Code 2.1***\n\n```python\nimport cli_utility\n\nlogger = cli_utility.output_manager()\n\nlogger.print('What if you woke up one morning')\nlogger.print('and everything changed?')\nlogger.print_success('Yuki Nagato')\nlogger.print_error('Haruhi Suzumiya')\nlogger.print_info('Mikuru Asahina')\nlogger.print_warn('Itsuki Koizumi')\n```\n\n***Result 2.1***\n\n![2019-10-25_02-29](https://i.loli.net/2019/10/25/t9x6z7EuGDVPKoj.png )\n\n**Example 3 - free logging output of custom foreground colors and meaningful symbols**\n\nHere goes the code:\n\n***Code 3.1***\n\n```python\nimport cli_utility\n\nlogger = cli_utility.output_manager()\n\nKyon1 = logger.print_string_constructor(\n 'What if you woke up one morning', \n '[^] ',\n cli_utility.colorama.Fore.LIGHTGREEN_EX, \n cli_utility.colorama.Fore.LIGHTBLUE_EX)\nKyon2 = logger.print_string_constructor(\n 'and everything changed?',\n '[%] ',\n cli_utility.colorama.Fore.LIGHTRED_EX,\n cli_utility.colorama.Fore.RED)\n\nlogger.print(Kyon1)\nlogger.print(Kyon2)\nlogger.print_success('Yuki Nagato')\nlogger.print_error('Haruhi Suzumiya')\nlogger.print_info('Mikuru Asahina')\nlogger.print_warn('Itsuki Koizumi')\n```\n\n***Result 3.1***\n\n![2019-10-25_17-44](https://i.loli.net/2019/10/25/qEaYZWJTui6fcD3.png )\n\n**Example 4 - using call chain to log messages**\n\nHere goes the code:\n\n***Code 4.1***\n\n```python\nimport cli_utility\n\nlogger = cli_utility.output_manager()\n\nKyon1 = logger.print_string_constructor(\n 'What if you woke up one morning', \n '[^] ',\n cli_utility.colorama.Fore.LIGHTGREEN_EX, \n cli_utility.colorama.Fore.LIGHTBLUE_EX)\nKyon2 = logger.print_string_constructor(\n 'and everything changed?',\n '[%] ',\n cli_utility.colorama.Fore.LIGHTRED_EX,\n cli_utility.colorama.Fore.RED)\n\nlogger.print(Kyon1)\\\n .print(Kyon2)\\\n .print_success('Yuki Nagato')\\\n .print_error('Haruhi Suzumiya')\\\n .print_info('Mikuru Asahina')\\\n .print_warn('Itsuki Koizumi')\n```\n\n***Result 3.1***\n\n![2019-10-25_17-44](https://i.loli.net/2019/10/25/qEaYZWJTui6fcD3.png )\n\n## Dependences\n\n\nCli_utility depend on [colorama](https://pypi.org/project/colorama/ ) version 0.4.1 and above version.\n\n## Change Log\n\n\nversion | simple description\n--|--\n1.0.0| Initial repo\n\n## Alternatives\n\n\n[tty_menu](https://github.com/gojuukaze/tty_menu ) - python terminal memu (\u4e00\u4e2a\u5feb\u901f\u521b\u5efa\u547d\u4ee4\u884c\u83dc\u5355\u7684\u5de5\u5177) \n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/bluewingtan/cli_utility", "keywords": "menu output CLI", "license": "", "maintainer": "", "maintainer_email": "", "name": "cli-utility", "package_url": "https://pypi.org/project/cli-utility/", "platform": "", "project_url": "https://pypi.org/project/cli-utility/", "project_urls": { "Bug Reports": "https://github.com/bluewingtan/cli_utility/issues", "Homepage": "https://github.com/bluewingtan/cli_utility", "Source": "https://github.com/bluewingtan/cli_utility/" }, "release_url": "https://pypi.org/project/cli-utility/1.0.0/", "requires_dist": [ "colorama (>=0.4.1)" ], "requires_python": ">=3.5", "summary": "A simple CLI menu and output utility for python.", "version": "1.0.0", "yanked": false, "yanked_reason": null }, "last_serial": 6032601, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "8638ac71797645298a329253405627c1", "sha256": "912e4b18838249207d4a99ccc171ba6e3917342cbb551fdddeea7b27629d8920" }, "downloads": -1, "filename": "cli_utility-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8638ac71797645298a329253405627c1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7372, "upload_time": "2019-10-26T02:04:22", "upload_time_iso_8601": "2019-10-26T02:04:22.341718Z", "url": "https://files.pythonhosted.org/packages/a5/22/0a8efe16f1e8eccc74c1473dc13c1d1a519f8d75792c5bec7493b2e11c6e/cli_utility-1.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ef49db59d086a04f76a2f500f89fcd05", "sha256": "8a659292bf8943948225f8e4b56a0b0872b14ae19246108065f883fdd283db6a" }, "downloads": -1, "filename": "cli_utility-1.0.0.tar.gz", "has_sig": false, "md5_digest": "ef49db59d086a04f76a2f500f89fcd05", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 3742, "upload_time": "2019-10-26T02:04:25", "upload_time_iso_8601": "2019-10-26T02:04:25.491610Z", "url": "https://files.pythonhosted.org/packages/9c/93/73ef634028a2ce24d6b77ae1122fdc880eec68c96a2b434c863b1369b9bb/cli_utility-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8638ac71797645298a329253405627c1", "sha256": "912e4b18838249207d4a99ccc171ba6e3917342cbb551fdddeea7b27629d8920" }, "downloads": -1, "filename": "cli_utility-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8638ac71797645298a329253405627c1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 7372, "upload_time": "2019-10-26T02:04:22", "upload_time_iso_8601": "2019-10-26T02:04:22.341718Z", "url": "https://files.pythonhosted.org/packages/a5/22/0a8efe16f1e8eccc74c1473dc13c1d1a519f8d75792c5bec7493b2e11c6e/cli_utility-1.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ef49db59d086a04f76a2f500f89fcd05", "sha256": "8a659292bf8943948225f8e4b56a0b0872b14ae19246108065f883fdd283db6a" }, "downloads": -1, "filename": "cli_utility-1.0.0.tar.gz", "has_sig": false, "md5_digest": "ef49db59d086a04f76a2f500f89fcd05", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 3742, "upload_time": "2019-10-26T02:04:25", "upload_time_iso_8601": "2019-10-26T02:04:25.491610Z", "url": "https://files.pythonhosted.org/packages/9c/93/73ef634028a2ce24d6b77ae1122fdc880eec68c96a2b434c863b1369b9bb/cli_utility-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }