geforkt von Mirrors/Paper
#655: Added support for the VM tag jansi.passthrough when processing messages sent to a ColouredConsoleSender.
Dieser Commit ist enthalten in:
Ursprung
e0cfb34742
Commit
ef706b064e
@ -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) {
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren