{ "info": { "author": "Mosky", "author_email": "mosky.tw@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Utilities" ], "description": ".. image:: https://travis-ci.org/moskytw/clime.png\n :target: https://travis-ci.org/moskytw/clime\n\n.. image:: https://pypip.in/v/clime/badge.png\n :target: https://pypi.python.org/pypi/clime\n\n.. image:: https://pypip.in/d/clime/badge.png\n :target: https://pypi.python.org/pypi/clime\n\nThe full version of this documentaion is at `clime.mosky.tw\n`_.\n\nClime\n=====\n\nClime lets you convert any module into a multi-command CLI program with zero\nconfiguration.\n\nThe main features:\n\n1. It works well with zero configuration. Free you from the configuration hell.\n2. Docstring (i.e., help text) is just configuration. When you finish your\n docstring, the configuration of aliases and metavars is also finished.\n3. It generates usage for each command automatically.\n\nIt is a better choice than the heavy optparse or argparse for most of the CLI\ntasks.\n\nCLI-ize ME!\n-----------\n\nLet me show you Clime with an example.\n\nWe have a simple script with a docstring here: ::\n\n # file: repeat.py\n\n def repeat(message, times=2, count=False):\n '''It repeats the message.\n\n options:\n -m=, --message= The description of this option.\n -t=, --times=\n -c, --count\n '''\n\n s = message * times\n return len(s) if count else s\n\nAfter we add this line: ::\n\n import clime.now\n\nOur CLI program is ready! ::\n\n $ python repeat.py twice\n twicetwice\n\n $ python repeat.py --times=3 thrice\n thricethricethrice\n\nIt also generates a pretty usage for this script: ::\n\n $ python repeat.py --help\n usage: [-t | --times=] [-c | --count] \n or: repeat [-t | --times=] [-c | --count] \n\nIf you have a docstring in your function, it also shows up in usage manual with\n``--help``. ::\n\n $ python repeat.py repeat --help\n usage: [-t | --times=] [-c | --count] \n or: repeat [-t | --times=] [-c | --count] \n\n It repeats the message.\n\n options:\n -m=, --message= The message.\n -t=, --times=\n -c, --count\n\nYou can find more examples in the `clime/examples`_.\n\n`Command `_ describes more\nabout how it works.\n\n.. _`clime/examples`:\n https://github.com/moskytw/clime/tree/master/examples\n\nInstallation\n------------\n\nClime is hosted on two different platforms, PyPI_ and GitHub_.\n\nInstall from PyPI\n~~~~~~~~~~~~~~~~~\n\nInstall Clime from PyPI_ for a stable version: ::\n\n $ sudo pip install clime\n\nIf you don't have pip, execute ::\n\n $ sudo apt-get install python-pip\n\nto install pip on Debian-base Linux distribution.\n\nGet Clime from GitHub\n~~~~~~~~~~~~~~~~~~~~~\n\nIf you want to follow the latest version of Clime, use ::\n\n $ git clone git://github.com/moskytw/clime.git\n\nto clone a Clime repository, or download manually from GitHub_.\n\n.. _GitHub:\n http://github.com/moskytw/clime\n\n.. _PyPI:\n http://pypi.python.org/pypi/clime", "description_content_type": null, "docs_url": "https://pythonhosted.org/clime/", "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://clime.mosky.tw/", "keywords": null, "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "clime", "package_url": "https://pypi.org/project/clime/", "platform": "any", "project_url": "https://pypi.org/project/clime/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://clime.mosky.tw/" }, "release_url": "https://pypi.org/project/clime/0.3.1/", "requires_dist": null, "requires_python": null, "summary": "Convert functions into multi-command program breezily.", "version": "0.3.1" }, "last_serial": 1498529, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "1530fc7034749ccdd5935c3b49945cf7", "sha256": "abab2cc83a4797d41bddf7c43b1cecea1037cb51fdd74ac2877156249c24aa97" }, "downloads": -1, "filename": "clime-0.1.tar.gz", "has_sig": false, "md5_digest": "1530fc7034749ccdd5935c3b49945cf7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9899, "upload_time": "2012-03-21T01:07:28", "url": "https://files.pythonhosted.org/packages/7f/09/07b8063e3bef811b715b39f4f5a1c74335d396105061e3494f64ab9ea1cd/clime-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "1bc4a228dbcbc5986ee91e4059531fe7", "sha256": "23b342c530fa3f47595474b1418311effa3d331e8c55085d08185f272744f368" }, "downloads": -1, "filename": "clime-0.1.1.tar.gz", "has_sig": false, "md5_digest": "1bc4a228dbcbc5986ee91e4059531fe7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10230, "upload_time": "2012-03-21T07:15:58", "url": "https://files.pythonhosted.org/packages/e8/be/030dd8fc605d82808cda90dda5a71ed46e9484c4490e26953dc6db2c887b/clime-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "cc60538b83c5349ba0556e853266948d", "sha256": "1ed2144e6f50bd6e78d63b9c4b8cd6f59c2f9fd5bec3617235eb04cdad3d673f" }, "downloads": -1, "filename": "clime-0.1.2.tar.gz", "has_sig": false, "md5_digest": "cc60538b83c5349ba0556e853266948d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11252, "upload_time": "2012-03-22T14:41:09", "url": "https://files.pythonhosted.org/packages/fb/10/7cdbed452fc114c0180e892066c4ac02463308ff4dd5a44672aa525f4622/clime-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "fc481ccbbe81f42d161ac380e6c3cc40", "sha256": "0512c3612ed0a1749b29901599a69860eb4755e4462a1cc8a0135e03174682ad" }, "downloads": -1, "filename": "clime-0.1.3.tar.gz", "has_sig": false, "md5_digest": "fc481ccbbe81f42d161ac380e6c3cc40", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12882, "upload_time": "2012-03-29T23:57:56", "url": "https://files.pythonhosted.org/packages/f7/2d/ca4a7d68ced18f2ba73ab08e810716a1404958670b65e76f216007ca84fc/clime-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "143bd1052c3d898fdcd35e3811fbe829", "sha256": "45a9db0984dbba5f6bcfd3593c2a5163433e30a8dcc7f1487d9e1798b467650f" }, "downloads": -1, "filename": "clime-0.1.4.tar.gz", "has_sig": false, "md5_digest": "143bd1052c3d898fdcd35e3811fbe829", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13130, "upload_time": "2012-06-08T17:48:07", "url": "https://files.pythonhosted.org/packages/2b/e7/5db738d622b58865701ee32e6f71d302da7fd7bc7f4fa480785f1e277c17/clime-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "2a20322ce0a9965b7a2d8d0671dd7e87", "sha256": "badfbf00e0c849132e843c32adb490564029962b97a92be6755438afbe120cba" }, "downloads": -1, "filename": "clime-0.1.5.tar.gz", "has_sig": false, "md5_digest": "2a20322ce0a9965b7a2d8d0671dd7e87", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15158, "upload_time": "2013-03-14T17:45:11", "url": "https://files.pythonhosted.org/packages/4f/6b/f62c7306424090e42a77f57a90cc3c300fe9a6dc59b3463507334c707762/clime-0.1.5.tar.gz" } ], "0.1.6": [ { "comment_text": "", "digests": { "md5": "641f80987c929afeba2bc1facbb8fecf", "sha256": "04c4f9fb93daf8b37e17aaef7ffa9a6c1d27bee2c820e396cdd13835abf53d56" }, "downloads": -1, "filename": "clime-0.1.6.tar.gz", "has_sig": false, "md5_digest": "641f80987c929afeba2bc1facbb8fecf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16585, "upload_time": "2013-03-28T18:14:54", "url": "https://files.pythonhosted.org/packages/52/d6/1eb65c2b89c82a3066ff02eeedcd40d6c196c7d2fe03e9e3da431ce8d9f0/clime-0.1.6.tar.gz" } ], "0.1.7": [ { "comment_text": "", "digests": { "md5": "9360191bda721f45b1c5b73eac58d881", "sha256": "66b05b4cf1ff3dbe9f471edc3091cbc06a5b59ce93665d877d76ad22e83d32a7" }, "downloads": -1, "filename": "clime-0.1.7.tar.gz", "has_sig": false, "md5_digest": "9360191bda721f45b1c5b73eac58d881", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16635, "upload_time": "2013-03-30T22:49:37", "url": "https://files.pythonhosted.org/packages/1e/06/9e7c63fd27aa2162e69f579a4d256d6b3149165db3aa6e700278480c0b34/clime-0.1.7.tar.gz" } ], "0.1.8": [ { "comment_text": "", "digests": { "md5": "ae4e3719f80353827f6a8a05753c41c3", "sha256": "f23f7441dfdae9d5f7b5f070c0d03ff4076d304ea5b5a5fca01a28c8abd19cef" }, "downloads": -1, "filename": "clime-0.1.8.tar.gz", "has_sig": false, "md5_digest": "ae4e3719f80353827f6a8a05753c41c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16848, "upload_time": "2013-04-22T16:07:26", "url": "https://files.pythonhosted.org/packages/42/78/e21861580417c9a9a7da659452b3154b62481f2f17d9b378e14dae251533/clime-0.1.8.tar.gz" } ], "0.1.9": [ { "comment_text": "", "digests": { "md5": "fd6cf3918c3292823fb52a5b28e5aee6", "sha256": "95e4d9c0b48f3d5d541647aa8a5031f5aa9ba2fc6b4b4445cc03853b603fcdb3" }, "downloads": -1, "filename": "clime-0.1.9.tar.gz", "has_sig": false, "md5_digest": "fd6cf3918c3292823fb52a5b28e5aee6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17992, "upload_time": "2013-05-07T10:29:32", "url": "https://files.pythonhosted.org/packages/f1/68/84864c5ec72f6a49fb1cce5a16948e609a0b31c6f465ad30142a246921ac/clime-0.1.9.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "9384893578a211f8a0118aab7292dc75", "sha256": "232a9e4cd91724dce68be53dac54de9627b27aafa29fbc378550068bd6017d20" }, "downloads": -1, "filename": "clime-0.2.tar.gz", "has_sig": false, "md5_digest": "9384893578a211f8a0118aab7292dc75", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17453, "upload_time": "2013-05-20T21:01:11", "url": "https://files.pythonhosted.org/packages/90/d7/0c12eb844a6fc8f5d32c1457ffcfac6615a5d583a5ba79f265fd0d2fea8d/clime-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "9765f3c03a6f2b0ea55eb3d0dfe3540f", "sha256": "75c7bb70fba05cc2d359ebe260bb2dca42cc43d72e531e59337584a007111493" }, "downloads": -1, "filename": "clime-0.2.1.tar.gz", "has_sig": false, "md5_digest": "9765f3c03a6f2b0ea55eb3d0dfe3540f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17493, "upload_time": "2013-06-06T18:22:07", "url": "https://files.pythonhosted.org/packages/fc/16/a6cd8bc6749734db54ffe32c6b0d12038ed8ca48ed0f1745eb01e47d400f/clime-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "154b78b4d8833d8ab100e4c39f8b2a45", "sha256": "26d6d93362f098301471fd9e9e1f42ec1c16f61c4250ac2f92d99feae3307652" }, "downloads": -1, "filename": "clime-0.2.2.tar.gz", "has_sig": false, "md5_digest": "154b78b4d8833d8ab100e4c39f8b2a45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 17929, "upload_time": "2013-06-06T18:59:26", "url": "https://files.pythonhosted.org/packages/ce/b1/58ffbd1c4659ab09aa8031910f9addb2f8be76e45b42c35874c153eb05c7/clime-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "1486e1dab39139e23beaee035ec8b466", "sha256": "a2c44c3e8556979c265b885547ebd21ef985ced3788d25299feae488a0dd1184" }, "downloads": -1, "filename": "clime-0.2.3.tar.gz", "has_sig": false, "md5_digest": "1486e1dab39139e23beaee035ec8b466", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18642, "upload_time": "2013-06-06T22:12:56", "url": "https://files.pythonhosted.org/packages/e0/4f/1f817f543b5d56c0d81ebd7fe7d84ce55655bf21b9edfdcaf543a7b02414/clime-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "53820a42648551898a8dded2aba38ca4", "sha256": "bd6d111ed2a5d9c015d43e2aa78f850a76759688c84e676d5ee51e9b4e230702" }, "downloads": -1, "filename": "clime-0.2.4.tar.gz", "has_sig": false, "md5_digest": "53820a42648551898a8dded2aba38ca4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19969, "upload_time": "2013-09-26T13:19:20", "url": "https://files.pythonhosted.org/packages/1f/8d/8426835bdf1393b15a570c9e2022769ae9bd2d6a5d949eb0a6d73e77bc18/clime-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "29e927e1cf3b16eb3dee8e9f4534598b", "sha256": "913a257f5c3ea3e2b9e8fb53bd70d7896bf4114094de988d414efb09611517ff" }, "downloads": -1, "filename": "clime-0.2.5.tar.gz", "has_sig": false, "md5_digest": "29e927e1cf3b16eb3dee8e9f4534598b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20206, "upload_time": "2013-09-26T13:33:03", "url": "https://files.pythonhosted.org/packages/d1/be/d14507cee80090cbc955953949187927ab1d8e1f2c10b732c65d4c23274f/clime-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "3fdbb4b8982eaf98179cf379bd8cc43d", "sha256": "2ad96dc31979c385195604f366872d3413fb8c9c8f5c309b12ba0e5ee5832736" }, "downloads": -1, "filename": "clime-0.2.6.tar.gz", "has_sig": false, "md5_digest": "3fdbb4b8982eaf98179cf379bd8cc43d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20497, "upload_time": "2013-09-26T20:20:21", "url": "https://files.pythonhosted.org/packages/32/20/0ad1ae858b0f7d35753ef3c21d87e8fff5880abb9e06ccd5b0fb4204c8c2/clime-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "937f90479e47dc277b11ed0726a16f93", "sha256": "e01b15e616cafc495ca286127b088762ec867f0c061299066b7cbfd85d3227fc" }, "downloads": -1, "filename": "clime-0.2.7.tar.gz", "has_sig": false, "md5_digest": "937f90479e47dc277b11ed0726a16f93", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20560, "upload_time": "2014-11-07T17:38:54", "url": "https://files.pythonhosted.org/packages/55/ff/f05dcbbec66c3ccf1bc926374b9d31574a645653a02cc1aa90b2e817c916/clime-0.2.7.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "fde4fd3f1e5845bbff793690a9ef4de6", "sha256": "1a095661d2a95725be134734d8d77c3f5bf2c26ff038160c0bffe9a7401e1ee2" }, "downloads": -1, "filename": "clime-0.3.tar.gz", "has_sig": false, "md5_digest": "fde4fd3f1e5845bbff793690a9ef4de6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20362, "upload_time": "2015-04-08T12:35:20", "url": "https://files.pythonhosted.org/packages/cf/3d/791b40c101df560b51cdcdce661bcd6dcb607bef0f83e0f6cb3246b726f8/clime-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "49c26fa52bb8ecb11aa3664d8949ef3e", "sha256": "d64ce5bbef27534dc2f88b8154c903b9e416cd0c294bb3aa74fecd826f42c37c" }, "downloads": -1, "filename": "clime-0.3.1.tar.gz", "has_sig": false, "md5_digest": "49c26fa52bb8ecb11aa3664d8949ef3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20389, "upload_time": "2015-04-10T03:05:36", "url": "https://files.pythonhosted.org/packages/16/2c/9ec5c1093aba7501bc927dd287e3751a1b641eba262df3b192052e0c5672/clime-0.3.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "49c26fa52bb8ecb11aa3664d8949ef3e", "sha256": "d64ce5bbef27534dc2f88b8154c903b9e416cd0c294bb3aa74fecd826f42c37c" }, "downloads": -1, "filename": "clime-0.3.1.tar.gz", "has_sig": false, "md5_digest": "49c26fa52bb8ecb11aa3664d8949ef3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20389, "upload_time": "2015-04-10T03:05:36", "url": "https://files.pythonhosted.org/packages/16/2c/9ec5c1093aba7501bc927dd287e3751a1b641eba262df3b192052e0c5672/clime-0.3.1.tar.gz" } ] }