Difference between revisions of "Platform Team/Sugar Lint"
Jump to navigation
Jump to search
Line 9: | Line 9: | ||
* python files by pylint (should be installed before) with custom configuration file and pep8.py (comes with sugar-lint sources), | * python files by pylint (should be installed before) with custom configuration file and pep8.py (comes with sugar-lint sources), | ||
* vala files by vala-indent (should be installed from http://git.sugarlabs.org/projects/vala-indent). | * vala files by vala-indent (should be installed from http://git.sugarlabs.org/projects/vala-indent). | ||
+ | * C/C++ files by indent command (should be installed) | ||
== Install == | == Install == |
Revision as of 10:49, 18 August 2010
Summary
A set of configuration files and scripts to lint various sugar related code.
During execution, sugar-lint will lint:
- python files by pylint (should be installed before) with custom configuration file and pep8.py (comes with sugar-lint sources),
- vala files by vala-indent (should be installed from http://git.sugarlabs.org/projects/vala-indent).
- C/C++ files by indent command (should be installed)
Install
Clone sugar-lint repository:
git clone git://git.sugarlabs.org/sugar-lint/mainline.git <local-path>
Add sugar-lint command to PATH e.g. to ~/.bashrc (you need to relogin):
echo PATH=<local-path>:$PATH >> ~/.bashrc
Usage
Direct invocation
To lint files:
sugar-lint <file>
To lint all files recursively:
sugar-lint -r .
If fails were detected, call diff command (by default vimdiff
or DIFFER
environment variable value) to diff the source file and temporary file with comments in problematic places:
sugar-lint -d <file>
Lint files before commiting
To add pre-commit git hook to lint files before commiting to arbitrary project:
ln -s <local-path>/sugar/lint/git-pre-commit-hook <project-root>/.git/hooks/pre-commit
Additional syntax
Various sugar-lint related hints that could be used in source files.
Disable sugar-lint
To disable checks entirely for source file.
Python syntax:
# sugar-lint: disable
Vala syntax:
// sugar-lint: disable /* sugar-lint: disable */