@@ -872,9 +872,6 @@ function require() {
872872 if ( config . charByChar ) diff = jsDiff . diffChars ( diffLine1 , diffLine2 ) ;
873873 else diff = jsDiff . diffWordsWithSpace ( diffLine1 , diffLine2 ) ;
874874
875- //var diff = jsDiff.diffChars(diffLine1, diffLine2);
876- //var diff = jsDiff.diffWordsWithSpace(diffLine1, diffLine2);
877-
878875 var highlightedLine = "" ;
879876
880877 diff . forEach ( function ( part ) {
@@ -885,8 +882,14 @@ function require() {
885882 } ) ;
886883
887884 return {
888- o : lineStart1 + removeIns ( highlightedLine ) ,
889- n : lineStart2 + removeDel ( highlightedLine )
885+ first : {
886+ prefix : lineStart1 ,
887+ line : removeIns ( highlightedLine )
888+ } ,
889+ second : {
890+ prefix : lineStart2 ,
891+ line : removeDel ( highlightedLine )
892+ }
890893 }
891894 } ;
892895
@@ -974,18 +977,18 @@ function require() {
974977 file . blocks . forEach ( function ( block ) {
975978
976979 fileHtml . left += "<tr>\n" +
977- " <td class=\"d2h-code-side-linenumber " + diffParser . LINE_TYPE . INFO + "\"></td>\n" +
978- " <td class=\"" + diffParser . LINE_TYPE . INFO + "\">" +
979- " <div class=\"d2h-code-side-line " + diffParser . LINE_TYPE . INFO + "\">" + utils . escape ( block . header ) + "</div>" +
980- " </td>\n" +
981- "</tr>\n" ;
980+ " <td class=\"d2h-code-side-linenumber " + diffParser . LINE_TYPE . INFO + "\"></td>\n" +
981+ " <td class=\"" + diffParser . LINE_TYPE . INFO + "\">" +
982+ " <div class=\"d2h-code-side-line " + diffParser . LINE_TYPE . INFO + "\">" + utils . escape ( block . header ) + "</div>" +
983+ " </td>\n" +
984+ "</tr>\n" ;
982985
983986 fileHtml . right += "<tr>\n" +
984- " <td class=\"d2h-code-side-linenumber " + diffParser . LINE_TYPE . INFO + "\"></td>\n" +
985- " <td class=\"" + diffParser . LINE_TYPE . INFO + "\">" +
986- " <div class=\"d2h-code-side-line " + diffParser . LINE_TYPE . INFO + "\"></div>" +
987- " </td>\n" +
988- "</tr>\n" ;
987+ " <td class=\"d2h-code-side-linenumber " + diffParser . LINE_TYPE . INFO + "\"></td>\n" +
988+ " <td class=\"" + diffParser . LINE_TYPE . INFO + "\">" +
989+ " <div class=\"d2h-code-side-line " + diffParser . LINE_TYPE . INFO + "\"></div>" +
990+ " </td>\n" +
991+ "</tr>\n" ;
989992
990993 var oldLines = [ ] , newLines = [ ] ;
991994 var tmpHtml = "" ;
@@ -1020,8 +1023,8 @@ function require() {
10201023
10211024 var diff = printerUtils . diffHighlight ( oldEscapedLine , newEscapedLine , config ) ;
10221025
1023- fileHtml . left += generateSingleLineHtml ( oldLine . type , oldLine . oldNumber , diff . o ) ;
1024- fileHtml . right += generateSingleLineHtml ( newLine . type , newLine . newNumber , diff . n ) ;
1026+ fileHtml . left += generateSingleLineHtml ( oldLine . type , oldLine . oldNumber , diff . first . line , diff . first . prefix ) ;
1027+ fileHtml . right += generateSingleLineHtml ( newLine . type , newLine . newNumber , diff . second . line , diff . second . prefix ) ;
10251028 }
10261029 } else {
10271030 tmpHtml = processLines ( oldLines , newLines ) ;
@@ -1070,11 +1073,17 @@ function require() {
10701073 return fileHtml ;
10711074 }
10721075
1073- function generateSingleLineHtml ( type , number , content ) {
1076+ function generateSingleLineHtml ( type , number , content , prefix ) {
1077+ var htmlPrefix = "" ;
1078+ if ( prefix ) htmlPrefix = "<span class=\"d2h-code-line-prefix\">" + prefix + "</span>" ;
1079+
1080+ var htmlContent = "" ;
1081+ if ( content ) htmlContent = "<span class=\"d2h-code-line-ctn\">" + content + "</span>" ;
1082+
10741083 return "<tr>\n" +
10751084 " <td class=\"d2h-code-side-linenumber " + type + "\">" + number + "</td>\n" +
10761085 " <td class=\"" + type + "\">" +
1077- " <div class=\"d2h-code-side-line " + type + "\">" + content + "</div>" +
1086+ " <div class=\"d2h-code-side-line " + type + "\">" + htmlPrefix + htmlContent + "</div>" +
10781087 " </td>\n" +
10791088 " </tr>\n" ;
10801089 }
@@ -1084,12 +1093,12 @@ function require() {
10841093 fileHtml . right = "" ;
10851094
10861095 fileHtml . left = "<tr>\n" +
1087- " <td class=\"" + diffParser . LINE_TYPE . INFO + "\">" +
1088- " <div class=\"d2h-code-side-line " + diffParser . LINE_TYPE . INFO + "\">" +
1089- "File without changes" +
1090- " </div>" +
1091- " </td>\n" +
1092- "</tr>\n" ;
1096+ " <td class=\"" + diffParser . LINE_TYPE . INFO + "\">" +
1097+ " <div class=\"d2h-code-side-line " + diffParser . LINE_TYPE . INFO + "\">" +
1098+ "File without changes" +
1099+ " </div>" +
1100+ " </td>\n" +
1101+ "</tr>\n" ;
10931102
10941103 return fileHtml ;
10951104 }
@@ -1187,8 +1196,8 @@ function require() {
11871196 config . isCombined = file . isCombined ;
11881197 var diff = printerUtils . diffHighlight ( oldEscapedLine , newEscapedLine , config ) ;
11891198
1190- processedOldLines += generateLineHtml ( oldLine . type , oldLine . oldNumber , oldLine . newNumber , diff . o ) ;
1191- processedNewLines += generateLineHtml ( newLine . type , newLine . oldNumber , newLine . newNumber , diff . n ) ;
1199+ processedOldLines += generateLineHtml ( oldLine . type , oldLine . oldNumber , oldLine . newNumber , diff . first . line , diff . first . prefix ) ;
1200+ processedNewLines += generateLineHtml ( newLine . type , newLine . oldNumber , newLine . newNumber , diff . second . line , diff . second . prefix ) ;
11921201 }
11931202
11941203 lines += processedOldLines + processedNewLines ;
@@ -1228,14 +1237,20 @@ function require() {
12281237 return lines ;
12291238 }
12301239
1231- function generateLineHtml ( type , oldNumber , newNumber , content ) {
1240+ function generateLineHtml ( type , oldNumber , newNumber , content , prefix ) {
1241+ var htmlPrefix = "" ;
1242+ if ( prefix ) htmlPrefix = "<span class=\"d2h-code-line-prefix\">" + prefix + "</span>" ;
1243+
1244+ var htmlContent = "" ;
1245+ if ( content ) htmlContent = "<span class=\"d2h-code-line-ctn\">" + content + "</span>" ;
1246+
12321247 return "<tr>\n" +
12331248 " <td class=\"d2h-code-linenumber " + type + "\">" +
12341249 " <div class=\"line-num1\">" + utils . valueOrEmpty ( oldNumber ) + "</div>" +
12351250 " <div class=\"line-num2\">" + utils . valueOrEmpty ( newNumber ) + "</div>" +
12361251 " </td>\n" +
12371252 " <td class=\"" + type + "\">" +
1238- " <div class=\"d2h-code-line " + type + "\">" + content + "</div>" +
1253+ " <div class=\"d2h-code-line " + type + "\">" + htmlPrefix + htmlContent + "</div>" +
12391254 " </td>\n" +
12401255 "</tr>\n" ;
12411256 }
0 commit comments