improve server side command line input (#415)

* improve server side command line input

* prevent multiline logs from covering typed commands

* reduce text in console

* resolve conflicts caused by multilanguage

Co-authored-by: Magix <kobedo11@gmail.com>
This commit is contained in:
Presiareen
2022-05-03 20:44:52 +08:00
committed by GitHub
parent c930c637e4
commit 050784dfab
4 changed files with 104 additions and 36 deletions

View File

@@ -0,0 +1,20 @@
package emu.grasscutter.utils;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.ConsoleAppender;
import emu.grasscutter.Grasscutter;
import org.jline.reader.LineReader;
import java.util.Arrays;
public class JlineLogbackAppender extends ConsoleAppender<ILoggingEvent> {
@Override
protected void append(ILoggingEvent eventObject) {
if (!started) {
return;
}
Arrays.stream(
new String(encoder.encode(eventObject)).split("\n")
).forEach(Grasscutter.getConsole()::printAbove);
}
}