「
Wikipediaマークアップ修正
」を編集中 (節単位)
ナビゲーションに移動
検索に移動
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、さまざまなメリットもあります。
スパム攻撃防止用のチェックです。 決して、ここには、値の入力は
しない
でください!
== ソースコード == <syntaxhighlight lang="javascript" copy> #title = "Wikipediaマークアップ修正" #tooltip = "Wikipediaのマークアップや表記を修正します。" // -------------------------------------------------- // 置換処理の定義 // -------------------------------------------------- // [0] メニュー表示名 // [1] 実行する置換関数 // -------------------------------------------------- var f = [ ["タブ文字", tab_character], ["全角空白", fullwidth_space], ["全角記号", fullwidth_symbols], ["全角英数", fullwidth_alphanumeric_characters], ["半角カナ", halfwidth_kana], ["約物", punctuation_marks], ["ローマ数字", roman_numerals], ["丸数字", circled_numbers], ["空白", space], ["改行・空行", line_breaks_and_blank_lines], ["箇条書き", bullet_points], ["1行改行", single_line_break], ["表・Infobox", tables_and_infoboxes], ["タグ", tag], ["ウィキリンク", wikilinks], ["リダイレクト", redirect], ["マジックリンク", magic_links], ["テンプレート", templates], ["注釈", notes], ["出典", references], ["脚注", footnotes] ]; // ポップアップメニューを作成 var menu = CreatePopupMenu(); // 「すべての置換処理を順番に実行」メニュー menu.Add("すべて実行", 1, 0); menu.Add("", 0, meMenuSeparator); // 個別の置換処理メニュー for (var i = 0; i < f.length; i++) { menu.Add(f[i][0], i + 2, 0); } // ポップアップメニューを表示 var n = menu.Track(mePosMouse); // メニューが選択されなかった場合は終了 if (n == 0) { Quit(); } var sel = document.selection; // 未選択の場合は全文を対象にする if (sel.Text == "") { sel.SelectAll(); } // 対象テキストを取得 var s = sel.Text; // すべての置換処理を実行 if (n == 1) { for (var i = 0; i < f.length; i++) { s = f[i][1](s); } } // 選択された置換処理のみ実行 else { s = f[n - 2][1](s); } // 置換結果を反映 sel.Text = s; // ------------------------- // 置換処理用関数 // ------------------------- // タブ文字 function tab_character(s) { return s .replace(/\t/g, ' '); //タブ文字(U+0009)を半角空白(U+0020)に変更 } // 全角空白 function fullwidth_space(s) { return s .replace(/ /g, ' '); //全角空白(U+3000)を半角空白(U+0020)に変更 } // 全角記号 function fullwidth_symbols(s) { return s .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, '`'); } // 全角英数 function fullwidth_alphanumeric_characters(s) { return s .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(/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(/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'); } // 半角カナ function halfwidth_kana(s) { return s .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, '゜'); } // 約物 function punctuation_marks(s) { return s .replace(/。。。|、、、/g, '…') .replace(/・・・/g, '…') .replace(/!!/g, '!!') .replace(/!?/g, '!?') .replace(/?!/g, '?!') .replace(/??/g, '??') .replace(/([^\/])(~|~)/g, '$1〜') //全角チルダ(U+FF5E)やチルダ(U+007E)を波ダッシュ(U+301C)に変更 .replace(/‥/g, '…') .replace(/〇|◯/g, '○'); //漢数字のゼロ「〇」や大きな丸「◯」を丸「○」に変更 } // ローマ数字 function roman_numerals(s) { return s .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'); } // 丸数字 function circled_numbers(s) { return s .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)'); } // 空白 function space(s) { return s .replace(/ {2,}/g, ' ') //連続する空白を除去 .replace(/([^=\-\|]) $/gm, '$1') //行末の空白を除去 .replace(/ 。/g, '。') //句点の前の空白を除去 .replace(/([^\-]) 、/g, '$1、') //読点の前の空白を除去 .replace(/。 ([^#\-\|].*?)。/g, '。$1。') //句点の後の空白を除去(1周目) .replace(/。 ([^#\-\|].*?)。/g, '。$1。') //句点の後の空白を除去(2周目) .replace(/、 ([^\-].*?)、/g, '、$1、') //読点の後の空白を除去(1周目) .replace(/、 ([^\-].*?)、/g, '、$1、') //読点の後の空白を除去(2周目) .replace(/、 ([^\-].*?)。/g, '、$1。') //読点の後の空白を除去 .replace(/(==+)( ?)(.*?)( ?)(==+)/g, '$1 $3 $5'); //見出しに空白を追加 } // 改行・空行 function line_breaks_and_blank_lines(s) { return s .replace(/\n{3,}/g, '\n\n') //2行以上の空行をトルツメ .replace(/==\n\n/g, '==\n') //見出しの後の空行をトルツメ .replace(/([^=\n])\n==/g, '$1\n\n==') //見出しの前に空行を挿入 .replace(/\n\n(===+) 注釈 (===+)/g, '\n$1 注釈 $2') //レベル3以降の注釈見出しの前の空行をトルツメ .replace(/\n\n(===+) 出典 (===+)/g, '\n$1 出典 $2') //レベル3以降の出典見出しの前の空行をトルツメ .replace(/\[\[File:/g, '[[ファイル:') //[[ファイル:に変更 .replace(/([^\n =\|>])\[\[ファイル:/g, '$1\n[[ファイル:'); //[[ファイル:の前に改行を追加 } // 箇条書き function bullet_points(s) { return s .replace(/^(\*+|#+|:+\*|:+#)([^ \*#:;].*?)/gm, '$1 $2') //箇条書きのあとに空白を追加 .replace(/^(;|:+;)([^ ].*?)/gm, '$1 $2') //定義の箇条書き(;)のあとに空白を追加 .replace(/^(:+)([^ \*#:;<\n].*?)/gm, '$1 $2') //定義の箇条書き(:)のあとに空白を追加 .replace(/^([^=\*#:;].*?。)\n(\*|#|;|:)/gm, '$1\n\n$2') //文章と箇条書きの間に空行を挿入 .replace(/^(\*|#|;|:)(.*?)\n([^\n=\*#:;].*?。)/gm, '$1$2\n\n$3') //箇条書きと文章の間に空行を挿入 .replace(/^(\*)(.*?)\n\n(\*|#|:)/gm, '$1$2\n$3') //箇条書きと箇条書きの間の空行をトルツメ(1周目) .replace(/^(\*)(.*?)\n\n(\*|#|:)/gm, '$1$2\n$3') //箇条書きと箇条書きの間の空行をトルツメ(2周目) .replace(/^(#|;|:)(.*?)\n\n(\*|#|;|:)/gm, '$1$2\n$3') //箇条書きと箇条書きの間の空行をトルツメ(1周目) .replace(/^(#|;|:)(.*?)\n\n(\*|#|;|:)/gm, '$1$2\n$3'); //箇条書きと箇条書きの間の空行をトルツメ(2周目) } // 1行改行 function single_line_break(s) { return s .replace(/。\n([^\n\*#;:<\|].*?)。/g, '。$1。') //句点の後の1行改行をトルツメ(1周目) .replace(/。\n([^\n\*#;:<\|].*?)。/g, '。$1。') //句点の後の1行改行をトルツメ(2周目) .replace(/、\n([^\n\*#;:].*?)/g, '、$1') //読点の後の1行改行をトルツメ(1周目) .replace(/、\n([^\n\*#;:].*?)/g, '、$1') //読点の後の1行改行をトルツメ(2周目) .replace(/<br \/>\n([^\n\*#;:].*?)/g, '<br />$1') //改行タグの後の1行改行をトルツメ(1周目) .replace(/<br \/>\n([^\n\*#;:].*?)/g, '<br />$1'); //改行タグの後の1行改行をトルツメ(2周目) } // 表・Infobox function tables_and_infoboxes(s) { return s .replace(/^\|(.*?)\n\n\|/gm, '|$1\n|') //行頭のバーティカルバーと次の行頭のバーティカルバーの間の空行をトルツメ(1周目) .replace(/^\|(.*?)\n\n\|/gm, '|$1\n|') //行頭のバーティカルバーと次の行頭のバーティカルバーの間の空行をトルツメ(2周目) .replace(/^!(.*?)\n\n!/gm, '!$1\n!') //行頭の感嘆符と次の行頭の感嘆符の間の空行をトルツメ(1周目) .replace(/^!(.*?)\n\n!/gm, '!$1\n!'); //行頭の感嘆符と次の行頭の感嘆符の間の空行をトルツメ(2周目) } // タグ function tag(s) { return s .replace(/<br( ?)>|<br\/>/g, '<br />'); } // ウィキリンク function wikilinks(s) { return s .replace(/\[\[(カテゴリ|category):/g, '[[Category:'); } // リダイレクト function redirect(s) { return s .replace(/# REDIRECT/g, '#REDIRECT') .replace(/# redirect/g, '#redirect') .replace(/# 転送/g, '#転送') .replace(/#redirect|#転送/g, '#REDIRECT') .replace(/#REDIRECT( ?)\[\[/g, '#REDIRECT [['); } // マジックリンク function magic_links(s) { return s .replace(/ISBN ([\d\-X]{10,17})/g, '{{ISBN|$1}}') .replace(/PMID ([\d]{1,8})/g, '{{PMID|$1}}') .replace(/RFC ([\d]{1,4})/g, '{{IETF RFC|$1}}'); } // テンプレート function templates(s) { return s .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:'); } // 注釈 function notes(s) { return s .replace(/group( ?)=( ?)("?)(注釈|注|†|※|\*)("?)/g, 'group="注"') //group="注"に変更 .replace(/{{#tag:ref/g, '{{Refnest') //{{Refnestに変更 .replace(/([^\n]){{Refnest\|/g, '$1\n{{Refnest|') //{{Refnest|の前に改行を追加 .replace(/{{Refnest\|(.*?)\|group="注"\|name( ?)=( ?)([^"].*?)( ?)}}/g, '{{Refnest|$1|group="注"|name="$4"}}') //name引数に二重引用符を追加 .replace(/{{Refnest\|(.*?)\|name( ?)=( ?)([^"].*?)( ?)\|group="注"}}/g, '{{Refnest|$1|name="$4"|group="注"}}') //name引数に二重引用符を追加 .replace(/{{Refnest\|group="注"\|(.*?)\|name( ?)=( ?)([^"].*?)( ?)}}/g, '{{Refnest|group="注"|$1|name="$4"}}') //name引数に二重引用符を追加 .replace(/{{Refnest\|name( ?)=( ?)([^"].*?)( ?)\|(.*?)\|group="注"}}/g, '{{Refnest|name="$3"|$5|group="注"}}') //name引数に二重引用符を追加 .replace(/{{Refnest\|group="注"( ?)\|name( ?)=( ?)([^"].*?)( ?)\|/g, '{{Refnest|group="注"|name="$4"|') //name引数に二重引用符を追加 .replace(/{{Refnest\|name( ?)=( ?)([^"].*?)( ?)\|group="注"( ?)\|/g, '{{Refnest|name="$3"|group="注"|') //name引数に二重引用符を追加 .replace(/{{Refnest\|(.*?)\|group="注"\|name=(.*?)}}/g, '{{Efn2|name=$2|$1}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/{{Refnest\|(.*?)\|name=(.*?)\|group="注"}}/g, '{{Efn2|name=$2|$1}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/{{Refnest\|group="注"\|(.*?)\|name=(.*?)}}/g, '{{Efn2|name=$2|$1}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/{{Refnest\|name=(.*?)\|(.*?)\|group="注"}}/g, '{{Efn2|name=$1|$2}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/{{Refnest\|group="注"\|name=(.*?)\|/g, '{{Efn2|name=$1|') //{{Efn2|name="○○"|に変更 .replace(/{{Refnest\|name=(.*?)\|group="注"\|/g, '{{Efn2|name=$1|') //{{Efn2|name="○○"|に変更 .replace(/{{Refnest\|(.*?)\|group="注"}}/g, '{{Efn2|$1}}') //{{Efn2|○○}}に変更 .replace(/{{Refnest\|group="注"( ?)\|/g, '{{Efn2|') //{{Efn2|に変更 .replace(/{{Refnest/g, '{{Efn2') //{{Efn2に変更 .replace(/{{Efn\|/g, '{{Efn2|') //{{Efn2|に変更 .replace(/([^\n]){{Efn2\|/g, '$1\n{{Efn2|') //{{Efn2|の前に改行を追加 .replace(/{{Efn2\|(.*?)\|name( ?)=( ?)([^"].*?)( ?)}}/g, '{{Efn2|$1|name="$4"}}') //name引数に二重引用符を追加 .replace(/{{Efn2\|name( ?)=( ?)([^"].*?)( ?)(\||})/g, '{{Efn2|name="$3"$5') //name引数に二重引用符を追加 .replace(/{{Efn2\|(.*?)\|name=(.*?)}}/g, '{{Efn2|name=$2|$1}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/([^\n])<ref([>| ])/g, '$1\n<ref$2') //<ref>の前に改行を追加 .replace(/<ref group="注" name( ?)=( ?)([^"].*?)( ?)>(.*?)<\/ref>/g, '<ref group="注" name="$3">$5</ref>') //name引数に二重引用符を追加 .replace(/<ref name( ?)=( ?)([^"].*?) group="注">(.*?)<\/ref>/g, '<ref name="$3" group="注">$4</ref>') //name引数に二重引用符を追加 .replace(/<ref group="注" name( ?)=( ?)([^"].*?)( ?)\/>/g, '<ref group="注" name="$3" />') //name引数に二重引用符を追加 .replace(/<ref name( ?)=( ?)([^"].*?) group="注"( ?)\/>/g, '<ref name="$3" group="注" />') //name引数に二重引用符を追加 .replace(/<ref group="注"( ?)name=(".*?")>(.*?)<\/ref>/g, '{{Efn2|name=$2|$3}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/<ref name=(".*?")( ?)group="注">(.*?)<\/ref>/g, '{{Efn2|name=$1|$3}}') //{{Efn2|name="○○"|○○}}に変更 .replace(/<ref group="注"( ?)name( ?)=( ?)(".*?")( ?)\/>/g, '{{Efn2|name=$4}}') //{{Efn2|name="○○"}}に変更 .replace(/<ref name( ?)=( ?)(".*?")( ?)group="注"( ?)\/>/g, '{{Efn2|name=$3}}') //{{Efn2|name="○○"}}に変更 .replace(/<ref group="注"( ?)>(.*?)<\/ref>/g, '{{Efn2|$2}}') //{{Efn2|○○}}に変更 .replace(/([^\n])\n<ref([>| ])/g, '$1<ref$2') //<ref>の前の改行を除去 .replace(/([^\n])\n{{Efn2\|/g, '$1{{Efn2|'); //{{Efn2|の前の改行を除去 } // 出典 function references(s) { return s .replace(/([^\n])<ref([>| ])/g, '$1\n<ref$2') //<ref>の前に改行を追加 .replace(/<ref name( ?)=( ?)([^"].*?)( ?)>(.*?)<\/ref>/g, '<ref name="$3">$5</ref>') //name引数に二重引用符を追加 .replace(/<ref name( ?)=( ?)([^"].*?)( ?)\/>/g, '<ref name="$3" />') //name引数に二重引用符を追加 .replace(/<ref name( ?)=( ?)"(.*?)"( ?)\/>/g, '{{R|$3}}') //{{R|○○}}に変更 .replace(/([^\n])\n<ref([>| ])/g, '$1<ref$2') //<ref>の前の改行を除去 .replace(/([^\n])\n{{R\|/g, '$1{{R|'); //{{R|の前の改行を除去 } // 脚注 function footnotes(s) { return s .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}}'); } </syntaxhighlight>
編集内容の要約:
MeryWikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MeryWiki:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の数式を計算してその答えを欄に入力してください (
ヘルプ
):
いちたすには =
キャンセル
編集ヘルプ
(新しいウィンドウで開きます)
スポンサーリンク
ナビゲーション メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
スポンサーリンク
スポンサーリンク
案内
メインページ
ヘルプ
よくある質問
マクロリファレンス
マクロライブラリ
プラグインライブラリ
構文ファイル
テーマ
寄付・開発支援
練習用ページ
開発室
開発者のブログ
ツール
スポンサーリンク