private static int countNewLinesInMath()

in src/org/jetbrains/plugins/ipnb/IpnbJfxUtils.java [269:297]


  private static int countNewLinesInMath(String source) {
    int count = 0;
    if (source.contains("```")) {
      count += 1;
    }
    boolean inMath = false;

    if (source.contains("\\frac")) {
      count += 1;
    }
    if (source.contains("\\limits")) {
      count += 2;
    }
    while (source.contains("$$")) {
      if (inMath) {
        final String substring = source.substring(0, source.indexOf("$$") + 2);
        count += StringUtil.countNewLines(substring);
        for (int i = 0, len = substring.length(); i < len; ++i) {
          if (substring.charAt(i) == '\\' && i + 1 < substring.length() && substring.charAt(i + 1) == '\\') {
            count++;
            i += 1;
          }
        }
      }
      inMath = !inMath;
      source = source.substring(source.indexOf("$$") + 2);
    }
    return count;
  }