code: function nodeToRangeLines(node, code, engine) {
    var range = engine.nodeToRange(node);
  
    // we want to keep starting indentation, so search back to the previous
    // newline
    var start = range.start;
    while (start > 0 && code[start] !== "\n") {
      start--;
    }
    if (code[start] === "\n") {
      start++; // don't include the newline
    }
  
    // we also want to read to the end of the line for the node we found
    var end = range.end;
    while (end < code.length && code[end] !== "\n") {
      end++;
    }
  
    return { start: start, end: end };
  }
docs: /*
  Gets the range from a node and extends it to the preceeding and following
  newlines