Skip to content

Commit 6ad1215

Browse files
authored
Fixed banner formatting
1 parent eb188c0 commit 6ad1215

1 file changed

Lines changed: 11 additions & 2 deletions

File tree

jooby-banner/src/main/java/org/jooby/banner/Banner.java

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ public void configure(final Env env, final Config conf, final Binder binder) {
112112
String text = this.text.orElse(name);
113113

114114
Provider<String> ascii = () -> Try
115-
.of(() -> convertOneLine(String.format(FONT, font), text).replaceAll("\\n+$", ""))
115+
.of(() -> trimEnd(convertOneLine(String.format(FONT, font), text)))
116116
.getOrElse(text);
117117

118118
binder.bind(Key.get(String.class, Names.named("application.banner"))).toProvider(ascii);
@@ -126,5 +126,14 @@ public Banner font(final String font) {
126126
this.font = requireNonNull(font, "Font is required.");
127127
return this;
128128
}
129-
129+
130+
public String trimEnd(String str) {
131+
int len = str.length();
132+
int st = 0;
133+
char[] val = str.toCharArray();
134+
while ((st < len) && (val[len - 1] <= ' ')) {
135+
len--;
136+
}
137+
return str.substring(st, len);
138+
}
130139
}

0 commit comments

Comments
 (0)