Tokei (時計)

Tokei is a program that allows you to count code, quickly.

Documentation

Table of Contents

Canonical Source

The canonical source of this repo is hosted on GitHub. If you have a GitHub account, please make your issues, and pull requests there.

Installation

Automatic

If you have cargo 0.6.0>= installed just run the cargo install command.

shell $ cargo install tokei

Manual

Fedora 64 bit

Install rust and cargo from either the official page or use a copr repo such as Rust shell $ dnf copr enable phnxrbrn/tokei $ dnf install tokei

Other

shell $ git clone https://github.com/Aaronepower/tokei.git $ cd tokei $ cargo build --release

Linux

```

sudo mv target/release/tokei /usr/local/bin

```

OSX

```

sudo mv target/release/tokei /usr/local/bin/tokei

```

Windows

How to use Tokei

Basic usage

This is the basic way to use tokei. Which will report on the code in ./foo and all subfolders.

shell $ tokei ./foo

Multiple folders

To have tokei report on multiple folders in the same call simply add a comma followed by another path.

shell $ tokei ./foo, ./bar, ./baz

Excluding folders

The --exclude option will allow to pass in a sequence of string to exclude any path including those words

shell $ tokei ./foo --exclude node_modules, target

Sorting output

By default tokei sorts alphabetically by language name, however using --sort tokei can also sort by any of the columns. blanks, code, comments, lines

shell $ tokei ./foo --sort code

Outputing file statistics

By default tokei only outputs the total of the languages, and using --files flag tokei can also output individual file statistics.

shell $ tokei ./foo --files

Outputting into different formats

Tokei normally outputs into a nice human readable format designed for the terminal. There is also using the --output option various other formats that are more useful for bringing the data into another program.

Current supported formats - JSON --output json - YAML --output yaml - TOML --output toml - CBOR --output cbor

shell $ tokei ./foo --output json

Reading in stored formats

Tokei can also take in the outputted formats added the previous results to it's current run. Tokei can take either a path to a file, the format passed in as a value to the option, or from stdin.

shell $ tokei ./foo --input ./stats.json

Options

``` Tokei 3.0.0 Aaron P. theaaronepower@gmail.com Count Code, Quickly.

USAGE: Tokei [FLAGS] [OPTIONS] ...

FLAGS: -f, --files Will print out statistics on individual files. -h, --help Prints help information -l, --languages Prints out supported languages and their extensions. -V, --version Prints version information

OPTIONS: -e, --exclude Ignore all files & directories containing the word. -i, --input Gives statistics from a previous tokei run. Can be given a file path, or "stdin" to read from stdin. -o, --output Outputs Tokei in a specific format. [values: cbor, json, toml, yaml] -s, --sort Will sort based on column [values: files, lines, blanks, code, comments]

ARGS: ... The input file(s)/directory(ies) ```

Supported Languages

If there is a language that you want added submit a pull request with the following information

ActionScript Assembly Autoconf BASH Batch C C Header Clojure CoffeeScript ColdFusion ColdFusion CFScript Coq C++ C++ Header C# C Shell CSS D Dart Device Tree Erlang FORTRAN Legacy FORTRAN Modern Go Haskell HTML Idris Isabelle JAI Java JavaScript Julia JSON JSX Kotlin LESS LD Script LISP Lua Makefile Markdown Mustache Nim Objective C Objective C++ OCaml Oz Pascal Perl Polly PHP Protocol Buffers Prolog Python QCL R Ruby Ruby HTML Rust Sass Scala Standard ML SQL Swift TeX Plain Text TOML TypeScript Vim Script Unreal Script Wolfram XML YAML Zsh

Common issues

Tokei says I have a lot of D code, but I know there is no D code!

This is likely due to gcc generating .d files. Until the D people decide on a different file extension, you can always exclude .d files using the -e --exclude flag like so

$ tokei . -e .d

Copyright and License

(C) Copyright 2015 by Aaron Power and contributors

See CONTRIBUTORS.md for a full list of contributors.

Tokei is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENCE-APACHE, LICENCE-MIT for more information.