From 910b504af828b3050d9cd21d43aece4a6cbd3e21 Mon Sep 17 00:00:00 2001 From: ME1312 Date: Sat, 12 Jun 2021 23:20:41 -0400 Subject: [PATCH] Update SubServers.Console --- SubServers.Console/pom.xml | 4 +- SubServers.Console/src/bungee.yml | 2 +- .../ME1312/SubServers/Console/ConsoleFont.ttf | Bin 212160 -> 116040 bytes .../SubServers/Console/ConsolePlugin.java | 5 +- .../SubServers/Console/ConsoleWindow.java | 290 +++++++++++------- .../SubServers/Console/Library/HTMLogger.java | 200 +++++++----- 6 files changed, 295 insertions(+), 206 deletions(-) diff --git a/SubServers.Console/pom.xml b/SubServers.Console/pom.xml index 54756712..e597ae52 100644 --- a/SubServers.Console/pom.xml +++ b/SubServers.Console/pom.xml @@ -18,8 +18,8 @@ org.fusesource.jansi jansi - 1.17.1 - provided + 1.18 + compile com.intellij diff --git a/SubServers.Console/src/bungee.yml b/SubServers.Console/src/bungee.yml index afb6b85a..0c19b5c7 100644 --- a/SubServers.Console/src/bungee.yml +++ b/SubServers.Console/src/bungee.yml @@ -1,4 +1,4 @@ name: SubServers-Console main: net.ME1312.SubServers.Console.ConsolePlugin -version: 2.16a +version: 2.17a author: ME1312 \ No newline at end of file diff --git a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleFont.ttf b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleFont.ttf index 5d1579c7f8fd5e9b4da644decbbc2c887deacb84..41413c158bf60dd55e2d4333a91cd364c5669bf8 100644 GIT binary patch literal 116040 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

2p&g2L(F)!k``Y+^e|EsYG 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 DeSt#) literal 212160 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 z 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

FbUCmmf>|WvT!4^m{80EggTm*)O>_)b(jy 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 J7bT;@|3AvTL%sk2 diff --git a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsolePlugin.java b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsolePlugin.java index 3ecc41e3..ed5a7432 100644 --- a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsolePlugin.java +++ b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsolePlugin.java @@ -5,6 +5,7 @@ import net.ME1312.SubServers.Bungee.Event.SubCreateEvent; import net.ME1312.SubServers.Bungee.Event.SubSendCommandEvent; import net.ME1312.SubServers.Bungee.Event.SubStartEvent; import net.ME1312.SubServers.Bungee.Host.Host; +import net.ME1312.SubServers.Bungee.Host.RemotePlayer; import net.ME1312.SubServers.Bungee.Host.SubCreator; import net.ME1312.SubServers.Bungee.Host.SubServer; import net.ME1312.SubServers.Bungee.SubAPI; @@ -19,6 +20,7 @@ import net.md_5.bungee.event.EventPriority; import javax.swing.*; import java.io.File; import java.io.IOException; +import java.util.Calendar; import java.util.Collections; import java.util.HashMap; @@ -103,7 +105,8 @@ public final class ConsolePlugin extends Plugin implements Listener { @EventHandler(priority = EventPriority.HIGHEST) public void onServerCommand(SubSendCommandEvent event) { if (!event.isCancelled() && sCurrent.keySet().contains(event.getServer().getName().toLowerCase())) { - sCurrent.get(event.getServer().getName().toLowerCase()).log('<' + ((event.getPlayer() == null)?"CONSOLE":((getProxy().getPlayer(event.getPlayer()) == null)?event.getPlayer().toString():getProxy().getPlayer(event.getPlayer()).getName())) + "> /" + event.getCommand()); + RemotePlayer player = (event.getPlayer() == null)? null : SubAPI.getInstance().getRemotePlayer(event.getPlayer()); + sCurrent.get(event.getServer().getName().toLowerCase()).log(((player == null)? "CONSOLE" : player.getName()) + "> /" + event.getCommand()); } } diff --git a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java index 38a34f59..9d9e803a 100644 --- a/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java +++ b/SubServers.Console/src/net/ME1312/SubServers/Console/ConsoleWindow.java @@ -24,11 +24,15 @@ import java.io.*; import java.text.SimpleDateFormat; import java.util.List; import java.util.*; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.ThreadFactory; import java.util.logging.Level; +import static java.nio.charset.StandardCharsets.UTF_8; + public final class ConsoleWindow implements SubLogFilter { - private static final int MAX_SCROLLBACK = (Integer.getInteger("subservers.console.max_scrollback", 0) >= 128)?Integer.getInteger("subservers.console.max_scrollback"):7500; - private static final String RESET_VALUE = "\n\u00A0\n\u00A0"; + private static final int MAX_SCROLLBACK = (Integer.getInteger("subservers.console.max_scrollback", 0) > 0)?Integer.getInteger("subservers.console.max_scrollback"):7500; private ConsolePlugin plugin; private JFrame window; private double scale = 1.0; @@ -48,53 +52,56 @@ public final class ConsoleWindow implements SubLogFilter { private int findO = 0; private int findI = 0; private boolean open = false; - private boolean running = true; - private LinkedList messages = new LinkedList(); + private ExecutorService thread; private SubLogger logger; private int fontSize; private File file = null; private FileOutputStream filewriter = null; - private List spost = new LinkedList(); - private ByteArrayOutputStream scache = new ByteArrayOutputStream(); - private AnsiUIOutputStream stream = AnsiUIOutputStream.wrap(new OutputStream() { + private long sbytes = -Long.MAX_VALUE; + private LinkedList slines = new LinkedList(); + private LinkedList spost = new LinkedList(); + private AnsiUIOutputStream stream = HTMLogger.wrap(new OutputStream() { + private final ByteArrayOutputStream scache = new ByteArrayOutputStream(); private int countLines(String str) { int count = 0; - for (int i = 0; i < str.length(); i++) if (str.charAt(i) == '\n') count++; + for (int i = 1; i < str.codePoints().count(); i++) if (str.codePointAt(i) == '\n') count++; return count; } @Override public void write(int b) throws IOException { scache.write(b); - if (b == '\n') { - try { - HTMLEditorKit kit = (HTMLEditorKit) log.getEditorKit(); - HTMLDocument doc = (HTMLDocument) log.getDocument(); - kit.insertHTML(doc, doc.getLength() - 2, new String(scache.toByteArray(), "UTF-8"), 0, 0, null); - EventQueue.invokeLater(new Runnable() { - @Override - public void run() { - hScroll(); - } - }); - } catch (Exception e) {} try { - int lines; - String content; - if (log.getSelectionStart() == log.getSelectionEnd() && (lines = countLines(content = log.getDocument().getText(0, log.getDocument().getLength()))) > MAX_SCROLLBACK + 2) { - int lineBreak = 1; - for (lines -= MAX_SCROLLBACK; lines > 0; lines--) lineBreak = content.indexOf('\n', lineBreak + 1); - if (lineBreak <= log.getDocument().getLength() - 2 && log.getSelectionStart() == log.getSelectionEnd()) { - log.getDocument().remove(0, lineBreak); - } + } + + @Override + public void flush() throws IOException { + try { + HTMLDocument doc = (HTMLDocument) log.getDocument(); + ((HTMLEditorKit) log.getEditorKit()).insertHTML(doc, doc.getLength() - 2, new String(scache.toByteArray(), UTF_8), 0, 0, null); + EventQueue.invokeLater(new Runnable() { + @Override + public void run() { + hScroll(); } - } catch (Exception e) {} - for (Runnable post : spost) try { - post.run(); - } catch (Throwable e) {} - spost.clear(); - scache = new ByteArrayOutputStream(); - } + }); + } catch (Exception e) {} try { + int lines; + String content; + HTMLDocument doc = (HTMLDocument) log.getDocument(); + if (log.getSelectionStart() == log.getSelectionEnd() && (lines = countLines(content = doc.getText(2, doc.getLength() - 2))) > MAX_SCROLLBACK) { + int lfl = 0; + for (lines -= MAX_SCROLLBACK; lines > 0; --lines) lfl = content.indexOf('\n', lfl + 1); + if (log.getSelectionStart() == log.getSelectionEnd()) { + doc.remove(2, lfl); + } + } + } catch (Exception e) {} + for (Runnable post : spost) try { + post.run(); + } catch (Throwable e) {} + spost.clear(); + scache.reset(); } }, new HTMLogger.HTMConstructor() { @Override @@ -193,6 +200,7 @@ public final class ConsoleWindow implements SubLogFilter { @Override public void actionPerformed(ActionEvent event) { ConsoleWindow.this.clear(); + ConsoleWindow.this.hScroll(); } }); menu.add(item); @@ -201,8 +209,9 @@ public final class ConsoleWindow implements SubLogFilter { item.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent event) { - log.setText(RESET_VALUE); + ConsoleWindow.this.clear(); ConsoleWindow.this.loadContent(); + ConsoleWindow.this.hScroll(); } }); menu.add(item); @@ -315,8 +324,9 @@ public final class ConsoleWindow implements SubLogFilter { @Override public void actionPerformed(ActionEvent event) { stream.ansi(((AbstractButton) event.getSource()).getModel().isSelected()); - log.setText(RESET_VALUE); + ConsoleWindow.this.clear(); ConsoleWindow.this.loadContent(); + ConsoleWindow.this.hScroll(); } }); menu.add(item); @@ -325,7 +335,7 @@ public final class ConsoleWindow implements SubLogFilter { @Override public void actionPerformed(ActionEvent event) { HTMLDocument doc = (HTMLDocument) log.getDocument(); - fontSize = (int) (12 * scale); + fontSize = (int) (13 * scale); doc.getStyleSheet().addRule("body {font-size: " + fontSize + ";}\n"); ConsoleWindow.this.hScroll(); } @@ -337,7 +347,7 @@ public final class ConsoleWindow implements SubLogFilter { @Override public void actionPerformed(ActionEvent event) { HTMLDocument doc = (HTMLDocument) log.getDocument(); - fontSize += 2 * scale; + fontSize += scale; doc.getStyleSheet().addRule("body {font-size: " + fontSize + ";}\n"); ConsoleWindow.this.hScroll(); } @@ -349,7 +359,7 @@ public final class ConsoleWindow implements SubLogFilter { @Override public void actionPerformed(ActionEvent event) { HTMLDocument doc = (HTMLDocument) log.getDocument(); - fontSize -= 2 * scale; + fontSize -= scale; doc.getStyleSheet().addRule("body {font-size: " + fontSize + ";}\n"); ConsoleWindow.this.hScroll(); } @@ -367,11 +377,10 @@ public final class ConsoleWindow implements SubLogFilter { } }); window.setTitle(logger.getName() + " \u2014 SubServers 2"); - window.setSize(1024, 576); - window.setSize((int) (1024 * scale), (int) (576 * scale)); + window.setSize((int) (1280 * scale), (int) (720 * scale)); window.setLocation( - (int) ((screen.getWidth() - window.getWidth()) / 2), - (int) ((screen.getHeight() - window.getHeight()) / 2) + (int) Math.abs((screen.getWidth() - window.getWidth()) / 2), + (int) Math.abs((screen.getHeight() - window.getHeight()) / 2) ); window.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); window.addWindowListener(new WindowAdapter() { @@ -391,13 +400,13 @@ public final class ConsoleWindow implements SubLogFilter { log.setContentType("text/html"); log.setEditorKit(new HTMLEditorKit()); StyleSheet style = new StyleSheet(); - fontSize = (int) (12 * scale); + fontSize = (int) (13 * scale); String font; try { Font f = Font.createFont(Font.TRUETYPE_FONT, ConsoleWindow.class.getResourceAsStream("/net/ME1312/SubServers/Console/ConsoleFont.ttf")); GraphicsEnvironment.getLocalGraphicsEnvironment().registerFont(f); font = f.getFontName(); - input.setFont(f.deriveFont((float) (14 * scale))); + input.setFont(f); } catch (Exception e) { font = "Courier"; } @@ -447,11 +456,13 @@ public final class ConsoleWindow implements SubLogFilter { if (offset < 1) { return; } + string = string.replace("\n", "\\n"); super.insertString(fb, offset, string, attr); } @Override public void replace(FilterBypass fb, int offset, int length, String text, AttributeSet attrs) throws BadLocationException { + text = text.replace("\n", "\\n"); if (offset < 1) { length = Math.max(0, length - 1); offset = input.getDocument().getLength(); @@ -552,7 +563,6 @@ public final class ConsoleWindow implements SubLogFilter { } }); findP.setBorder(new ButtonBorder(40, 44, 45, (int) (4 * scale))); - findN.setFont(findN.getFont().deriveFont((float) (findN.getFont().getSize() * scale))); findP.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent event) { @@ -567,6 +577,7 @@ public final class ConsoleWindow implements SubLogFilter { } }); findN.setBorder(new ButtonBorder(40, 44, 45, (int) (4 * scale))); + findN.setFont(findN.getFont().deriveFont((float) (findN.getFont().getSize() * scale))); findN.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent event) { @@ -600,32 +611,116 @@ public final class ConsoleWindow implements SubLogFilter { vScroll.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); } + thread = Executors.newSingleThreadExecutor(new ThreadFactory() { + @Override + public Thread newThread(Runnable r) { + return new Thread(r, "SubServers.Console::Log_Spooler(" + logger.getName() + ")"); + } + }); + + try { + clear(); + slines.add(sbytes); + stream.write("\u00A0".getBytes(UTF_8)); + } catch (IOException e) {} + logger.registerFilter(this); - log.setText(RESET_VALUE); loadContent(); - log(); + hScroll(); KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(keys); } - private void hScroll() { - hScroll.setMaximum(vScroll.getHorizontalScrollBar().getMaximum()); - hScroll.setMinimum(vScroll.getHorizontalScrollBar().getMinimum()); - hScroll.setVisibleAmount(vScroll.getHorizontalScrollBar().getVisibleAmount()); - hScroll.setVisible(input.isVisible() && hScroll.getVisibleAmount() < hScroll.getMaximum()); + + @Override + public void start() {} + public void open() { + if (!open) { + window.setVisible(true); + this.open = true; + } + window.toFront(); } - public SubLogger getLogger() { - return logger; + private void loadContent() { + this.sbytes = (slines.size() > 0) ? slines.getFirst() : -Long.MAX_VALUE; + this.slines.clear(); + this.slines.add(sbytes); + + try (FileInputStream reader = new FileInputStream(file)) { + if (sbytes > -Long.MAX_VALUE) { + if (sbytes > 0) { + reader.skip(sbytes); + reader.skip(Long.MAX_VALUE); + } else { + reader.skip(sbytes + Long.MAX_VALUE); + } + } + + int i; + byte[] b = new byte[1024]; + ByteArrayOutputStream stream = new ByteArrayOutputStream(); + while ((i = reader.read(b)) != -1) { + stream.write(b, 0, i); + } + + submit(stream.toString(UTF_8.name())); + } catch (Exception e) { + e.printStackTrace(); + } } - public void log(Date date, String message) { + private void submit(final String s) { + thread.submit(new Runnable() { + @Override + public void run() { + try { + int begin = 0; + int end, i, bytes; + do { + i = s.indexOf('\n', begin); + end = (i == -1) ? s.length() : i + 1; + + // Submit the text (without any newlines) + stream.write(s.substring(begin, (i == -1) ? s.length() : i).getBytes(UTF_8)); + + // Count the bytes (with 1 possible newline) + bytes = s.substring(begin, end).getBytes(UTF_8).length; + if (sbytes + bytes < sbytes) sbytes = Long.MAX_VALUE; + else sbytes += bytes; + + // Submit a newline if necessary + if (i != -1) { + stream.closeAttributes(); + stream.write("\u00A0".getBytes(UTF_8)); + stream.flush(); + stream.write("\n\u00A0".getBytes(UTF_8)); + slines.add(sbytes); + while (slines.size() > MAX_SCROLLBACK + 1) { + slines.removeFirst(); + } + } + + // Continue to the next line if available + begin = end; + } while (begin < s.length()); + } catch (IOException e) { + e.printStackTrace(); + } + } + }); + } + public void log(String message) { + message += '\n'; try { - messages.add(('\u00A0' + new SimpleDateFormat("hh:mm:ss").format(date) + ' ' + message + "\u00A0\n").getBytes("UTF-8")); + filewriter.write(message.getBytes(UTF_8)); + filewriter.flush(); + + submit(message); } catch (IOException e) { e.printStackTrace(); } } - public void log(String message) { - log(Calendar.getInstance().getTime(), message); + public void log(Date date, String message) { + log(new SimpleDateFormat("hh:mm:ss").format(date) + ' ' + message); } public void log(Date date, Level level, String message) { log(date, "[" + level.getLocalizedName() + "] " + message); @@ -636,64 +731,16 @@ public final class ConsoleWindow implements SubLogFilter { return !open; } - private void log() { - new Thread("SubServers.Console::Log_Spooler(" + logger.getName() + ")") { - @Override - public void run() { - while (running) { - while (running && messages.size() > 0) try { - byte[] msg = (byte[]) Util.getDespiteException(new ExceptionReturnRunnable() { - @Override - public Object run() throws Throwable { - return messages.get(0); - } - }, null); - if (msg != null) { - filewriter.write(msg); - stream.write(msg); - } - try { ConsoleWindow.this.messages.remove(0); } catch (Throwable e) {} - } catch (Throwable e) { - try { ConsoleWindow.this.messages.remove(0); } catch (Throwable ex) {} - e.printStackTrace(); - } - try { Thread.sleep(32); } catch (Throwable e) {} - } - } - }.start(); - } - public void clear() { - log.setText(RESET_VALUE); - hScroll(); - } - - public void open() { - if (!open) { - window.setVisible(true); - this.open = true; - } - window.toFront(); + log.setText("\n\u00A0\n\u00A0"); } public boolean isOpen() { return open; } - @Override - public void start() {} - private void loadContent() { - if (file != null) { - try (FileInputStream reader = new FileInputStream(file)) { - int b; - while ((b = reader.read()) != -1) { - stream.write(b); - } - } catch (Exception e) { - e.printStackTrace(); - } - hScroll(); - } + public SubLogger getLogger() { + return logger; } @Override @@ -715,7 +762,7 @@ public final class ConsoleWindow implements SubLogFilter { public void destroy() { close(); - running = false; + thread.shutdown(); logger.unregisterFilter(this); if (filewriter != null) try { filewriter.close(); @@ -724,6 +771,13 @@ public final class ConsoleWindow implements SubLogFilter { KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(keys); } + private void hScroll() { + hScroll.setMaximum(vScroll.getHorizontalScrollBar().getMaximum()); + hScroll.setMinimum(vScroll.getHorizontalScrollBar().getMinimum()); + hScroll.setVisibleAmount(vScroll.getHorizontalScrollBar().getVisibleAmount()); + hScroll.setVisible(input.isVisible() && hScroll.getVisibleAmount() < hScroll.getMaximum()); + } + private void find(boolean direction) { if (!direction) findI -= findO + 1; String find = findT.getText().toLowerCase(); @@ -887,6 +941,7 @@ public final class ConsoleWindow implements SubLogFilter { private class AnsiUIOutputStream extends HTMLogger { public AnsiUIOutputStream(OutputStream raw, OutputStream wrapped) { super(raw, wrapped); + nbsp = true; } public void ansi(boolean value) { @@ -908,7 +963,8 @@ public final class ConsoleWindow implements SubLogFilter { if (ansi) spost.add(new Runnable() { @Override public void run() { - log.setText(RESET_VALUE); + ConsoleWindow.this.clear(); + ConsoleWindow.this.hScroll(); } }); } @@ -940,11 +996,11 @@ public final class ConsoleWindow implements SubLogFilter { } } private class SmartScroller implements AdjustmentListener { - public final static int HORIZONTAL = 0; - public final static int VERTICAL = 1; + private final static int HORIZONTAL = 0; + private final static int VERTICAL = 1; - public final static int START = 0; - public final static int END = 1; + private final static int START = 0; + private final static int END = 1; private int viewportPosition; diff --git a/SubServers.Console/src/net/ME1312/SubServers/Console/Library/HTMLogger.java b/SubServers.Console/src/net/ME1312/SubServers/Console/Library/HTMLogger.java index 0e0bc168..3d383411 100644 --- a/SubServers.Console/src/net/ME1312/SubServers/Console/Library/HTMLogger.java +++ b/SubServers.Console/src/net/ME1312/SubServers/Console/Library/HTMLogger.java @@ -1,82 +1,74 @@ package net.ME1312.SubServers.Console.Library; import net.ME1312.Galaxi.Library.Container.Container; -import net.ME1312.Galaxi.Library.Container.Value; import org.fusesource.jansi.AnsiOutputStream; +import java.awt.*; import java.io.IOException; import java.io.OutputStream; import java.util.LinkedList; +import java.util.Locale; + +import static java.nio.charset.StandardCharsets.UTF_8; -/** - * HTML Log Stream Class - */ public class HTMLogger extends AnsiOutputStream { private static final String[] ANSI_COLOR_MAP = new String[]{"000000", "cd0000", "25bc24", "d7d700", "0000c3", "be00be", "00a5dc", "cccccc"}; private static final String[] ANSI_BRIGHT_COLOR_MAP = new String[]{"808080", "ff0000", "31e722", "ffff00", "0000ff", "ff00ff", "00c8ff", "ffffff"}; - private static final byte[] BYTES_NBSP = " ".getBytes(); - private static final byte[] BYTES_QUOT = """.getBytes(); - private static final byte[] BYTES_AMP = "&".getBytes(); - private static final byte[] BYTES_LT = "<".getBytes(); - private static final byte[] BYTES_GT = ">".getBytes(); - private LinkedList closingAttributes = new LinkedList(); + private static final byte[] BYTES_NBSP = "\u00A0".getBytes(UTF_8); + private static final byte[] BYTES_AMP = "&".getBytes(UTF_8); + private static final byte[] BYTES_LT = "<".getBytes(UTF_8); + private LinkedList currentAttributes = new LinkedList(); + private LinkedList queue = new LinkedList(); private OutputStream raw; protected boolean ansi = true; + protected boolean nbsp = false; private boolean underline = false; private boolean strikethrough = false; - /** - * Parse data from an OutputStream - * - * @param raw OutputStream - * @return HTMLogger - */ public static HTMLogger wrap(OutputStream raw) { return wrap(raw, new HTMConstructor() { @Override - public HTMLogger construct(OutputStream raw1, OutputStream wrapped) { - return new HTMLogger(raw1, wrapped); + public HTMLogger construct(OutputStream raw, OutputStream wrapped) { + return new HTMLogger(raw, wrapped); } }); } - /** - * Parse data from an OutputStream - * - * @param raw OutputStream - * @param constructor Implementing Constructor - * @param Logger Type - * @return HTMLogger - */ public static T wrap(final OutputStream raw, HTMConstructor constructor) { - final Value html = new Container(null); + final Container html = new Container(null); html.value(constructor.construct(raw, new OutputStream() { private boolean nbsp = false; @Override public void write(int data) throws IOException { + HTMLogger htm = html.value(); + if (htm.queue.size() > 0) { + LinkedList queue = htm.queue; + htm.queue = new LinkedList<>(); + for (String attr : queue) { + htm.write('<' + attr + '>'); + htm.currentAttributes.addFirst(attr); + } + } + if (data == 32) { - if (nbsp) raw.write(BYTES_NBSP); - else raw.write(data); - nbsp = !nbsp; + if (htm.nbsp) { + if (nbsp) raw.write(BYTES_NBSP); + else raw.write(data); + nbsp = !nbsp; + } else raw.write(data); } else { nbsp = false; switch(data) { - case 34: - raw.write(BYTES_QUOT); - break; - case 38: + case '&': raw.write(BYTES_AMP); break; - case 60: + case '<': raw.write(BYTES_LT); break; - case 62: - raw.write(BYTES_GT); - break; - case 10: - html.value().closeAttributes(); + case '\n': + htm.closeAttributes(); default: raw.write(data); } @@ -85,7 +77,7 @@ public class HTMLogger extends AnsiOutputStream { })); return html.value(); } - protected HTMLogger(final OutputStream raw, OutputStream wrapped) { + public HTMLogger(final OutputStream raw, OutputStream wrapped) { super(wrapped); this.raw = raw; } @@ -94,46 +86,62 @@ public class HTMLogger extends AnsiOutputStream { } private void write(String s) throws IOException { - raw.write(s.getBytes()); + raw.write(s.getBytes(UTF_8)); } - private void writeAttribute(String s) throws IOException { - write("<" + s + ">"); - closingAttributes.add(0, s); + private void writeAttribute(String attr) throws IOException { + queue.add(attr); } - protected void closeAttribute(String s) throws IOException { + public void closeAttribute(String s) throws IOException { + + // Try to remove a tag that doesn't exist yet first + String[] queue = this.queue.toArray(new String[0]); + for (int i = queue.length; i > 0;) { + String attr = queue[--i]; + if (attr.toLowerCase().startsWith(s.toLowerCase())) { + this.queue.removeLastOccurrence(attr); + return; + } + } + + // Close a tag that we've already written LinkedList closedAttributes = new LinkedList(); - LinkedList closingAttributes = new LinkedList(); + LinkedList currentAttributes = new LinkedList(this.currentAttributes); LinkedList unclosedAttributes = new LinkedList(); - closingAttributes.addAll(closingAttributes); - for (String attr : closingAttributes) { + for (String attr : currentAttributes) { if (attr.toLowerCase().startsWith(s.toLowerCase())) { for (String a : unclosedAttributes) { - closedAttributes.add(0, a); - write(""); + closedAttributes.add(a); + this.currentAttributes.removeFirst(); + write("'); } - closingAttributes.removeFirstOccurrence(attr); unclosedAttributes.clear(); - write(""); + this.currentAttributes.removeFirst(); + write("'); + break; } else { unclosedAttributes.add(attr); } } + + // Queue unrelated tags to be re-opened for (String attr : closedAttributes) { - write("<" + attr + ">"); + this.queue.addFirst(attr); } } - protected void closeAttributes() throws IOException { - for (String attr : closingAttributes) { + public void closeAttributes() throws IOException { + queue.clear(); + + for (String attr : currentAttributes) { write(""); } underline = false; strikethrough = false; - closingAttributes.clear(); + currentAttributes.clear(); } @Override @@ -141,13 +149,13 @@ public class HTMLogger extends AnsiOutputStream { super.processDeleteLine(amount); } - private String parseTextDecoration() { + private void renderTextDecoration() throws IOException { String dec = ""; if (underline) dec += " underline"; if (strikethrough) dec += " line-through"; - if (dec.length() <= 0) dec += " none"; - return dec.substring(1); + closeAttribute("span style=\"text-decoration:"); + if (dec.length() != 0) writeAttribute("span style=\"text-decoration:" + dec.substring(1) + "\""); } @Override @@ -162,14 +170,12 @@ public class HTMLogger extends AnsiOutputStream { writeAttribute("i"); break; case 4: - closeAttribute("span class=\"ansi-decoration"); underline = true; - writeAttribute("span class=\"ansi-decoration\" style=\"text-decoration: " + parseTextDecoration() + ";\""); + renderTextDecoration(); break; case 9: - closeAttribute("span class=\"ansi-decoration"); strikethrough = true; - writeAttribute("span class=\"ansi-decoration\" style=\"text-decoration: " + parseTextDecoration() + ";\""); + renderTextDecoration(); break; case 22: closeAttribute("b"); @@ -178,14 +184,23 @@ public class HTMLogger extends AnsiOutputStream { closeAttribute("i"); break; case 24: - closeAttribute("span class=\"ansi-decoration"); underline = false; - writeAttribute("span class=\"ansi-decoration\" style=\"text-decoration: " + parseTextDecoration() + ";\""); + renderTextDecoration(); break; case 29: - closeAttribute("span class=\"ansi-decoration"); strikethrough = false; - writeAttribute("span class=\"ansi-decoration\" style=\"text-decoration: " + parseTextDecoration() + ";\""); + renderTextDecoration(); + break; + case 73: + closeAttribute("su"); + writeAttribute("sup"); + break; + case 74: + closeAttribute("su"); + writeAttribute("sub"); + break; + case 75: + closeAttribute("su"); break; } } @@ -193,24 +208,30 @@ public class HTMLogger extends AnsiOutputStream { @Override protected void processUnknownOperatingSystemCommand(int label, String arg) { try { - if (ansi) switch (label) { - case 99900: // Galaxi Console Exclusives 99900-99999 - closeAttribute("a"); - writeAttribute("a href=\"" + arg + "\" target=\"_blank\""); - break; - case 99901: - closeAttribute("a"); - break; + if (ansi && label == 8) { + closeAttribute("a"); + String[] args = arg.split(";", 3); + if (args.length > 1 && args[1].length() > 0 && allowHyperlink(args[1])) { + writeAttribute("a href=\"" + args[1].replace("&", "&").replace("<", "<").replace("\"", """) + "\" target=\"_blank\""); + } } } catch (Exception e) {} } + protected boolean allowHyperlink(String link) { + if (link.toLowerCase(Locale.ENGLISH).startsWith("mailto:execute@galaxi.engine")) { + return false; + } else { + return true; + } + } + @Override protected void processAttributeRest() throws IOException { closeAttributes(); } - private String parse8BitColor(int color) throws IOException { + private String parse256(int color) throws IOException { if (color < 8) { return ANSI_COLOR_MAP[color]; } else if (color < 16) { @@ -230,7 +251,7 @@ public class HTMLogger extends AnsiOutputStream { @Override protected void processDefaultTextColor() throws IOException { - closeAttribute("span class=\"ansi-foreground"); + closeAttribute("span style=\"color:"); } @Override @@ -242,7 +263,8 @@ public class HTMLogger extends AnsiOutputStream { protected void processSetForegroundColor(int color, boolean bright) throws IOException { if (ansi) { processDefaultTextColor(); - writeAttribute("span class=\"ansi-foreground\" style=\"color: #" + ((!bright)?ANSI_COLOR_MAP:ANSI_BRIGHT_COLOR_MAP)[color] + ";\""); + writeAttribute("span style=\"color:#" + ((!bright)?ANSI_COLOR_MAP:ANSI_BRIGHT_COLOR_MAP)[color] + "\""); + renderTextDecoration(); } } @@ -250,7 +272,8 @@ public class HTMLogger extends AnsiOutputStream { protected void processSetForegroundColorExt(int index) throws IOException { if (ansi) { processDefaultTextColor(); - writeAttribute("span class=\"ansi-foreground\" style=\"color: #" + parse8BitColor(index) + ";\""); + writeAttribute("span style=\"color:#" + parse256(index) + "\""); + renderTextDecoration(); } } @@ -258,13 +281,14 @@ public class HTMLogger extends AnsiOutputStream { protected void processSetForegroundColorExt(int r, int g, int b) throws IOException { if (ansi) { processDefaultTextColor(); - writeAttribute("span class=\"ansi-foreground\" style=\"color: #" + ((r >= 16)?"":"0") + Integer.toString(r, 16) + ((g >= 16)?"":"0") + Integer.toString(g, 16) + ((b >= 16)?"":"0") + Integer.toString(b, 16) + ";\""); + writeAttribute("span style=\"color:#" + ((r >= 16)?"":"0") + Integer.toString(r, 16) + ((g >= 16)?"":"0") + Integer.toString(g, 16) + ((b >= 16)?"":"0") + Integer.toString(b, 16) + "\""); + renderTextDecoration(); } } @Override protected void processDefaultBackgroundColor() throws IOException { - closeAttribute("span class=\"ansi-background"); + closeAttribute("span style=\"background-color:"); } @Override @@ -276,7 +300,7 @@ public class HTMLogger extends AnsiOutputStream { protected void processSetBackgroundColor(int color, boolean bright) throws IOException { if (ansi) { processDefaultBackgroundColor(); - writeAttribute("span class=\"ansi-background\" style=\"background-color: #" + ((!bright)?ANSI_COLOR_MAP:ANSI_BRIGHT_COLOR_MAP)[color] + ";\""); + writeAttribute("span style=\"background-color:#" + ((!bright)?ANSI_COLOR_MAP:ANSI_BRIGHT_COLOR_MAP)[color] + "\""); } } @@ -284,7 +308,7 @@ public class HTMLogger extends AnsiOutputStream { protected void processSetBackgroundColorExt(int index) throws IOException { if (ansi) { processDefaultBackgroundColor(); - writeAttribute("span class=\"ansi-background\" style=\"background-color: #" + parse8BitColor(index) + ";\""); + writeAttribute("span style=\"background-color:#" + parse256(index) + "\""); } } @@ -292,10 +316,16 @@ public class HTMLogger extends AnsiOutputStream { protected void processSetBackgroundColorExt(int r, int g, int b) throws IOException { if (ansi) { processDefaultBackgroundColor(); - writeAttribute("span class=\"ansi-background\" style=\"background-color: #" + ((r >= 16)?"":"0") + Integer.toString(r, 16) + ((g >= 16)?"":"0") + Integer.toString(g, 16) + ((b >= 16)?"":"0") + Integer.toString(b, 16) + ";\""); + writeAttribute("span style=\"background-color:#" + ((r >= 16)?"":"0") + Integer.toString(r, 16) + ((g >= 16)?"":"0") + Integer.toString(g, 16) + ((b >= 16)?"":"0") + Integer.toString(b, 16) + "\""); } } + @Override + public void flush() throws IOException { + super.flush(); + raw.flush(); + } + @Override public void close() throws IOException { closeAttributes();