mirror of
https://github.com/kennethreitz-archive/gitx.git
synced 2026-06-05 23:40:18 +00:00
new diff style
This commit is contained in:
+7
-5
@@ -226,16 +226,17 @@
|
||||
- (NSString *) parseDiff:(NSString *)txt
|
||||
{
|
||||
txt=[self parseHTML:txt];
|
||||
|
||||
|
||||
NSArray *lines = [txt componentsSeparatedByString:@"\n"];
|
||||
NSString *line;
|
||||
NSMutableString *res=[NSMutableString string];
|
||||
|
||||
[res appendString:@"<table class='diff'>"];
|
||||
[res appendString:@"<table class='diff'><thead><tr><td colspan='3'>"];
|
||||
int i=0;
|
||||
while(i<[lines count]){
|
||||
line=[lines objectAtIndex:i];
|
||||
if([[line substringToIndex:2] isEqualToString:@"@@"]){
|
||||
[res appendString:@"</td></tr></thead><tbody>"];
|
||||
|
||||
int l_int,l_count,l_line;
|
||||
int r_int,r_count,r_line;
|
||||
@@ -252,12 +253,11 @@
|
||||
r_line=r_int=[[pos_r objectAtIndex:0]integerValue];
|
||||
r_count=[[pos_r objectAtIndex:1]integerValue];
|
||||
|
||||
[res appendString:[NSString stringWithFormat:@"<tr class='header'><td colspan=3>%@</td></tr>",line]];
|
||||
[res appendString:[NSString stringWithFormat:@"<tr class='header'><td colspan='3'>%@</td></tr>",line]];
|
||||
|
||||
do{
|
||||
line=[lines objectAtIndex:++i];
|
||||
NSString *s=[line substringToIndex:1];
|
||||
line=[line substringFromIndex:1];
|
||||
|
||||
if([s isEqualToString:@" "]){
|
||||
[res appendString:[NSString stringWithFormat:@"<tr><td class='l'>%d</td><td class='r'>%d</td>",l_line++,r_line++]];
|
||||
@@ -269,10 +269,12 @@
|
||||
[res appendString:[NSString stringWithFormat:@"<td class='code'>%@</td></tr>",line]];
|
||||
}while(l_line<(l_int+l_count) && r_line<(r_int+r_count));
|
||||
|
||||
}else{
|
||||
[res appendString:[NSString stringWithFormat:@"<p>%@</p>",line]];
|
||||
}
|
||||
i++;
|
||||
}
|
||||
[res appendString:@"</table>"];
|
||||
[res appendString:@"</tbody></table>"];
|
||||
return res;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,45 +1,64 @@
|
||||
table.diff{
|
||||
table.diff {
|
||||
font-family: Menlo, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;
|
||||
border: 1px solid #8f8f8f;
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
margin-left: 5px;
|
||||
margin-right: 5px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
table.diff tr td{
|
||||
font-family: Menlo, Consolas, 'Bitstream Vera Sans Mono', 'Courier New', Courier, monospace;
|
||||
|
||||
table.diff tr td {
|
||||
font-size: 11px;
|
||||
white-space: pre;
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
}
|
||||
|
||||
table.diff td.code{
|
||||
table.diff td.code {
|
||||
width: 100%;
|
||||
border-left: 2px solid #d0d0d0;
|
||||
}
|
||||
|
||||
table.diff tr.header td{
|
||||
table.diff tr.header td {
|
||||
border: 1px solid #8f8f8f;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
table.diff tr td.r{
|
||||
table.diff tr td.r {
|
||||
border-left: 1px solid #909090;
|
||||
}
|
||||
|
||||
table.diff tr.r{
|
||||
table.diff tr.r {
|
||||
background-color: rgba(0,255,0,0.1);
|
||||
}
|
||||
|
||||
table.diff tr.l{
|
||||
table.diff tr.l {
|
||||
background-color: rgba(255,0,0,0.1);
|
||||
}
|
||||
|
||||
table.diff tr.r td.code{
|
||||
table.diff tr.r td.code {
|
||||
border-left-color: rgba(0,255,0,0.2);
|
||||
}
|
||||
|
||||
table.diff tr.l td.code{
|
||||
table.diff tr.l td.code {
|
||||
border-left-color: rgba(255,0,0,0.2);
|
||||
}
|
||||
|
||||
table.diff thead tr td p {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
#diff table.diff thead {
|
||||
background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0, rgba(244, 244, 244,1)), color-stop(1, rgba(215,215,215,1)));
|
||||
}
|
||||
|
||||
#diff table.diff thead tr td {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
#diff table.diff tbody tr.header {
|
||||
background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0, rgba(206,206,206,1)), color-stop(1, rgba(166,166,166,1)));
|
||||
/* Saf4
|
||||
|
||||
+, Chrome */
|
||||
}
|
||||
Reference in New Issue
Block a user