ملاحظة: بعد الحفظ، قد يلزمك إفراغ الكاش لرؤية التغييرات (إفراغ الكاش الآن).

window.RWikiAutoTools = {};
window.RWikiAutoTools.CorrectComma = {
  name: 'مصحح الفاصلة: تعريب الفاصلة وتنسيق الفاصلة',
  activated: false,
  const: {
    replacements: [
      { pattern: /([\p{Script=Arabic}]|\]|\})(\s+?),(\s+?)([\p{Script=Arabic}]|\[)/gu, replace: '$1، $4' },
      { pattern: /([\p{Script=Arabic}]|\]|\})،([\p{Script=Arabic}]|\[)/gu, replace: '$1، $2' },
      { pattern: /([\p{Script=Arabic}]|\]|\}) ، ([\p{Script=Arabic}]|\[)/gu, replace: '$1، $2' },
      { pattern: /([\p{Script=Arabic}]|\]|\}) ،([\p{Script=Arabic}]|\[)/gu, replace: '$1، $2' }
    ]
  },
  script: function(title, text) {
    let replacements = this.const.replacements;
    replacements.forEach(function(replacement) {
      text = text.replace(replacement.pattern, replacement.replace);
    });
    return text;
  },
};

window.RWikiAutoTools.CorrectConjunction = {
  name: 'إزالة المسافة بين حرف العطف والمعطوف',
  activated: false,
  const: {
    pattern: /\sو\s(\p{Script=Arabic}+)/gu,
    replace: ' و$1'
  },
  script: function(title, text) {
    let pattern = this.const.pattern;
    let replace = this.const.replace;
    return text.replace(pattern, replace);
  }
};

window.RWikiAutoTools.RemoveSpaceBeforeDot = {
  name: 'إزالة المسافة بين أخر كلمة في الجملة والنقطة',
  activated: false,
  const: {
    pattern: /(\p{Script=Arabic}+)\s\./gu,
    replace: '$1.'
  },
  script: function(title, text) {
    let pattern = this.const.pattern;
    let replace = this.const.replace;
    return text.replace(pattern, replace);
  }
};