Извините, я хотел попробовать это, прежде чем отправлять ответ, но щедрость чуть ли не вверх. ; ^)
This answer утверждает, что существует способ написать собственный модуль JSHint.
Давайте представим, что он работает как рекламируется и была слита обратно.
Great instructions here,, хотя отмечают, что те находятся на сайте «jshint-некст».
Пример код с этой страницы:
// This module errs on any identifier that doesn't starts with 'kitty'.
function myModule(linter) {
linter.on("Identifier", function (ident) {
if (ident.name && ident.name.slice(0, 5) !== "kitty")
linter.report.addError("C001", "More cats please.");
});
}
Вот от первоначального раздела о том, как настроить линт:
var Linter = require("jshint").Linter;
var code = "<your beautiful JavaScript code here>";
// Create a new instance of Linter.
var linter = new Linter(code);
// Now you can teach JSHint about your predefined variables.
// Note that default JavaScript identifiers are already there.
linter.addGlobals({
jQuery: false,
MyPlugin: true
});
// If you have any JSHint extensions, you can attach them
// to the current instance.
linter.addModule(myModule);
// Finally, parse your code.
linter.parse();
Я понимаю, что это довольно общие (вы все еще нужны исследование linter.on
варианты за пределами Identifier
; есть и String
, например), но это выглядит довольно многообещающе.Опять же, вы можете увидеть, как интегрировать, используя инструкции above. И похоже, что это формат used in style.js
.
У меня есть нет еще не пробовал. Просто не успел дома; Извинения.
Есть ли какая-то конкретная причина торазабуро «Просто grep
это ответ не работает? Вам нужно, чтобы это было частью рабочего процесса с качеством кода? Если это так, это «написать свой собственный модуль», похоже, будет способом.
Есть также довольно очевидные способы взломать JSLint, если вы за это заняты, но я не уверен, что Crockford по достоинству оценит это. ; ^)
Нет, jshint не может этого сделать. Просто сделайте grep через источники, которые ищут '@ author'. Если вы хотите, вы можете положить это в git pre-commit hook. Или вы можете взломать JSDoc на ошибку при создании документов, если он встречает '@ author'. –
@torazaburo благодарим вас за полезный комментарий, он действительно может быть законным ответом. – alecxe