more github like style

This commit is contained in:
nazoking
2015-03-08 21:16:10 +09:00
parent 41fc81fab6
commit d9450df7e9
2 changed files with 29 additions and 17 deletions

View File

@@ -138,24 +138,24 @@ $.extend(JsDiffRender.prototype,{
var o = oplines[i]; var o = oplines[i];
switch(o.change){ switch(o.change){
case 'skip': case 'skip':
$('<tr>').html('<th></th><td colspan="3" class="skip">...</td>').appendTo(tbody); $('<tr>').html('<th class="skip"></th><td colspan="3" class="skip">...</td>').appendTo(tbody);
break; break;
case 'delete': case 'delete':
case 'insert': case 'insert':
case 'equal': case 'equal':
$('<tr>').append( $('<tr>').append(
lineNum('old',o.base), lineNum('old',o.base, o.change),
$('<td class="body">').html(o.base ? baseTextDom(o.base): "").addClass(o.change), $('<td class="body">').html(o.base ? baseTextDom(o.base): "").addClass(o.change),
lineNum('old',o.head), lineNum('old',o.head, o.change),
$('<td class="body">').html(o.head ? headTextDom(o.head): "").addClass(o.change) $('<td class="body">').html(o.head ? headTextDom(o.head): "").addClass(o.change)
).appendTo(tbody); ).appendTo(tbody);
break; break;
case 'replace': case 'replace':
var ld = lineDiff(baseTextDom(o.base), headTextDom(o.head)); var ld = lineDiff(baseTextDom(o.base), headTextDom(o.head));
$('<tr>').append( $('<tr>').append(
lineNum('old',o.base), lineNum('old',o.base, 'delete'),
$('<td class="body">').append(ld.base).addClass('delete'), $('<td class="body">').append(ld.base).addClass('delete'),
lineNum('old',o.head), lineNum('old',o.head, 'insert'),
$('<td class="body">').append(ld.head).addClass('insert') $('<td class="body">').append(ld.head).addClass('insert')
).appendTo(tbody); ).appendTo(tbody);
break; break;
@@ -170,14 +170,14 @@ $.extend(JsDiffRender.prototype,{
var o = oplines[i]; var o = oplines[i];
switch(o.change){ switch(o.change){
case 'skip': case 'skip':
tbody.append($('<tr>').html('<th colspan="2"></th><td class="skip"></td>')); tbody.append($('<tr>').html('<th colspan="2" class="skip"></th><td class="skip"></td>'));
break; break;
case 'delete': case 'delete':
case 'insert': case 'insert':
case 'equal': case 'equal':
tbody.append($('<tr>').append( tbody.append($('<tr>').append(
lineNum('old',o.base), lineNum('old',o.base, o.change),
lineNum('new',o.head), lineNum('new',o.head, o.change),
$('<td class="body">').addClass(o.change).html(o.head ? headTextDom(o.head) : baseTextDom(o.base)))); $('<td class="body">').addClass(o.change).html(o.head ? headTextDom(o.head) : baseTextDom(o.base))));
break; break;
case 'replace': case 'replace':
@@ -185,12 +185,12 @@ $.extend(JsDiffRender.prototype,{
while(oplines[i] && oplines[i].change == 'replace'){ while(oplines[i] && oplines[i].change == 'replace'){
if(oplines[i].base && oplines[i].head){ if(oplines[i].base && oplines[i].head){
var ld = lineDiff(baseTextDom(oplines[i].base), headTextDom(oplines[i].head)); var ld = lineDiff(baseTextDom(oplines[i].base), headTextDom(oplines[i].head));
tbody.append($('<tr>').append(lineNum('old',oplines[i].base),'<th>',$('<td class="body delete">').append(ld.base))); tbody.append($('<tr>').append(lineNum('old', oplines[i].base, 'delete'),'<th class="delete">',$('<td class="body delete">').append(ld.base)));
deletes.push($('<tr>').append('<th>',lineNum('new',oplines[i].head),$('<td class="body insert">').append(ld.head))); deletes.push($('<tr>').append('<th class="insert">',lineNum('new',oplines[i].head, 'insert'),$('<td class="body insert">').append(ld.head)));
}else if(oplines[i].base){ }else if(oplines[i].base){
tbody.append($('<tr>').append(lineNum('old',oplines[i].base),'<th>',$('<td class="body delete">').html(baseTextDom(oplines[i].base)))); tbody.append($('<tr>').append(lineNum('old', oplines[i].base, 'delete'),'<th class="delete">',$('<td class="body delete">').html(baseTextDom(oplines[i].base))));
}else if(oplines[i].head){ }else if(oplines[i].head){
deletes.push($('<tr>').append('<th>',lineNum('new',oplines[i].head),$('<td class="body insert">').html(headTextDom(oplines[i].head)))); deletes.push($('<tr>').append('<th class="insert">',lineNum('new',oplines[i].head, 'insert'),$('<td class="body insert">').html(headTextDom(oplines[i].head))));
} }
i++; i++;
} }
@@ -202,8 +202,8 @@ $.extend(JsDiffRender.prototype,{
return table; return table;
} }
}; };
function lineNum(type,num){ function lineNum(type, num, klass){
var cell = $('<th class="line-num">').addClass(type+'line'); var cell = $('<th class="line-num">').addClass(type+'line').addClass(klass);
if(num){ if(num){
cell.attr('line-number',num); cell.attr('line-number',num);
} }

View File

@@ -51,7 +51,7 @@ table.diff tbody th {
font-size:11px; font-size:11px;
font-weight:normal; font-weight:normal;
border-top:none; /* for overriding bootstrap */ border-top:none; /* for overriding bootstrap */
color:#886; color: rgba(0,0,0,0.3);;
padding:.3em .5em .1em 2em; padding:.3em .5em .1em 2em;
text-align:right; text-align:right;
vertical-align:top vertical-align:top
@@ -80,14 +80,26 @@ table.diff .delete {
background-color:#ffecec; background-color:#ffecec;
} }
table.diff .skip { table.diff .skip {
background-color: #F8F8FF; background-color: #f8fafd;
}
table.diff th.skip {
background-color: #f0f5fa;
} }
table.diff .skip:before { table.diff .skip:before {
content: " ..."; content: " ";
} }
table.diff .insert { table.diff .insert {
background-color:#eaffea background-color:#eaffea
} }
table.diff th.insert {
background-color: #c1e9c1;
background-color: #dbffdb;
}
table.diff th.delete {
background-color: #ffdddd;
border-color: #f1c0c0;
}
table.diff th.author { table.diff th.author {
text-align:right; text-align:right;
border-top:1px solid #BBC; border-top:1px solid #BBC;