From 7907325b3ca054af0b8359a65c2c814c3fb187c1 Mon Sep 17 00:00:00 2001 From: Anas Elgarhy Date: Fri, 10 Jun 2022 18:05:33 +0200 Subject: [PATCH] Solve the problem that the icons are colored even after using the '--no-colors' option --- src/main/java/com/anas/javautils/jls/output/FileInfo.java | 2 +- src/main/java/com/anas/javautils/jls/output/Icon.java | 4 ++++ src/main/java/com/anas/javautils/jls/output/ListOfFiles.java | 3 ++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/anas/javautils/jls/output/FileInfo.java b/src/main/java/com/anas/javautils/jls/output/FileInfo.java index 92c3443..845bdf5 100644 --- a/src/main/java/com/anas/javautils/jls/output/FileInfo.java +++ b/src/main/java/com/anas/javautils/jls/output/FileInfo.java @@ -140,7 +140,7 @@ public String getCreationTime(final boolean withColor) { return withColor ? str.toString() : str.getNormalString(); } - public Icon getIcon(final boolean withColor) { + public Icon getIcon() { Icon icon = Icon.getCorrectIcon(getName()); if (icon != null) return icon; diff --git a/src/main/java/com/anas/javautils/jls/output/Icon.java b/src/main/java/com/anas/javautils/jls/output/Icon.java index e8c4687..2fd2c5c 100644 --- a/src/main/java/com/anas/javautils/jls/output/Icon.java +++ b/src/main/java/com/anas/javautils/jls/output/Icon.java @@ -317,4 +317,8 @@ public String toString() { new String(color.getForegroundSGRSequence(), StandardCharsets.UTF_8) + "m" + icon + "\033[0m"; } + + public String getNoColoredIcon() { + return icon + ""; + } } diff --git a/src/main/java/com/anas/javautils/jls/output/ListOfFiles.java b/src/main/java/com/anas/javautils/jls/output/ListOfFiles.java index 7e61802..be03c3a 100644 --- a/src/main/java/com/anas/javautils/jls/output/ListOfFiles.java +++ b/src/main/java/com/anas/javautils/jls/output/ListOfFiles.java @@ -119,7 +119,8 @@ private String getShortFormat( (withSize ? " %s" : "%s"); return String.format(format, - IS_NO_ICONS ? "" : fileInfo.getIcon(IS_WITH_NO_COLORS), + IS_NO_ICONS ? "" : (IS_WITH_NO_COLORS ? + fileInfo.getIcon().toString() : fileInfo.getIcon().getNoColoredIcon()), fileInfo.getName(IS_WITH_NO_COLORS), fileInfo.isSymlink() ? fileInfo.getSymlinkTarget(IS_WITH_NO_COLORS) : "", withSize ? fileInfo.getSize(IS_HUMAN_READABLE, IS_WITH_NO_COLORS) : ""