Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/morganzhang100/line-counter
A command line tool to analyze the amount of lines and files under current directory
https://github.com/morganzhang100/line-counter
developer-tools python utility
Last synced: 9 days ago
JSON representation
A command line tool to analyze the amount of lines and files under current directory
- Host: GitHub
- URL: https://github.com/morganzhang100/line-counter
- Owner: MorganZhang100
- License: mit
- Created: 2015-03-31T03:22:20.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2019-08-14T14:29:05.000Z (over 5 years ago)
- Last Synced: 2024-11-20T15:58:43.356Z (about 1 month ago)
- Topics: developer-tools, python, utility
- Language: Python
- Size: 10.7 KB
- Stars: 86
- Watchers: 4
- Forks: 15
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# line-counter
A command line tool to analyze the amount of lines and files under current directory.
It supports 'line.select' rules which works like '.gitignore'.## Installation
You can install, upgrade, uninstall line-counter.py with these commands:
```
$ pip install line-counter
$ pip install --upgrade line-counter
$ pip uninstall line-counter
```## Usage
```
Usage: line [options] [args]Analyze the amount of lines and files under current directory following the
rules in 'line.select' or analyze all files if 'line.select' doesn't existOptions:
--version show program's version number and exit
-h, --help show this help message and exit
-d, --detail show more detail in the result
-s, --show show rules in 'line.select'
```## Example usage and output
Analyze all files (when 'line.select' doesn't exist) or specific files (when 'line.select' exists) under current directory.
```
$ line
Search in /Users/Morgan/Documents/Example/
file count: 4
line count: 839
```
Analyze all files (when 'line.select' doesn't exist) or specific files (when 'line.select' exists) under current directory.
And show results in detail.
```
$ line -d
Search in /Users/Morgan/Documents/Example/
Dir A/file C.c 72
Dir A/file D.py 268
file A.py 467
file B.c 32
file count: 4
line count: 839
```
Show the rules in 'line.select'
```
$ line -s
Here are the rules in 'line.select' under /Users/Morgan/Documents/Example/:
#Select rules:
*.c#Ignore rules:
!Dir A
!*.py
```
Check current version
```
$ line --version
line 0.7.4
```## line.select
This file works like '.gitignore'.
* Each line is a rule
* Each line starts with a '#' means that's a comment
* Each line starts with a '!' means it's a ignore rule
* Otherwise it's a select rule
* The order of rules is irrelevant and ignore rules can always override select rules
* The rules can find all the pathnames matching a specified pattern according to the rules used by the Unix shell. No tilde expansion is done, but *, ?, and character ranges expressed with [ ] will be correctly matched.## Roadmap
* Add order output function
* Add option to only count file amount or line amount## Change Log
* **0.7.4** 03/25/2017
Fix distribution on PyPI.* **0.7.3** 03/25/2017
Fix the long description format on PyPI.* **0.7.2** 03/25/2017
Fix a bug that file cannot be matched when there is a '[' in the path.## Author
I'm Morgan Zhang, a graduate computer science student in University of San Francisco.#### Why I made it
I always want to know how many lines of code that I have done, but there isn't a easy way to get it.
So I decide to make a tool for this.#### Contact Information
[email protected]## License
The MIT license.