     {bufferRows, screenLines} = getReferenceScreenLines()
     for bufferRow, screenRow in bufferRows
       console.log screenRow, bufferRow, screenLines[screenRow].text
+    console.log "==== steps to reproduce this failure: ==="
+    for step in steps
+      console.log 'editor.' + step[0] + '('+ step[1..].map((a) -> JSON.stringify(a)).join(', ') + ')'
 
   randomlyMutateEditor = ->
     if Math.random() < .2

TextEditor = require '../src/text-editor'

describe "TextEditor", ->
  [editor, tokenizedBuffer, buffer, steps, previousSteps] = []

  softWrapColumn = 80


    text

  getReferenceScreenLines = ->
    referenceEditor = new TextEditor({})
    referenceEditor.setEditorWidthInChars(80)
    referenceEditor.setText(editor.getText())
    referenceEditor.setSoftWrapped(editor.isSoftWrapped())
    screenLines = referenceEditor.tokenizedLinesForScreenRows(0, referenceEditor.getLastScreenRow())
    bufferRows = referenceEditor.bufferRowsForScreenRows(0, referenceEditor.getLastScreenRow())

    {screenLines, bufferRows}
