// rtrims each item static LS tok_splitAtEmptyLines(S s) { new L indices; LS tok = javaTokWithAllBrackets(s); new LS out; int start = 0; S spacing = ""; for (int i = 2; i+1 < l(tok); i += 2) { int idx = indexOf_regexp(tok.get(i), "\r?\n\\s*\r?\n"); if (idx < 0) continue; int idx2 = idx+1; if (tok.get(i).charAt(idx) == '\r') ++idx2; out.add(spacing + joinSubList(tok, start, i)); start = i+1; spacing = substring(tok.get(i), idx2); // TODO: not exact } ret out; }