- Notifications
You must be signed in to change notification settings - Fork0
simple tool to count SLOC (source lines of code)
License
zwrawr/sloc
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Create stats of your source code:
- physical lines
- lines of code (source)
- lines with comments
- lines with single-line comments
- lines with block comments
- lines mixed up with source and comments
- empty lines within block comments
- empty lines
- lines with TODO's
In addition to the default terminal output (see examples below), sloc provides an alternative set of output formatters:
- CSV
- JSON
- Command line table
To use sloc as an application install it globally:
sudo npm install -g sloc
If you're going to use it as a Node.js module within your project:
npm install --save sloc
You can also use sloc within your browser application.
Linksloc.js
in your HTML file:
<scriptsrc="lib/sloc.js"></script>
sloc is also available viabower:
bower install sloc
Note:You need to compile the coffee-script files yourself.If you want to use a pre-compiled bower package, you can run
bower install sloc-bower
sloc [option]<file>|<directory>
Options:
-h, --help output usage information-V, --version output the version number-e, --exclude<regex> regular expression to exclude files and folders-i, --include<regex> regular expression to include files and folders-f, --format<format> format output: json, csv, cli-table --format-option [value] add formatter option-k, --keys<keys> report only numbers of the given keys-d, --details report stats of each analyzed file-a, --alias<custom ext>=<standard ext>alias custom ext to act like standard ext (eg. php5=php,less=css)
e.g.:
$ sloc src/---------- Result ------------ Physical: 1202 Source: 751 Comment: 322 Single-line comment: 299 Block comment: 23 Mixed: 116 Empty: 245Number of filesread: 10------------------------------
or
$ sloc --details \ --format cli-table \ --keys total,source,comment \ --exclude i18n*.\.coffee \ --format-option no-head src/┌─────────────────────────────────┬──────────┬────────┬─────────┐│ src/cli.coffee │ 98 │ 74 │ 7 │├─────────────────────────────────┼──────────┼────────┼─────────┤│ src/helpers.coffee │ 26 │ 20 │ 0 │├─────────────────────────────────┼──────────┼────────┼─────────┤│ src/sloc.coffee │ 196 │ 142 │ 20 │├─────────────────────────────────┼──────────┼────────┼─────────┤│ src/formatters/simple.coffee │ 44 │ 28 │ 7 │├─────────────────────────────────┼──────────┼────────┼─────────┤│ src/formatters/csv.coffee │ 25 │ 14 │ 5 │├─────────────────────────────────┼──────────┼────────┼─────────┤│ src/formatters/cli-table.coffee │ 22 │ 13 │ 0 │└─────────────────────────────────┴──────────┴────────┴─────────┘
Or use it in your own node module
varfs=require('fs');varsloc=require('sloc');fs.readFile("mySourceFile.coffee","utf8",function(err,code){if(err){console.error(err);}else{varstats=sloc(code,"coffee");for(iinsloc.keys){vark=sloc.keys[i];console.log(k+" : "+stats[k]);}}});
varsourceCode="foo();\n /* bar */\n baz();";varstats=window.sloc(sourceCode,"javascript");
Fork this repo
add the new formatter into
src/formatters/
that exports amethod with three arguments:- results (object)
- global options (object)
- formatter specific options (array)
add the formatter in
src/cli.coffee
open a pull request
Grunt
Gulp
Jenkins
Istanbul
Codemetrics
- Assembly
- Agda
- Brightscript
- C / C++
- C#
- Clojure / ClojureScript
- CoffeeScript / IcedCoffeeScript
- Crystal
- CSS / SCSS / SASS / LESS / Stylus
- Dart
- Erlang
- F#
- Fortran
- Go
- Groovy
- Handlebars
- Haskell
- Haxe
- Hilbert
- HTML
- hy
- Jade
- Java
- JavaScript
- JSX
- Julia
- Kotlin
- LaTeX
- LilyPond
- LiveScript
- Lua
- MJS
- Mochi
- Monkey
- Mustache
- Nim
- Nix
- Objective-C / Objective-C++
- OCaml
- Perl 5
- PHP
- Python
- R
- Racket
- Ren'Py
- Ruby
- Rust
- Scala
- Squirrel
- SVG
- Swift
- Typescript
- Visual Basic
- XML
- Yaml
npmtest
npm run prepublish
seeCHANGELOG.md
sloc is licensed under the MIT license
About
simple tool to count SLOC (source lines of code)
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Languages
- CoffeeScript84.6%
- JavaScript15.4%