[![PyPI version](https://badge.fury.io/py/LngDetectoR.svg)](https://badge.fury.io/py/LngDetectoR)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Downloads](https://static.pepy.tech/badge/lngdetector)](https://pepy.tech/project/lngdetector)
# LngDetectoR
LngDetectoR is a Python tool designed to analyze directories and detect the programming languages used in the files. It provides a comprehensive report including the count of files, lines of code, and the percentage of each language present.
## Installation
To install LngDetectoR, you can use pip:
```bash
pip install LngDetectoR
```
## Usage
### As a Command Line Tool
You can use LngDetectoR directly from the command line. The basic usage is as follows:
```bash
lngdetector --directory <path-to-directory>
```
- `--directory`: Specify the directory you want to analyze. If not specified, it uses the current working directory.
### As a Python Module
LngDetectoR can also be used as a Python module in your scripts.
Example:
```python
from lngdetector.main import generate_report
# Generate a report for the current directory
report = generate_report('/path/to/your/project')
# Print the pretty table
report.print_pretty_table()
# Get data for a specific language
python_data = report.get_language_data('Python')
print(f"Python files: {python_data['count']}, lines of code: {python_data['lines']}")
```
## Output Example
When you run LngDetectoR, it outputs a table with the detected languages, the count of files, lines of code, and the percentage. Here is an example output:
```
Total files: 50
Total lines of code: 1200
+------------+------------+---------------+------------+
| Language | File Count | Lines of Code | Percentage |
+------------+------------+---------------+------------+
| Python | 20 | 500 | 41.67% |
| JavaScript | 15 | 350 | 29.17% |
| HTML | 10 | 200 | 16.67% |
| CSS | 5 | 150 | 12.50% |
+------------+------------+---------------+------------+
```
## Contributing
Contributions, issues, and feature requests are welcome! Feel free to check [issues page](https://github.com/chigwell/langdetector/issues).
## License
[MIT](https://choosealicense.com/licenses/mit/)
Raw data
{
"_id": null,
"home_page": "https://github.com/chigwell/langdetector",
"name": "LngDetectoR",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "language detection programming report",
"author": "Evgenii Evstafev",
"author_email": "chigwel@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/4d/c6/11fa9e572ac32b07aa0560a2123a16786c8fd1b11da3cef192ebd0fae9ec/LngDetectoR-0.15.tar.gz",
"platform": null,
"description": "[![PyPI version](https://badge.fury.io/py/LngDetectoR.svg)](https://badge.fury.io/py/LngDetectoR)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Downloads](https://static.pepy.tech/badge/lngdetector)](https://pepy.tech/project/lngdetector)\n\n# LngDetectoR\n\nLngDetectoR is a Python tool designed to analyze directories and detect the programming languages used in the files. It provides a comprehensive report including the count of files, lines of code, and the percentage of each language present.\n\n## Installation\n\nTo install LngDetectoR, you can use pip:\n\n```bash\npip install LngDetectoR\n```\n\n## Usage\n\n### As a Command Line Tool\n\nYou can use LngDetectoR directly from the command line. The basic usage is as follows:\n\n```bash\nlngdetector --directory <path-to-directory>\n```\n\n- `--directory`: Specify the directory you want to analyze. If not specified, it uses the current working directory.\n\n### As a Python Module\n\nLngDetectoR can also be used as a Python module in your scripts.\n\nExample:\n\n```python\nfrom lngdetector.main import generate_report\n\n# Generate a report for the current directory\nreport = generate_report('/path/to/your/project')\n\n# Print the pretty table\nreport.print_pretty_table()\n\n# Get data for a specific language\npython_data = report.get_language_data('Python')\nprint(f\"Python files: {python_data['count']}, lines of code: {python_data['lines']}\")\n```\n\n## Output Example\n\nWhen you run LngDetectoR, it outputs a table with the detected languages, the count of files, lines of code, and the percentage. Here is an example output:\n\n```\nTotal files: 50\nTotal lines of code: 1200\n+------------+------------+---------------+------------+\n| Language | File Count | Lines of Code | Percentage |\n+------------+------------+---------------+------------+\n| Python | 20 | 500 | 41.67% |\n| JavaScript | 15 | 350 | 29.17% |\n| HTML | 10 | 200 | 16.67% |\n| CSS | 5 | 150 | 12.50% |\n+------------+------------+---------------+------------+\n```\n\n## Contributing\n\nContributions, issues, and feature requests are welcome! Feel free to check [issues page](https://github.com/chigwell/langdetector/issues).\n\n## License\n\n[MIT](https://choosealicense.com/licenses/mit/)\n\n",
"bugtrack_url": null,
"license": "",
"summary": "A tool to detect programming languages in a directory.",
"version": "0.15",
"project_urls": {
"Homepage": "https://github.com/chigwell/langdetector"
},
"split_keywords": [
"language",
"detection",
"programming",
"report"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "92aee14f77f6720625739ea3f35c4aa563c3ca81bd41a9827a99c4fcd0864297",
"md5": "792630af0259e6462dee0f04e983c815",
"sha256": "bde4461ae024537d1956553ce8663644f221f49c171df8fb075faf114b17220c"
},
"downloads": -1,
"filename": "LngDetectoR-0.15-py3-none-any.whl",
"has_sig": false,
"md5_digest": "792630af0259e6462dee0f04e983c815",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 4668,
"upload_time": "2023-12-11T09:37:06",
"upload_time_iso_8601": "2023-12-11T09:37:06.235526Z",
"url": "https://files.pythonhosted.org/packages/92/ae/e14f77f6720625739ea3f35c4aa563c3ca81bd41a9827a99c4fcd0864297/LngDetectoR-0.15-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4dc611fa9e572ac32b07aa0560a2123a16786c8fd1b11da3cef192ebd0fae9ec",
"md5": "697e96aa390ba3c911c1f140e721f896",
"sha256": "fd9be7c19d9d258cca6187aaf8adff826dd25fe1411b9f9b003a9fea35c2892e"
},
"downloads": -1,
"filename": "LngDetectoR-0.15.tar.gz",
"has_sig": false,
"md5_digest": "697e96aa390ba3c911c1f140e721f896",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 4213,
"upload_time": "2023-12-11T09:37:09",
"upload_time_iso_8601": "2023-12-11T09:37:09.339272Z",
"url": "https://files.pythonhosted.org/packages/4d/c6/11fa9e572ac32b07aa0560a2123a16786c8fd1b11da3cef192ebd0fae9ec/LngDetectoR-0.15.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-12-11 09:37:09",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "chigwell",
"github_project": "langdetector",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "lngdetector"
}