Skip to content

Configuration Comment

Disable Rules

Rules can be disabled within a file using specially formatted comments.

Disable all rules in a part of a file

maniascript
main() {
  // @mslint-disable
  sleep(1);
  // @mslint-enable

  /*
  @mslint-disable
  */
  sleep(1);
  /*
  @mslint-enable
  */
}

Disable a specific rule in a part of a file

maniascript
main() {
  // @mslint-disable no-sleep
  sleep(1);
  // @mslint-enable no-sleep

  /*
  @mslint-disable no-sleep
  */
  sleep(1);
  /*
  @mslint-enable no-sleep
  */
}

Disable multiple rules in a part of a file

maniascript
main() {
  // @mslint-disable no-sleep, no-wait, no-log
  sleep(1); wait(True); log("");
  // @mslint-enable no-sleep, no-wait, no-log

  /*
  @mslint-disable no-sleep, no-wait, no-log
  */
  sleep(1); wait(True); log("");
  /*
  @mslint-enable no-sleep, no-wait, no-log
  */
}

It is possible to mix and match @mslint-disable and @mslint-enable without using the same rules:

maniascript
main() {
  // @mslint-disable no-sleep, no-wait, no-log

  /* no-sleep, no-wait, no-log are disabled here */

  // @mslint-enable no-sleep

  /* no-wait, no-log are disabled - no-sleep is enabled here */

  // @mslint-enable

  /* no-sleep, no-wait, no-log are enabled here */
}

Disable all rules on the current or next line

maniascript
main() {
  sleep(1); // @mslint-disable-line
  sleep(1); /* @mslint-disable-line */

  // @mslint-disable-next-line
  sleep(1);
  /*
  @mslint-disable-next-line
  */
  sleep(1);
}

Disable a specific rule on the current or next line

maniascript
main() {
  sleep(1); // @mslint-disable-line no-sleep
  sleep(1); /* @mslint-disable-line no-sleep */

  // @mslint-disable-next-line no-sleep
  sleep(1);
  /*
  @mslint-disable-next-line no-sleep
  */
  sleep(1);
}

Disable multiple rules on the current or next line

maniascript
main() {
  sleep(1); wait(True); log(""); // @mslint-disable-line no-sleep, no-wait, no-log
  sleep(1); wait(True); log(""); /* @mslint-disable-line no-sleep, no-wait, no-log */

  // @mslint-disable-next-line no-sleep, no-wait, no-log
  sleep(1); wait(True); log("");
  /*
  @mslint-disable-next-line no-sleep, no-wait, no-log
  */
  sleep(1); wait(True); log("");
}

Description

It is recommended that you add a description to the comment explaining why the rule was disabled. The description comes after the configuration and must be separated by two or more consecutive - characters.

maniascript
main() {
  // @mslint-disable no-sleep -- Describe why the rule was disabled here
  sleep(1);
  // @mslint-enable no-sleep

  sleep(1); // @mslint-disable-line no-sleep -- Describe why the rule was disabled here

  /*
  @mslint-disable-next-line no-sleep, no-wait, no-log -- Describe why the rule was disabled here
  */
  sleep(1); wait(True); log("");
}