From 310a807f07ceeaa7d8fa0890d9061021707bbeb8 Mon Sep 17 00:00:00 2001 From: James Moger Date: Fri, 22 May 2015 13:39:17 -0400 Subject: Implement configurable tab length support for blob views --- src/main/java/com/gitblit/utils/StringUtils.java | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/main/java/com/gitblit/utils/StringUtils.java') diff --git a/src/main/java/com/gitblit/utils/StringUtils.java b/src/main/java/com/gitblit/utils/StringUtils.java index 087de543..643c52c3 100644 --- a/src/main/java/com/gitblit/utils/StringUtils.java +++ b/src/main/java/com/gitblit/utils/StringUtils.java @@ -79,6 +79,19 @@ public class StringUtils { * @return plain text escaped for html */ public static String escapeForHtml(String inStr, boolean changeSpace) { + return escapeForHtml(inStr, changeSpace, 4); + } + + /** + * Prepare text for html presentation. Replace sensitive characters with + * html entities. + * + * @param inStr + * @param changeSpace + * @param tabLength + * @return plain text escaped for html + */ + public static String escapeForHtml(String inStr, boolean changeSpace, int tabLength) { StringBuilder retStr = new StringBuilder(); int i = 0; while (i < inStr.length()) { @@ -93,7 +106,9 @@ public class StringUtils { } else if (changeSpace && inStr.charAt(i) == ' ') { retStr.append(" "); } else if (changeSpace && inStr.charAt(i) == '\t') { - retStr.append("    "); + for (int j = 0; j < tabLength; j++) { + retStr.append(" "); + } } else { retStr.append(inStr.charAt(i)); } -- cgit v1.2.3