Right now we use codemirror's JavaScript mode on the website but there's a JSX mode now so we should start using that instead.

if (end == null) {
      end = string.search(/[^\s\u00a0]/);
      if (end == -1) end = string.length;
    }
    for (var i = startIndex || 0, n = startValue || 0; i < end; ++i) {
      if (string.charAt(i) == "\t") n += tabSize - (n % tabSize);
      else ++n;
    }
    return n;
  }
  CodeMirror.countColumn = countColumn;
  var spaceStrs = [""];
  function spaceStr(n) {
    while (spaceStrs.length <= n)
      spaceStrs.push(lst(spaceStrs) + " ");
    return spaceStrs[n];
  }
  function lst(arr) { return arr[arr.length-1]; }
  function selectInput(node) {
    if (ios) { 
      node.selectionStart = 0;
      node.selectionEnd = node.value.length;
    } else {
      
      try { node.select(); }
      catch(_e) {}
    }
  }
  function indexOf(collection, elt) {