Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Fixes to the --tk diff option to support unified diff on Windows. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
1048bccf14a3da71326b9f7b9fe18def |
| User & Date: | mistachkin 2012-09-27 01:38:43.722 |
Context
|
2012-09-27
| ||
| 13:02 | Merge the fix for [711d04b6d8577] into trunk. Only bail out of a commit if none of the selected files have changed, rather than if any selected file is unchanged. ... (check-in: 3a5e81cedb user: drh tags: trunk) | |
| 08:43 | Candidate fix for ticket [711d04b6d8] ... (check-in: eab9f88e7f user: jan.nijtmans tags: ticket-711d04b6d8) | |
| 01:38 | Fixes to the --tk diff option to support unified diff on Windows. ... (check-in: 1048bccf14 user: mistachkin tags: trunk) | |
| 00:37 | Allow unified diff for the --tk diff option. ... (check-in: 5be507df71 user: mistachkin tags: trunk) | |
Changes
Changes to src/diff.c.
| ︙ | ︙ | |||
172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
*/
static void appendDiffLine(
Blob *pOut, /* Where to write the line of output */
char cPrefix, /* One of " ", "+", or "-" */
DLine *pLine, /* The line to be output */
int html /* True if generating HTML. False for plain text */
){
blob_append(pOut, &cPrefix, 1);
if( html ){
char *zHtml;
if( cPrefix=='+' ){
blob_append(pOut, "<span class=\"diffadd\">", -1);
}else if( cPrefix=='-' ){
blob_append(pOut, "<span class=\"diffrm\">", -1);
}
zHtml = htmlize(pLine->z, (pLine->h & LENGTH_MASK));
blob_append(pOut, zHtml, -1);
fossil_free(zHtml);
if( cPrefix!=' ' ){
blob_append(pOut, "</span>", -1);
}
}else{
blob_append(pOut, pLine->z, pLine->h & LENGTH_MASK);
| > > > > > | 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 |
*/
static void appendDiffLine(
Blob *pOut, /* Where to write the line of output */
char cPrefix, /* One of " ", "+", or "-" */
DLine *pLine, /* The line to be output */
int html /* True if generating HTML. False for plain text */
){
int i;
blob_append(pOut, &cPrefix, 1);
if( html ){
char *zHtml;
if( cPrefix=='+' ){
blob_append(pOut, "<span class=\"diffadd\">", -1);
}else if( cPrefix=='-' ){
blob_append(pOut, "<span class=\"diffrm\">", -1);
}
zHtml = htmlize(pLine->z, (pLine->h & LENGTH_MASK));
for(i=0; i<strlen(zHtml); i++){
char c = zHtml[i];
if( c=='\t' || c=='\r' || c=='\f' ) zHtml[i] = ' ';
}
blob_append(pOut, zHtml, -1);
fossil_free(zHtml);
if( cPrefix!=' ' ){
blob_append(pOut, "</span>", -1);
}
}else{
blob_append(pOut, pLine->z, pLine->h & LENGTH_MASK);
|
| ︙ | ︙ | |||
427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 |
j += 4;
}else if( c=='&' && p->escHtml ){
memcpy(&z[j], "&", 5);
j += 5;
}else if( c=='>' && p->escHtml ){
memcpy(&z[j], ">", 4);
j += 4;
}else{
z[j++] = c;
if( (c&0xc0)==0x80 ) k--;
}
}
if( needEndSpan ){
memcpy(&z[j], "</span>", 7);
j += 7;
}
if( (flags & SBS_PAD)!=0 ){
while( k<w ){ k++; z[j++] = ' '; }
}
if( flags & SBS_NEWLINE ){
z[j++] = '\n';
}
p->n += j;
}
/*
| > > > | | 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 |
j += 4;
}else if( c=='&' && p->escHtml ){
memcpy(&z[j], "&", 5);
j += 5;
}else if( c=='>' && p->escHtml ){
memcpy(&z[j], ">", 4);
j += 4;
}else if( c=='"' && p->escHtml ){
memcpy(&z[j], """, 6);
j += 6;
}else{
z[j++] = c;
if( (c&0xc0)==0x80 ) k--;
}
}
if( needEndSpan ){
memcpy(&z[j], "</span>", 7);
j += 7;
}
if( (flags & SBS_PAD)!=0 ){
while( k<w ){ k++; z[j++] = ' '; }
}
if( flags & SBS_NEWLINE ){
z[j++] = '\n';
}
p->n += j;
}
/*
** Append a string to an SbSLine without coding, interpretation, or padding.
*/
static void sbsWrite(SbsLine *p, const char *zIn, int nIn){
memcpy(p->zLine+p->n, zIn, nIn);
p->n += nIn;
}
/*
|
| ︙ | ︙ |
Changes to src/diffcmd.c.
| ︙ | ︙ | |||
508 509 510 511 512 513 514 |
@ all pre class mid tail]} {
@ .t insert end [dehtml $pre] {} [dehtml $mid] $class
@ set line $tail
@ }
@ .t insert end [dehtml $line]\n {}
@ }
@ close $in
| | | 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 |
@ all pre class mid tail]} {
@ .t insert end [dehtml $pre] {} [dehtml $mid] $class
@ set line $tail
@ }
@ .t insert end [dehtml $line]\n {}
@ }
@ close $in
@ if {$mx>250} {set mx 250} ;# Limit window width to 200 characters
@ if {$nLine>55} {set nLine 55} ;# Limit window height to 55 lines
@ .t config -height $nLine -width $mx
@ pack .t -side left -fill both -expand 1
@ scrollbar .sb -command {.t yview} -orient vertical
@ pack .sb -side left -fill y
@ wm deiconify .
;
|
| ︙ | ︙ |