「MediaWiki:Gadget-PrettyDiff.js」の版間の差分

No.name2 (トーク | 投稿記録)
版間の差分をdiff-match-patchで表示する
 
編集の要約なし
 
(他の1人の利用者による、間の1版が非表示)
1行目: 1行目:
var DMP_JS_URL = 'http://google-diff-match-patch.googlecode.com/svn/trunk/javascript/diff_match_patch.js';
var DMP_JS_URL = 'https://cdnjs.cloudflare.com/ajax/libs/diff_match_patch/20121119/diff_match_patch.js';


function diff_prettyHtml(a) {
function diff_prettyHtml(a) {
25行目: 25行目:
function prettyDiff() {
function prettyDiff() {
     var $table = $(this);
     var $table = $(this);
     if ($table.hasClass('pretty-diff')) return;
     if ($table.find('> tbody > tr.pretty-diff').length > 0) return;
    $table.addClass('pretty-diff');
     var dmp = new diff_match_patch();
     var dmp = new diff_match_patch();
     var $lineno = $table.find('> tbody > tr:has(.diff-lineno)');
     var $lineno = $table.find('> tbody > tr:has(.diff-lineno)');
37行目: 36行目:
             .map(function() { return $(this).text(); }).get().join('\n');
             .map(function() { return $(this).text(); }).get().join('\n');


         $('<tr/>')
         $('<tr class="pretty-diff"/>')
             .append('<td colspan="4" style="border: 1px solid #e6e6e6;">' +
             .append('<td colspan="4" style="border: 1px solid #e6e6e6;">' +
                     diff_prettyHtml(dmp.diff_main(oldStr, newStr)) +
                     diff_prettyHtml(dmp.diff_main(oldStr, newStr)) +