Difference between revisions of "Platform Team/Sugar Lint"

From Sugar Labs
Jump to navigation Jump to search
Line 20: Line 20:
 
  echo PATH=''<local-path>'':$PATH >> ~/.bashrc
 
  echo PATH=''<local-path>'':$PATH >> ~/.bashrc
  
== Direct usage ==
+
== Usage ==
 +
 
 +
=== Direct invocation ===
  
 
To lint files:
 
To lint files:
Line 34: Line 36:
 
  sugar-lint -d ''<file>''
 
  sugar-lint -d ''<file>''
  
== Lint files before commiting ==
+
=== Lint files before commiting ===
  
 
To add pre-commit git hook to lint files before commiting to arbitrary project:
 
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
 
  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 */
  
 
== Resources ==
 
== Resources ==
  
 
* [http://git.sugarlabs.org/projects/sugar-lint sources]
 
* [http://git.sugarlabs.org/projects/sugar-lint sources]

Revision as of 18:25, 14 July 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).

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 */

Resources