in freemarker-docgen-core/src/main/java/org/freemarker/docgen/core/TextUtil.java [266:294]
public static String detectEOL(String s, String defaultEOL) {
int unixEOLs = 0;
int windowsEOLs = 0;
int macEOLs = 0;
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c == '\n') {
unixEOLs++;
}
if (c == '\r') {
if (i + 1 < s.length() && s.charAt(i + 1) == '\n') {
i++;
windowsEOLs++;
} else {
macEOLs++;
}
}
}
if (unixEOLs > windowsEOLs && unixEOLs > macEOLs) {
return "\n";
} else if (windowsEOLs > unixEOLs && windowsEOLs > macEOLs) {
return "\r\n";
} else if (macEOLs > unixEOLs && macEOLs > windowsEOLs) {
return "\r";
} else {
return defaultEOL;
}
}