ness-less
ness-less
makes the nestness less. For the time being. Just so you could grasp the code at once.
But all it does, actually, is folding definitions of deeply nested functions and objects.
Example
Browserify's core file normally contains around 630 lines of code, but ness-less
can extract a brief summary out of it. Different depth settings lead to different levels of granularity.
ness node-browserify/index.js
output:
var mdeps = ;var depsSort = ;var bpack = ;var insertGlobals = ;var syntaxError = ; var builtins = ; var splicer = ;var through = ;var concat = ;var duplexer = ; var inherits = ;var EventEmitter = EventEmitter;var xtend = ;var copy = ;var isarray = ;var defined = ; var bresolve = ;var resolve = ; moduleexports = Browserify;; var path = ;var paths = /*..*/ ; { /*..*/ }Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ };Browserifyprototype { /*..*/ }; { /*..*/ } { /*..*/ }
CLI
ness-less
will try to feed the output to your favorite $PAGER, so check up this variable.
ness [-DEPTH] file.js [PAGER_OPTIONS]...
However, if the output is redirected, ness-less
will respect that.
ness -0 file.js |wc -l
API
nessLess(code, options)
Option | Type | Required? | Default |
---|---|---|---|
depth | number | Yes | |
placeholder | string | No | |
stripEmptyLines | boolean | No | true |
Install
npm install -g ness-less
License
MIT