22 releases
0.2.5 | Apr 15, 2024 |
---|---|
0.2.4 | Sep 8, 2023 |
0.2.3 | Aug 3, 2023 |
0.2.2 | Sep 9, 2022 |
0.0.0-alpha.0 | Jul 3, 2019 |
#107 in Development tools
33KB
855 lines
lok
lok
is a command line tool, that is used to quickly calculate the number of lines of various language codes in a project
╭──────────────────────────────────────────────────────────────────────────────╮
│ Language Code Comment Blank File Size │
├──────────────────────────────────────────────────────────────────────────────┤
│ CSS 6384 9 40 108 145.89 KB │
│ HTML 19 0 0 1 1011 B │
│ JSON 205 0 0 110 13.25 KB │
│ JavaScript 206 8 1 113 590.14 KB │
│ Markdown 8 0 5 1 229 B │
│ TypeScript JSX 14733 262 800 109 530.76 KB │
│ TypeScript 680 57 57 8 22.07 KB │
│ YAML 5 0 0 1 83 B │
├──────────────────────────────────────────────────────────────────────────────┤
│ Total 22,240 336 903 451 1.27 MB │
╰──────────────────────────────────────────────────────────────────────────────╯
Features
- Quickly calculate data
- Support multiple languages
- Support multiple output formats, ASCII, HTML, Markdown
Install
Download the binary from the release page
Or use cargo
to install
cargo install lok
A native package is available on NetBSD from the official repositories. To install it, simply run
pkgin install lok
A package on the AUR is also available. To install it simply run with your favorite AUR helper
paru lok
Use
Go to your project in the terminal and type lok
on the command line
cd your-project
lok
# Change working directory
lok /root/code
# Exclude all files matched by glob
lok -e './node_modules/**'
# Exclude all files with the specified extension
lok -e '**/*.ts' '**/*.js'
# Include only files matching glob
lok -i './src/*.rs'
# Only count files containing extensions
lok --extension js ts jsx tsx
# Output other formats: table, html, markdown
lok -o markdown
# Save to file
lok -o html > code.html
lok -o markdown > code.md
# Sort by: language, code, comment, blank, file, size
lok -s code
Contributing
If you want to add statistics for other languages, please update config.rs
Example:
language!(
"Rust",
vec!["rs"],
vec!["//", "///"],
vec![("/*", "*/")]
);
// ...
Benchmark
First need to install
cargo install hyperfine loc tokei
Run
./benchmark
License
MIT LICENSE
Dependencies
~1.9–8.5MB
~70K SLoC