From 310a807f07ceeaa7d8fa0890d9061021707bbeb8 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 22 May 2015 13:39:17 -0400 Subject: [PATCH] Implement configurable tab length support for blob views --- src/main/java/com/gitblit/utils/StringUtils.java | 17 ++++++++++++++++- 1 files changed, 16 insertions(+), 1 deletions(-) diff --git a/src/main/java/com/gitblit/utils/StringUtils.java b/src/main/java/com/gitblit/utils/StringUtils.java index 087de54..643c52c 100644 --- a/src/main/java/com/gitblit/utils/StringUtils.java +++ b/src/main/java/com/gitblit/utils/StringUtils.java @@ -79,6 +79,19 @@ * @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 @@ } 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)); } -- Gitblit v1.9.1