mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 15:00:13 +01:00
#655: Added support for the VM tag jansi.passthrough when processing messages sent to a ColouredConsoleSender.
This commit is contained in:
parent
e0cfb34742
commit
ef706b064e
1 changed files with 4 additions and 1 deletions
|
@ -14,10 +14,12 @@ public class ColouredConsoleSender extends CraftConsoleCommandSender {
|
|||
private final Terminal terminal;
|
||||
private final Map<ChatColor, String> replacements = new EnumMap<ChatColor, String>(ChatColor.class);
|
||||
private final ChatColor[] colors = ChatColor.values();
|
||||
private final boolean jansiPassthrough;
|
||||
|
||||
protected ColouredConsoleSender() {
|
||||
super();
|
||||
this.terminal = ((CraftServer) getServer()).getReader().getTerminal();
|
||||
this.jansiPassthrough = Boolean.getBoolean("jansi.passthrough");
|
||||
|
||||
replacements.put(ChatColor.BLACK, Ansi.ansi().a(Attribute.RESET).fg(Ansi.Color.BLACK).boldOff().toString());
|
||||
replacements.put(ChatColor.DARK_BLUE, Ansi.ansi().a(Attribute.RESET).fg(Ansi.Color.BLUE).boldOff().toString());
|
||||
|
@ -45,7 +47,8 @@ public class ColouredConsoleSender extends CraftConsoleCommandSender {
|
|||
|
||||
@Override
|
||||
public void sendMessage(String message) {
|
||||
if (terminal.isAnsiSupported()) {
|
||||
// support jansi passthrough VM option when jansi doesn't detect an ANSI supported terminal
|
||||
if (jansiPassthrough || terminal.isAnsiSupported()) {
|
||||
if (!conversationTracker.isConversingModaly()) {
|
||||
String result = message;
|
||||
for (ChatColor color : colors) {
|
||||
|
|
Loading…
Reference in a new issue