「Wikipediaマークアップ修正」の版間の差分

提供: MeryWiki
ナビゲーションに移動 検索に移動
MSY-07 (トーク | 投稿記録)
ページの作成:「Wikipediaの記事を[https://ja.wikipedia.org/wiki/Wikipedia:%E8%A1%A8%E8%A8%98%E3%82%AC%E3%82%A4%E3%83%89 Wikipedia:表記ガイド]に則った表記で修正します。 構文ファイルのWikitextと併用すると便利です。 == 使用方法 == # 表記を修正したい記事をコピーしてMeryにペーストします。 # マクロを実行します。 == 注意事項 == 本マクロを実行後、必ずWikipedia上のプレビュー画面と…」
 
MSY-07 (トーク | 投稿記録)
ソースコード: 改行と注釈のルールを追加
368行目: 368行目:
       replace(/==\n+/g, '==\n').
       replace(/==\n+/g, '==\n').
       replace(/([^=\n])\n+==/g, '$1\n\n==').
       replace(/([^=\n])\n+==/g, '$1\n\n==').
      replace(/\n\n=== 注釈 ===/g, '\n=== 注釈 ===').
      replace(/\n\n===注釈===/g, '\n===注釈===').
      replace(/\n\n=== 出典 ===/g, '\n=== 出典 ===').
      replace(/\n\n===出典===/g, '\n===出典===').
       // テンプレート
       // テンプレート
       replace(/{{a/g, '{{A').
       replace(/{{a/g, '{{A').
451行目: 455行目:
       replace(/{{Reflist\|group=\"(注釈|注)\"}}/g, '{{Notelist2}}').
       replace(/{{Reflist\|group=\"(注釈|注)\"}}/g, '{{Notelist2}}').
       replace(/{{Reflist\|group=\"注\"\|/g, '{{Notelist2|').
       replace(/{{Reflist\|group=\"注\"\|/g, '{{Notelist2|').
      replace(/{{Notelist}}/g, '{{Notelist2}}').
       replace(/{{Notelist\|/g, '{{Notelist2|').
       replace(/{{Notelist\|/g, '{{Notelist2|').
       replace(/list\|colwidth=/g, 'list|').
       replace(/list\|colwidth=/g, 'list|').

2023年6月10日 (土) 04:38時点における版

Wikipediaの記事をWikipedia:表記ガイドに則った表記で修正します。

構文ファイルのWikitextと併用すると便利です。

使用方法

  1. 表記を修正したい記事をコピーしてMeryにペーストします。
  2. マクロを実行します。

注意事項

本マクロを実行後、必ずWikipedia上のプレビュー画面と差分画面で問題がないか確認してから投稿してください。

ソースコード

// -----------------------------------------------------------------------------
// Wikipedia表記修正
//
// Copyright (c) MSY-07. All Rights Reserved.
// www:    https://www.haijin-boys.com/
//
// 出典1: https://ja.wikipedia.org/wiki/Wikipedia:%E8%A1%A8%E8%A8%98%E3%82%AC%E3%82%A4%E3%83%89
// 出典2: https://ja.wikipedia.org/wiki/Help:%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AE%E7%B7%A8%E9%9B%86
// -----------------------------------------------------------------------------

if (document.selection.Text == "")
  document.selection.SelectAll();

var s1 = document.selection.Text;
var s2 = "";

s2 = s1.
      // Unicode制御文字
      replace(/‎/g, ''). //Left-to-right mark(U+200E)
      replace(/‏/g, ''). //Right-to-left mark(U+200F)
      replace(/‍/g, ''). //Zero width joiner(U+200D)
      replace(/‌/g, ''). //Zero width non-joiner(U+200C)
      replace(/‪/g, ''). //Left-to-right embedding(U+202A)
      replace(/‭/g, ''). //Left-to-right override(U+202D)
      replace(/‬/g, ''). //Pop directional formatting(U+202C)
      replace(//g, ''). //National digit shapes(U+206E)
      replace(//g, ''). //Nominal digit shapes(U+206F)
      replace(//g, ''). //Activate symmetric swapping(U+206B)
      replace(//g, ''). //Inhibit symmetric swapping(U+206A)
      replace(//g, ''). //Activate Arabic form shaping(U+206D)
      replace(//g, ''). //Inhibit Arabic form shaping(U+206C)
      replace(/�/g, ''). //Record Separator(U+001E)
      replace(/�/g, ''). //Unit Separator(U+001F)
      // 全角英数・記号
      replace(/ /g, ' ').
      replace(/“|”/g, '"').
      replace(/#/g, '#').
      replace(/$/g, '$').
      replace(/%/g, '%').
      replace(/&/g, '&').
      replace(/‘|’/g, '\'').
      replace(/*/g, '*').
      replace(/+/g, '+').
      replace(/,/g, ',').
      replace(/-/g, '-').
      replace(/./g, '.').
      replace(///g, '/').
      replace(/0/g, '0').
      replace(/1/g, '1').
      replace(/2/g, '2').
      replace(/3/g, '3').
      replace(/4/g, '4').
      replace(/5/g, '5').
      replace(/6/g, '6').
      replace(/7/g, '7').
      replace(/8/g, '8').
      replace(/9/g, '9').
      replace(/;/g, ';').
      replace(/</g, '<').
      replace(/>/g, '>').
      replace(/@/g, '@').
      replace(/A/g, 'A').
      replace(/B/g, 'B').
      replace(/C/g, 'C').
      replace(/D/g, 'D').
      replace(/E/g, 'E').
      replace(/F/g, 'F').
      replace(/G/g, 'G').
      replace(/H/g, 'H').
      replace(/I/g, 'I').
      replace(/J/g, 'J').
      replace(/K/g, 'K').
      replace(/L/g, 'L').
      replace(/M/g, 'M').
      replace(/N/g, 'N').
      replace(/O/g, 'O').
      replace(/P/g, 'P').
      replace(/Q/g, 'Q').
      replace(/R/g, 'R').
      replace(/S/g, 'S').
      replace(/T/g, 'T').
      replace(/U/g, 'U').
      replace(/V/g, 'V').
      replace(/W/g, 'W').
      replace(/X/g, 'X').
      replace(/Y/g, 'Y').
      replace(/Z/g, 'Z').
      replace(/¥/g, '\\').
      replace(/^/g, '^').
      replace(/_/g, '_').
      replace(/`/g, '`').
      replace(/a/g, 'a').
      replace(/b/g, 'b').
      replace(/c/g, 'c').
      replace(/d/g, 'd').
      replace(/e/g, 'e').
      replace(/f/g, 'f').
      replace(/g/g, 'g').
      replace(/h/g, 'h').
      replace(/i/g, 'i').
      replace(/j/g, 'j').
      replace(/k/g, 'k').
      replace(/l/g, 'l').
      replace(/m/g, 'm').
      replace(/n/g, 'n').
      replace(/o/g, 'o').
      replace(/p/g, 'p').
      replace(/q/g, 'q').
      replace(/r/g, 'r').
      replace(/s/g, 's').
      replace(/t/g, 't').
      replace(/u/g, 'u').
      replace(/v/g, 'v').
      replace(/w/g, 'w').
      replace(/x/g, 'x').
      replace(/y/g, 'y').
      replace(/z/g, 'z').
      // 半角カナ
      replace(/。/g, '。').
      replace(/「/g, '「').
      replace(/」/g, '」').
      replace(/、/g, '、').
      replace(/・/g, '・').
      replace(/ガ/g, 'ガ').
      replace(/ギ/g, 'ギ').
      replace(/グ/g, 'グ').
      replace(/ゲ/g, 'ゲ').
      replace(/ゴ/g, 'ゴ').
      replace(/ザ/g, 'ザ').
      replace(/ジ/g, 'ジ').
      replace(/ズ/g, 'ズ').
      replace(/ゼ/g, 'ゼ').
      replace(/ゾ/g, 'ゾ').
      replace(/ダ/g, 'ダ').
      replace(/ヂ/g, 'ヂ').
      replace(/ヅ/g, 'ヅ').
      replace(/デ/g, 'デ').
      replace(/ド/g, 'ド').
      replace(/バ/g, 'バ').
      replace(/ビ/g, 'ビ').
      replace(/ブ/g, 'ブ').
      replace(/ベ/g, 'ベ').
      replace(/ボ/g, 'ボ').
      replace(/パ/g, 'パ').
      replace(/ピ/g, 'ピ').
      replace(/プ/g, 'プ').
      replace(/ペ/g, 'ペ').
      replace(/ポ/g, 'ポ').
      replace(/ヴ/g, 'ヴ').
      replace(/ヲ/g, 'ヲ').
      replace(/ァ/g, 'ァ').
      replace(/ィ/g, 'ィ').
      replace(/ゥ/g, 'ゥ').
      replace(/ェ/g, 'ェ').
      replace(/ォ/g, 'ォ').
      replace(/ャ/g, 'ャ').
      replace(/ュ/g, 'ュ').
      replace(/ョ/g, 'ョ').
      replace(/ッ/g, 'ッ').
      replace(/ー/g, 'ー').
      replace(/ア/g, 'ア').
      replace(/イ/g, 'イ').
      replace(/ウ/g, 'ウ').
      replace(/エ/g, 'エ').
      replace(/オ/g, 'オ').
      replace(/カ/g, 'カ').
      replace(/キ/g, 'キ').
      replace(/ク/g, 'ク').
      replace(/ケ/g, 'ケ').
      replace(/コ/g, 'コ').
      replace(/サ/g, 'サ').
      replace(/シ/g, 'シ').
      replace(/ス/g, 'ス').
      replace(/セ/g, 'セ').
      replace(/ソ/g, 'ソ').
      replace(/タ/g, 'タ').
      replace(/チ/g, 'チ').
      replace(/ツ/g, 'ツ').
      replace(/テ/g, 'テ').
      replace(/ト/g, 'ト').
      replace(/ナ/g, 'ナ').
      replace(/ニ/g, 'ニ').
      replace(/ヌ/g, 'ヌ').
      replace(/ネ/g, 'ネ').
      replace(/ノ/g, 'ノ').
      replace(/ハ/g, 'ハ').
      replace(/ヒ/g, 'ヒ').
      replace(/フ/g, 'フ').
      replace(/ヘ/g, 'ヘ').
      replace(/ホ/g, 'ホ').
      replace(/マ/g, 'マ').
      replace(/ミ/g, 'ミ').
      replace(/ム/g, 'ム').
      replace(/メ/g, 'メ').
      replace(/モ/g, 'モ').
      replace(/ヤ/g, 'ヤ').
      replace(/ユ/g, 'ユ').
      replace(/ヨ/g, 'ヨ').
      replace(/ラ/g, 'ラ').
      replace(/リ/g, 'リ').
      replace(/ル/g, 'ル').
      replace(/レ/g, 'レ').
      replace(/ロ/g, 'ロ').
      replace(/ワ/g, 'ワ').
      replace(/ン/g, 'ン').
      replace(/゙/g, '゛').
      replace(/゚/g, '゜').
      // 文体
      replace(/。だが/g, '。「であるが」').
      replace(/^だが/gm, '「であるが」').
      replace(/だが/g, 'であるが').
      replace(/「であるが」/g, 'だが').
      replace(/だった/g, 'であった').
      // 仮名
      replace(/ヶ月/g, 'か月').
      replace(/迄/g, 'まで').
      replace(/下さい/g, 'ください').
      replace(/或いは/g, 'あるいは').
      replace(/及び/g, 'および').
      replace(/且つ/g, 'かつ').
      replace(/。更に/g, '。さらに').
      replace(/、更に/g, '、さらに').
      replace(/併し|然し/g, 'しかし').
      replace(/然も/g, 'しかも').
      replace(/即ち/g, 'すなわち').
      replace(/反れとも/g, 'それとも').
      replace(/但し/g, 'ただし').
      replace(/因みに/g, 'ちなみに').
      replace(/。所で/g, '。ところで').
      replace(/。尚/g, '。なお').
      replace(/尚、/g, 'なお、').
      replace(/並びに/g, 'ならびに').
      replace(/又は/g, 'または').
      replace(/若しくは/g, 'もしくは').
      replace(/が故に/g, 'がゆえに').
      replace(/それ故/g, 'それゆえ').
      replace(/或る/g, 'ある').
      replace(/所謂/g, 'いわゆる').
      replace(/其の/g, 'その').
      replace(/貴方/g, 'あなた').
      replace(/其れ/g, 'それ').
      replace(/何時/g, 'いつ').
      replace(/何処/g, 'どこ').
      replace(/何故/g, 'なぜ').
      replace(/有り難う/g, 'ありがとう').
      replace(/嗚呼/g, 'ああ').
      replace(/その内、/g, 'そのうち、').
      replace(/。その内/g, '。そのうち').
      replace(/の為に/g, 'のために').
      replace(/る為に/g, 'るために').
      replace(/凡そ/g, 'およそ').
      replace(/流石/g, 'さすが').
      replace(/殆ど/g, 'ほとんど').
      replace(/御菓子/g, 'お菓子').
      replace(/御加護/g, 'ご加護').
      replace(/高目/g, '高め').
      replace(/誤魔化す/g, 'ごまかす').
      replace(/蒲公英/g, 'タンポポ').
      replace(/流行り/g, 'はやり').
      replace(/沢山/g, 'たくさん').
      replace(/面倒/g, 'めんどう').
      replace(/関わらず/g, 'かかわらず').
      replace(/散りばめる/g, 'ちりばめる').
      // 約物
      replace(/。。。|、、、/g, '…').
      replace(/・・・/g, '…').
      replace(/!!/g, '!!').
      replace(/!?/g, '!?').
      replace(/?!/g, '?!').
      replace(/??/g, '??').
      replace(/――/g, '……').
      replace(/~|~/g, '〜').
      replace(/‥/g, '…').
      replace(/〇|◯/g, '○').
      // 機種依存文字
      replace(/Ⅰ/g, 'I').
      replace(/Ⅱ/g, 'II').
      replace(/Ⅲ/g, 'III').
      replace(/Ⅳ/g, 'IV').
      replace(/Ⅴ/g, 'V').
      replace(/Ⅵ/g, 'VI').
      replace(/Ⅶ/g, 'VII').
      replace(/Ⅷ/g, 'VIII').
      replace(/Ⅸ/g, 'IX').
      replace(/Ⅹ/g, 'X').
      replace(/Ⅺ/g, 'XI').
      replace(/Ⅻ/g, 'XII').
      replace(/ⅰ/g, 'i').
      replace(/ⅱ/g, 'ii').
      replace(/ⅲ/g, 'iii').
      replace(/ⅳ/g, 'iv').
      replace(/ⅴ/g, 'v').
      replace(/ⅵ/g, 'vi').
      replace(/ⅶ/g, 'vii').
      replace(/ⅷ/g, 'viii').
      replace(/ⅸ/g, 'ix').
      replace(/ⅹ/g, 'x').
      replace(/ⅺ/g, 'xi').
      replace(/ⅻ/g, 'xii').
      replace(/①/g, '(1)').
      replace(/②/g, '(2)').
      replace(/③/g, '(3)').
      replace(/④/g, '(4)').
      replace(/⑤/g, '(5)').
      replace(/⑥/g, '(6)').
      replace(/⑦/g, '(7)').
      replace(/⑧/g, '(8)').
      replace(/⑨/g, '(9)').
      replace(/⑩/g, '(10)').
      replace(/⑪/g, '(11)').
      replace(/⑫/g, '(12)').
      replace(/⑬/g, '(13)').
      replace(/⑭/g, '(14)').
      replace(/⑮/g, '(15)').
      replace(/⑯/g, '(16)').
      replace(/⑰/g, '(17)').
      replace(/⑱/g, '(18)').
      replace(/⑲/g, '(19)').
      replace(/⑳/g, '(20)').
      replace(/㉑/g, '(21)').
      replace(/㉒/g, '(22)').
      replace(/㉓/g, '(23)').
      replace(/㉔/g, '(24)').
      replace(/㉕/g, '(25)').
      replace(/㉖/g, '(26)').
      replace(/㉗/g, '(27)').
      replace(/㉘/g, '(28)').
      replace(/㉙/g, '(29)').
      replace(/㉚/g, '(30)').
      replace(/㉛/g, '(31)').
      replace(/㉜/g, '(32)').
      replace(/㉝/g, '(33)').
      replace(/㉞/g, '(34)').
      replace(/㉟/g, '(35)').
      replace(/㊱/g, '(36)').
      replace(/㊲/g, '(37)').
      replace(/㊳/g, '(38)').
      replace(/㊴/g, '(39)').
      replace(/㊵/g, '(40)').
      replace(/㊶/g, '(41)').
      replace(/㊷/g, '(42)').
      replace(/㊸/g, '(43)').
      replace(/㊹/g, '(44)').
      replace(/㊺/g, '(45)').
      replace(/㊻/g, '(46)').
      replace(/㊼/g, '(47)').
      replace(/㊽/g, '(48)').
      replace(/㊾/g, '(49)').
      replace(/㊿/g, '(50)').
      // 空白
      replace(/ {2,}/g, ' ').
      replace(/([^=|-]) $/gm, '$1').
      // 改行
      replace(/\n{3,}/g, '\n\n').
      replace(/==\n+/g, '==\n').
      replace(/([^=\n])\n+==/g, '$1\n\n==').
      replace(/\n\n=== 注釈 ===/g, '\n=== 注釈 ===').
      replace(/\n\n===注釈===/g, '\n===注釈===').
      replace(/\n\n=== 出典 ===/g, '\n=== 出典 ===').
      replace(/\n\n===出典===/g, '\n===出典===').
      // テンプレート
      replace(/{{a/g, '{{A').
      replace(/{{b/g, '{{B').
      replace(/{{c/g, '{{C').
      replace(/{{d/g, '{{D').
      replace(/{{e/g, '{{E').
      replace(/{{f/g, '{{F').
      replace(/{{g/g, '{{G').
      replace(/{{h/g, '{{H').
      replace(/{{i/g, '{{I').
      replace(/{{j/g, '{{J').
      replace(/{{k/g, '{{K').
      replace(/{{l/g, '{{L').
      replace(/{{m/g, '{{M').
      replace(/{{n/g, '{{N').
      replace(/{{o/g, '{{O').
      replace(/{{p/g, '{{P').
      replace(/{{q/g, '{{Q').
      replace(/{{r/g, '{{R').
      replace(/{{s/g, '{{S').
      replace(/{{t/g, '{{T').
      replace(/{{u/g, '{{U').
      replace(/{{v/g, '{{V').
      replace(/{{w/g, '{{W').
      replace(/{{x/g, '{{X').
      replace(/{{y/g, '{{Y').
      replace(/{{z/g, '{{Z').
      replace(/{{Tl\|a/g, '{{Tl|A').
      replace(/{{Tl\|b/g, '{{Tl|B').
      replace(/{{Tl\|c/g, '{{Tl|C').
      replace(/{{Tl\|d/g, '{{Tl|D').
      replace(/{{Tl\|e/g, '{{Tl|E').
      replace(/{{Tl\|f/g, '{{Tl|F').
      replace(/{{Tl\|g/g, '{{Tl|G').
      replace(/{{Tl\|h/g, '{{Tl|H').
      replace(/{{Tl\|i/g, '{{Tl|I').
      replace(/{{Tl\|j/g, '{{Tl|J').
      replace(/{{Tl\|k/g, '{{Tl|K').
      replace(/{{Tl\|l/g, '{{Tl|L').
      replace(/{{Tl\|m/g, '{{Tl|M').
      replace(/{{Tl\|n/g, '{{Tl|N').
      replace(/{{Tl\|o/g, '{{Tl|O').
      replace(/{{Tl\|p/g, '{{Tl|P').
      replace(/{{Tl\|q/g, '{{Tl|Q').
      replace(/{{Tl\|r/g, '{{Tl|R').
      replace(/{{Tl\|s/g, '{{Tl|S').
      replace(/{{Tl\|t/g, '{{Tl|T').
      replace(/{{Tl\|u/g, '{{Tl|U').
      replace(/{{Tl\|v/g, '{{Tl|V').
      replace(/{{Tl\|w/g, '{{Tl|W').
      replace(/{{Tl\|x/g, '{{Tl|X').
      replace(/{{Tl\|y/g, '{{Tl|Y').
      replace(/{{Tl\|z/g, '{{Tl|Z').
      replace(/{{デフォルトソート:/g, '{{DEFAULTSORT:').
      replace(/ISBN ([0-9\-]{9,16}[0-9X])/g, '{{ISBN2\|$1}}').
      // 書式設定
      replace(/\*\[/g, '* [').
      replace(/\*{/g, '* {').
      replace(/\*「/g, '* 「').
      replace(/\*『/g, '* 『').
      replace(/#\[/g, '# [').
      replace(/#{/g, '# {').
      replace(/;\[/g, '; [').
      replace(/;{/g, '; {').
      replace(/:{/g, ': {').
      // タグ
      replace(/<br>|<br >|<br\/>/g, '<br />').
      // ウィキリンク
      replace(/\[\[カテゴリ:|\[\[category:/g, '[[Category:').
      // 注釈・出典
      replace(/{{Efn\|/g, '{{Efn2|').
      replace(/group=\"注釈\"/g, 'group="注"').
      replace(/group=(注釈|注)/g, 'group="注"').
      replace(/<references \/>/g, '{{Reflist}}').
      replace(/<references\/>/g, '{{Reflist}}').
      replace(/<references group=\"(注釈|注)\" \/>/g, '{{Notelist2}}').
      replace(/{{Reflist\|\|group="注"}}/g, '{{Reflist\|group="注"\|}}').
      replace(/{{Reflist\|([0-9])\|group="注"}}/g, '{{Reflist\|group="注"\|$1}}').
      replace(/{{Reflist\|colwidth=/g, '{{Reflist\|').
      replace(/{{Reflist\|em\|group="注"}}/g, '{{Reflist\|group="注"\|em}}').
      replace(/{{Reflist\|([0-9]|[1-9][0-9])em\|group="注"}}/g, '{{Reflist\|group="注"\|$1em}}').
      replace(/{{Reflist\|group=\"(注釈|注)\"}}/g, '{{Notelist2}}').
      replace(/{{Reflist\|group=\"注\"\|/g, '{{Notelist2|').
      replace(/{{Notelist}}/g, '{{Notelist2}}').
      replace(/{{Notelist\|/g, '{{Notelist2|').
      replace(/list\|colwidth=/g, 'list|').
      replace(/list2\|colwidth=/g, 'list2|').
      replace(/{{Reflist\|}}/g, '{{Reflist}}').
      replace(/{{Reflist\|[0-1]}}/g, '{{Reflist}}').
      replace(/{{Reflist\|2}}/g, '{{Reflist|30em}}').
      replace(/{{Reflist\|[3-9]}}/g, '{{Reflist|20em}}').
      replace(/{{Notelist2\|}}/g, '{{Notelist2}}').
      replace(/{{Notelist2\|[0-1]}}/g, '{{Notelist2}}').
      replace(/{{Notelist2\|2}}/g, '{{Notelist2|30em}}').
      replace(/{{Notelist2\|[3-9]}}/g, '{{Notelist2|20em}}').
      replace(/{{Reflist\|em}}/g, '{{Reflist}}').
      replace(/{{Reflist\|([0-9]|1?[0-9]|2?[0-4])em}}/g, '{{Reflist|20em}}').
      replace(/{{Reflist\|(2?[5-9]|[3-9][0-9])em}}/g, '{{Reflist|30em}}').
      replace(/{{Notelist2\|em}}/g, '{{Notelist2}}').
      replace(/{{Notelist2\|([0-9]|1?[0-9]|2?[0-4])em}}/g, '{{Notelist2|20em}}').
      replace(/{{Notelist2\|(2?[5-9]|[3-9][0-9])em}}/g, '{{Notelist2|30em}}');

document.selection.Text = s2;
スポンサーリンク