{ "info": { "author": "Tihomir Saulic", "author_email": "tihomir.saulic@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "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 :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "pycount\n=======\n\n* experimental LOC tool (lines of code, a.k.a. SLOC)\n* doing this to learn Python\n* feel free to raise issues if you find something unusual (the likelihood of someone even looking at this is\nvery close to zero, so I'm not expecting anything :D)\n\n**TODO**\n* add recognition of text files without extension\n* add a lightweight option for results charting\n* add rules to separate comments based on type of file\n* count code lines, comments and blank lines separately\n* improve speed, always\n* write tests\n\n**INSTALL**\n```\npip install pycount\n```\n\n**USAGE**\n\nYou can run the command at any location in your command line\n```\n$ pycount\n```\n\nOr you can pass it path arguments\n```\n$ pycount ~/My/Repos/Some/Project # single path\n$ pycount ~/Some/Code ~/Some/Other/Code # multiple paths\n$ pycount ~/some.file.py # just one file\n```\n\nExclude directories or files (exact match)\n```\n$ pycount -e test,external\n$ pycount -e test,test.c someproject # counts only 'someproject' directory, while excluding 'test' directory and 'test.c' file\n```\n\nAlternatively, you can use the Counter class\n```\nfrom pycount.core import Counter\n\nCOUNTER = Counter() # or Counter('some/path') # or you can pass it a list of paths\nCOUNTER.discover() # discovers all unique files for a path\nCOUNTER.count() # counts all lines of code, using the pre-defined file types which should be considered\n```\n\nto see just the files, file type count and final results, you can use the class attributes\n```\nCOUNTER.discover()\nCOUNTER.files # lists all the files\n\nCOUNTER.count()\nCOUNTER.file_types # outputs the breakdown of counted file number, by file type\nCOUNTER.results # outputs the dictionary with all the values that were collected through counting per file type\n```\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/tsaulic/pycount", "keywords": "", "license": "MIT License", "maintainer": "", "maintainer_email": "", "name": "pycount", "package_url": "https://pypi.org/project/pycount/", "platform": "", "project_url": "https://pypi.org/project/pycount/", "project_urls": { "Homepage": "https://github.com/tsaulic/pycount" }, "release_url": "https://pypi.org/project/pycount/0.6.18/", "requires_dist": [ "binaryornot" ], "requires_python": "", "summary": "Python lines of code counter", "version": "0.6.18" }, "last_serial": 3205680, "releases": { "0.6.14": [ { "comment_text": "", "digests": { "md5": "d05bdfbfb10231273ae271c61f8c536c", "sha256": "120041b27eb1d2a6cdd59485f8dc8a2f4d962d5d6106ba8eff2e46a804d2af82" }, "downloads": -1, "filename": "pycount-0.6.14.tar.gz", "has_sig": false, "md5_digest": "d05bdfbfb10231273ae271c61f8c536c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7577, "upload_time": "2016-12-20T02:14:30", "url": "https://files.pythonhosted.org/packages/c4/09/137d10a1fdc94c5da719377ba699df5c0e3bd9585523813e9fe009f6e063/pycount-0.6.14.tar.gz" } ], "0.6.15": [ { "comment_text": "", "digests": { "md5": "746726fdc2f0bb7a73bc0ddfbd45b8fd", "sha256": "84fc42f257e935836a1b5aa136122788fa739ce51cee24efdf2285afbfb3e14c" }, "downloads": -1, "filename": "pycount-0.6.15.tar.gz", "has_sig": false, "md5_digest": "746726fdc2f0bb7a73bc0ddfbd45b8fd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7456, "upload_time": "2017-02-02T04:13:33", "url": "https://files.pythonhosted.org/packages/c5/84/fd8801233453f4215bbbcca647e275a0f45c0ca5be2a9f6f5ff050bc6543/pycount-0.6.15.tar.gz" } ], "0.6.16": [ { "comment_text": "", "digests": { "md5": "f39043b9e0b85656339848f8982db516", "sha256": "79d8ee025dc4ee386e9863817263c1eb5aaa0c0733fc3f7018a679fe4c45b989" }, "downloads": -1, "filename": "pycount-0.6.16.tar.gz", "has_sig": false, "md5_digest": "f39043b9e0b85656339848f8982db516", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7455, "upload_time": "2017-02-02T04:16:46", "url": "https://files.pythonhosted.org/packages/72/ed/1fb10153c1af1678f1a9ed1c0b5c8162939a007515f055dc5d06bb7646d7/pycount-0.6.16.tar.gz" } ], "0.6.17": [ { "comment_text": "", "digests": { "md5": "4398c8f12b288846870c825bb2530527", "sha256": "4e2e73d57603e722e9a05d5cd27ab4c04761d057462f664910f4e844bfabcee1" }, "downloads": -1, "filename": "pycount-0.6.17.tar.gz", "has_sig": false, "md5_digest": "4398c8f12b288846870c825bb2530527", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7459, "upload_time": "2017-02-02T04:18:52", "url": "https://files.pythonhosted.org/packages/2e/72/8f0c71859bddce8a0dcc076f04b1f0a0deac834094b0474ca4c094d851ef/pycount-0.6.17.tar.gz" } ], "0.6.18": [ { "comment_text": "", "digests": { "md5": "54da232a304518ed57023c33a63f11f8", "sha256": "a70b0c58e3c98ee0508ecd49677db5987f27dc5e308b3786514b1ea466180459" }, "downloads": -1, "filename": "pycount-0.6.18-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "54da232a304518ed57023c33a63f11f8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11296, "upload_time": "2017-09-27T01:22:56", "url": "https://files.pythonhosted.org/packages/68/85/62e5a56d8e0e2f3d7646a378cb6a90fb330dd41f50ada0a082866f52c3df/pycount-0.6.18-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd4edd310a1caa7acb1d8d909d4bbc89", "sha256": "0072689ea4d3455e96abf789a9c20a67e8e8c350829ee88f5fd8863b0c3884aa" }, "downloads": -1, "filename": "pycount-0.6.18.tar.gz", "has_sig": false, "md5_digest": "bd4edd310a1caa7acb1d8d909d4bbc89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8345, "upload_time": "2017-09-27T01:24:38", "url": "https://files.pythonhosted.org/packages/39/80/c236a6e899caa56bf776030be02141404bb91a24d14a50fa122abdcb6b7d/pycount-0.6.18.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "54da232a304518ed57023c33a63f11f8", "sha256": "a70b0c58e3c98ee0508ecd49677db5987f27dc5e308b3786514b1ea466180459" }, "downloads": -1, "filename": "pycount-0.6.18-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "54da232a304518ed57023c33a63f11f8", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 11296, "upload_time": "2017-09-27T01:22:56", "url": "https://files.pythonhosted.org/packages/68/85/62e5a56d8e0e2f3d7646a378cb6a90fb330dd41f50ada0a082866f52c3df/pycount-0.6.18-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "bd4edd310a1caa7acb1d8d909d4bbc89", "sha256": "0072689ea4d3455e96abf789a9c20a67e8e8c350829ee88f5fd8863b0c3884aa" }, "downloads": -1, "filename": "pycount-0.6.18.tar.gz", "has_sig": false, "md5_digest": "bd4edd310a1caa7acb1d8d909d4bbc89", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8345, "upload_time": "2017-09-27T01:24:38", "url": "https://files.pythonhosted.org/packages/39/80/c236a6e899caa56bf776030be02141404bb91a24d14a50fa122abdcb6b7d/pycount-0.6.18.tar.gz" } ] }