Cs-contrib.unkrig.de: Difference between revisions

From unkrig.de
Jump to navigation Jump to search
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
<meta name="keywords" content="checkstyle, checks, filters, quickfixes"></meta>
<meta name="description" content="Custom checks, filters and quickfixes for checkstyle and eclipse-cs"></meta>
= Introduction =
= Introduction =
This project adds custom checks, filters and quickfixes for [http://checkstyle.sourceforge.net/ CheckStyle] and [http://eclipse-cs.sourceforge.net/ Eclipse-CS].
This project adds custom checks, filters and quickfixes for [http://checkstyle.sourceforge.net/ CheckStyle] and [http://eclipse-cs.sourceforge.net/ Eclipse-CS].
This project uses the [[Cs-doclet|CS doclet]] (internally) to generate its CheckStyle and eclipse-cs metadata files.
Cs-contrib 1.2.21+ requires the CheckStyle core version 8.21+, because there was an (accidential) breaking change in that version.


= Download =
= Download =
Line 13: Line 19:
A [http://cs-contrib.unkrig.de/CHANGELOG.txt change log] is also available.
A [http://cs-contrib.unkrig.de/CHANGELOG.txt change log] is also available.


= Checks and Quickfixes =
= Documentation =
 
;[['de.unkrig.Alignment' check|<code><de.unkrig.Alignment></code>]]
:Verifies that Java elements are vertically aligned.
 
;[['de.unkrig.CppCommentAlignment' check|<code><de.unkrig.CppCommentAlignment></code>]]
:Verifies that C++ comments ('// ...') are correctly aligned.
 
;[['de.unkrig.InnerAssignment' check|<code><de.unkrig.InnerAssignment></code>]]
:Verifies that assignments in expressions are parenthesized.
 
;[['de.unkrig.NameSpelling' check|<code><de.unkrig.NameSpelling></code>]]
:Verifies that the names of Java elements match, respectively no not match given patterns.


;[['de.unkrig.ParenPad' check|<code><de.unkrig.ParenPad></code>]]
The [http://cs-contrib.unkrig.de/csdoc/ documentation for the cs-contrib checks, filters and quickfixes] was generated by the [http://doclet.unkrig.de CS doclet]
:Enhanced version of "ParenPad": NOSPACE now allows '<code>( // ...</code>'.
:<span style="color: red">This check is superseded by '[[#Check 'de.unkrig.Whitespace'|de.unkrig.Whitespace]]'.</span>
 
;[['de.unkrig.Whitespace' check|<code><de.unkrig.Whitespace></code>]]
:Verifies that tokens are, respectively are not preceded with (and/or followed by) whitespace.
 
;[['de.unkrig.WhitespaceAround' check|<code><de.unkrig.WHitespaceAround></code>]]
:Verifies that a token is surrounded by whitespace.
 
== Check 'de.unkrig.WrapAndIndent' ==
Statements must be uniformly wrapped and indented.
 
=== Properties ===
;basicOffset :How many spaces to use for new indentation level
 
=== Quickfixes ===
;Wrap line          :Wrap this line at the correct position
;Join lines          :Append this line to the previous
;Correct indentation :Correct the indentation of this line
 
== Check 'de.unkrig.ZeroParameterSuperconstructorInvocation' ==
Checks that no constructor calls the zero-parameter superconstructor.
 
'''Quickfixes:'''
;Remove : Remove redundant invocation of zero-parameter superconstructor
 
= Filters =
 
== Filter 'de.unkrig.SuppressionLine' ==
Events (i.e. CheckStyle warnings) are switched off by a 'magic line' ('offCommentFormat') or back on by another 'magic line' ('onCommentFormat').
 
After the 'off' magic line, events do not show if at least one of the following conditions is true:
* The 'checkNameFormat' (if set) is found in the check name (e.g. 'de.unkrig.cscontrib.checks.Alignment')
* The 'messageFormat' (if set) is found in the event message
* The 'moduleIdFormat' (if set) is found in the ID of the module that generated the event
This filter can only work if a 'FileContentsHolder' module exists in the configuration.
 
'''Properties:'''
;offFormat      : Line pattern to trigger filter to begin suppression
;onFormat        : Line pattern to trigger filter to end suppression
;checkNameFormat : Check name pattern to suppress
;messageFormat  : Message pattern to suppress
;moduleIdFormat  : Module ID pattern to suppress


= License =
= License =
Line 78: Line 29:
= Source Code =
= Source Code =


The source code is available through SVN:
The source code of <code>cs-contrib</code> (the CheckStyle extension) is on GITHUB:
 
    https://github.com/aunkrig/cs-contrib/
 
The source code of the Eclipse plugin (<code>.core</code>, <code>.branding</code>, <code>.feature</code>, <code>.updatesite</code>) is also on GITHUB:


     https://svn.code.sf.net/p/loggifier/code
     https://github.com/aunkrig/cs-contrib.branding
    https://github.com/aunkrig/cs-contrib.core
    https://github.com/aunkrig/cs-contrib.core_test
    https://github.com/aunkrig/cs-contrib.feature
    https://github.com/aunkrig/cs-contrib.updatesite
    https://github.com/aunkrig/cs-contrib_dist

Latest revision as of 12:25, 19 January 2022

<meta name="keywords" content="checkstyle, checks, filters, quickfixes"></meta> <meta name="description" content="Custom checks, filters and quickfixes for checkstyle and eclipse-cs"></meta>

Introduction[edit]

This project adds custom checks, filters and quickfixes for CheckStyle and Eclipse-CS.

This project uses the CS doclet (internally) to generate its CheckStyle and eclipse-cs metadata files.

Cs-contrib 1.2.21+ requires the CheckStyle core version 8.21+, because there was an (accidential) breaking change in that version.

Download[edit]

Install the ECLIPSE plug-in from this update site:

    http://cs-contrib.unkrig.de/update

If you're only interested in the checks (and not the ECLIPSE plug-in), you can download the most recent 'de.unkrig.cs-contrib.core_*.jar' file from

    http://cs-contrib.unkrig.de/update/plugins/

and put it on CheckStyle's classpath.

A change log is also available.

Documentation[edit]

The documentation for the cs-contrib checks, filters and quickfixes was generated by the CS doclet

License[edit]

CS-CONTRIB.UNKRIG.DE is published under the "New BSD License".

Source Code[edit]

The source code of cs-contrib (the CheckStyle extension) is on GITHUB:

   https://github.com/aunkrig/cs-contrib/

The source code of the Eclipse plugin (.core, .branding, .feature, .updatesite) is also on GITHUB:

   https://github.com/aunkrig/cs-contrib.branding
   https://github.com/aunkrig/cs-contrib.core
   https://github.com/aunkrig/cs-contrib.core_test
   https://github.com/aunkrig/cs-contrib.feature
   https://github.com/aunkrig/cs-contrib.updatesite
   https://github.com/aunkrig/cs-contrib_dist