Skip to content

All rules

Rules marked with ☑️ are included in the mslint:recommended configuration.

deprecated-initializer-type

Using a type as a value is deprecated

☑️

for-direction

Check that for loop start value is smaller than stop value

☑️

format-if-else

Check that conditional statements are properly formated

☑️

format-real

Enforce consistent format for Real values

☑️

id-denylist

Forbid the use of the specified identifiers

id-length

Enforce minimum and maximum lengths for identifiers

☑️

include-one-time

Check that a file is not included several times

☑️

include-use-common-namespace

Always use the same common namespaces for the standard libraries

☑️

include-use-namespace

Always use a unique namespace when including a library

☑️

init-declaration

Require or forbid initialization in variable declarations

☑️

max-depth

Prevent nested code blocks to exceed a maximum depth

☑️

max-lines

Enforce a maximum number of lines in three contexts: function, label and main

☑️

max-lines-per-file

Enforce a maximum number of lines per file

☑️

max-params

Enforce a maximum number of parameters in function declarations

☑️

max-statements

Enforce a maximum number of statements in three contexts: function, label and main

☑️

naming-convention-command

Enforce naming convention on commands

☑️

naming-convention-constant

Enforce naming convention on constants

☑️

naming-convention-function

Enforce naming convention on functions

☑️

naming-convention-setting

Enforce naming convention on settings

☑️

naming-convention-structure

Enforce naming convention on structures

☑️

naming-convention-variable

Enforce naming convention on variables

☑️

no-continue

Forbid the use of the continue statement

no-dupe-case

Forbid duplicate case in switch statements

☑️

no-dupe-else-if

Forbid duplicate conditions in if-else-if chains

☑️

no-dupe-keys

Forbid duplicate keys in associative arrays

☑️

no-dupe-parameters

Forbid duplicate parameters in function definitions

☑️

no-empty

Forbid empty block statement

☑️

no-integer-overflow

Forbid integer literal overflow

☑️

no-log

Forbid the use of the log() function

no-lonely-if

Forbid `if` statement as the only statement in an `else` block

☑️

no-negated-condition

Forbid negated conditions

☑️

no-self-assign

Forbid assignments where both sides are the same

☑️

no-self-compare

Forbid comparisons where both sides are the same

☑️

no-sleep

Forbid the use of the sleep() function

no-unused-expression

Forbid unused expression

☑️

no-unused-include

An included library must be used in the file

☑️

no-unused-variables

Forbid unused variables

☑️

no-useless-concat

Forbid unnecessary concatenation of Text literals

☑️

no-wait

Forbid the use of the wait() function

require-context-valid-class

The class used in the #RequireContext directive must be a valid script execution context

☑️

trim-array-type

Array type must be on a single line without whitespaces

☑️

type-declaration

Require or forbid type in variable declarations

☑️

use-track-instead-of-map

Use the word track instead of map