@@ -45,13 +45,18 @@ define(function (require, exports, module) {
45
45
function formatDiff ( diff ) {
46
46
var DIFF_MAX_LENGTH = 2000 ;
47
47
48
- var tabSize = Preferences . getGlobal ( "tabSize" ) ,
48
+ var tabReplace = "" ,
49
49
verbose = Preferences . get ( "useVerboseDiff" ) ,
50
50
numLineOld = 0 ,
51
51
numLineNew = 0 ,
52
52
lastStatus = 0 ,
53
53
diffData = [ ] ;
54
54
55
+ var i = Preferences . getGlobal ( "tabSize" ) ;
56
+ while ( i -- ) {
57
+ tabReplace += " " ;
58
+ }
59
+
55
60
var LINE_STATUS = {
56
61
HEADER : 0 ,
57
62
UNCHANGED : 1 ,
@@ -166,7 +171,10 @@ define(function (require, exports, module) {
166
171
// removes ZERO WIDTH NO-BREAK SPACE character (BOM)
167
172
line = line . replace ( / \uFEFF / g, "" ) ;
168
173
169
- line = _ . escape ( line ) . replace ( / \s / g, " " ) ;
174
+ line = _ . escape ( line )
175
+ . replace ( / \t / g, tabReplace )
176
+ . replace ( / \s / g, " " ) ;
177
+
170
178
line = line . replace ( / ( & n b s p ; ) + $ / g, function ( trailingWhitespace ) {
171
179
return "<span class='trailingWhitespace'>" + trailingWhitespace + "</span>" ;
172
180
} ) ;
@@ -176,8 +184,7 @@ define(function (require, exports, module) {
176
184
"numLineOld" : _numLineOld ,
177
185
"numLineNew" : _numLineNew ,
178
186
"line" : line ,
179
- "lineClass" : lineClass ,
180
- "tabSize" : tabSize
187
+ "lineClass" : lineClass
181
188
} ) ;
182
189
}
183
190
}
0 commit comments