Add more documentation.

This commit is contained in:
Amy Boyd
2016-06-26 06:24:31 +01:00
parent 7ca9835cb9
commit 6660d539cc
3 changed files with 51 additions and 10 deletions

View File

@@ -1,9 +1,24 @@
.editorconfig CLI
=================
This CLI tool is built to automate validating and applying [.editorconfig](http://editorconfig.org/)
rules against files and directories.
It is built in Go, so installation is as simple as downloading one file and running it. It is also
super fast.
The features documented below all work, but some additonal features remain to be done
(see `docs/to-do.md`).
Features
--------
* Command `editorconfig-cli check [PATH]` - check if the files within `[PATH]` satisfy the rules
defined in `.editorconfig`. You can use this in a continuous integration process, like Jenkins,
to fail pull requests that don't satify the rules. Or you could use this in a Git pre-commit hook.
* Command `editorconfig-cli fix [PATH]` - fix the files within `[PATH]` to satify the rules.
* Command `editorconfig-cli ls [PATH]` - list the files found within `[PATH]` and the .editorconfig
files that would be applied to them.
@@ -14,6 +29,16 @@ needed!
* It's open source.
* It's super fast. The `check` command finishes small codebases in well under 1 second, and a 250k
line codebase is checked in under 3 seconds.
How to contribute
-----------------
There is some work still to be done. Refer to the file `docs/to-do.md` for a list.
To run the tests, execute `bin/test`.
License
-------

13
docs/to-do.md Normal file
View File

@@ -0,0 +1,13 @@
* Test on Windows.
* Implement fixers and a `fix` command.
* Optimize speed and memory usage.
* Document how to install.
* The file pattern `{num1..num2}` is not fully implemented yet. See
`ConvertWildcardPatternToGoRegexp` in `path_matcher.go`
* Add an example of how to use the `check` command in a continuous integration build or in a Git
pre-commit hook.

View File

@@ -16,16 +16,19 @@ func CreateCliApp() *cli.App {
Name: "ls",
Usage: "List files that will be matched by the arguments you give",
Action: LsCommand,
ArgsUsage: "[PATH1] [PATH2...]",
},
{
Name: "rules",
Usage: "List rules that match a given file",
Action: RulesCommand,
ArgsUsage: "[PATH1] [PATH2...]",
},
{
Name: "check",
Usage: "Validate files",
Action: CheckCommand,
ArgsUsage: "[PATH1] [PATH2...]",
},
}