textlint-rule-no-hankaku-kana
Version:
textlint rule that disallow to use 半角カタカナ.
46 lines (45 loc) • 1.31 kB
JavaScript
// LICENSE : MIT
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.report = exports.default = void 0;
var _textlintRuleHelper = require("textlint-rule-helper");
var HankakuRegExp = /([\uff61-\uff9f]+)/g;
var report = function reporter(context) {
var {
Syntax,
RuleError,
fixer,
report,
locator,
getSource
} = context;
var helper = new _textlintRuleHelper.RuleHelper(context);
return {
[Syntax.Str](node) {
if (!helper.isPlainStrNode(node)) {
return;
}
var nodeText = getSource(node);
for (var match of nodeText.matchAll(HankakuRegExp)) {
var _match$index;
var text = match[0];
var index = (_match$index = match.index) !== null && _match$index !== void 0 ? _match$index : 0;
var range = [index, index + text.length];
var ruleError = new RuleError("Disallow to use \u534A\u89D2\u30AB\u30BF\u30AB\u30CA: \"".concat(text, "\""), {
padding: locator.range(range),
fix: fixer.replaceTextRange(range, text.normalize('NFKC'))
});
report(node, ruleError);
}
}
};
};
exports.report = report;
var _default = {
linter: report,
fixer: report
};
exports.default = _default;
//# sourceMappingURL=textlint-rule-no-hankaku-kana.js.map