@Override
    public void append(@NotNull String fragment, @NotNull SimpleTextAttributes attributes, boolean isMainText) {
      if (mySelected) {
        super.append(fragment, new SimpleTextAttributes(attributes.getStyle(), mySelectionForeground), isMainText);
      }
      else if (attributes.getFgColor() == null) {
        super.append(fragment, attributes.derive(-1, myForeground, null, null), isMainText);
      }
      else {
        super.append(fragment, attributes, isMainText);
      }
    }
@Override
    public void append(@NotNull String fragment, @NotNull SimpleTextAttributes attributes, boolean isMainText)