 
   unless typeLeft is typeRight
     s = ''
-    s += utils.TAGS.delStart + utils.inspect(left, depth) + utils.TAGS.delEnd if left?
-    s += utils.TAGS.insStart + utils.inspect(right, depth) + utils.TAGS.insEnd if right?
+    s += utils.del utils.inspect(left, depth) if left?
+    s += utils.ins utils.inspect(right, depth) if right?
     return s
 
   switch typeLeft

    i = 0

    while i < out.o.length
      str += utils.TAGS.delStart + utils.escape(out.o[i]) + oSpace[i] + utils.TAGS.delEnd
      i++
  else
    unless out.n[0].text?
      n = 0
      while n < out.o.length and not out.o[n].text?
        str += utils.TAGS.delStart + utils.escape(out.o[n]) + oSpace[n] + utils.TAGS.delEnd
        n++
    i = 0

    while i < out.n.length
      unless out.n[i].text?
        str += utils.TAGS.insStart + utils.escape(out.n[i]) + nSpace[i] + utils.TAGS.insEnd
      else
        pre = ""
        n = out.n[i].row + 1
        while n < out.o.length and not out.o[n].text?
          pre += utils.TAGS.delStart + utils.escape(out.o[n]) + oSpace[n] + utils.TAGS.delEnd
          n++
        str += "" + out.n[i].text + nSpace[i] + pre
      i++

  n: n

spectacular.utils.stringDiff = (o, n) ->
  return utils.del o if not n? or n.length is 0
  return utils.ins n if not o? or o.length is 0
  o = String(o).replace(/\s+$/, "")
  n = String(n).replace(/\s+$/, "")
  out = utils.diff((if o is "" then [] else o.split(/\s+/)), (if n is "" then [] else n.split(/\s+/)))
