mihnita / ansi-econsole

Eclipse plugin that understands ANSI escape sequences to color the Eclipse console output.

Home Page:http://www.mihai-nita.net/java/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Stack Trace coloring no longer working

XtinctElise opened this issue · comments

When the ANSI Escape in Console is enabled, the stack trace output blue coloring and underline that denotes a hyperlink quits working. You can still click on the hyperlink but it appears as standard black text and new users do not realize it is clickable.

How can we still display the underlined blue hyperlinks for the stack trace with ANSI Escape in Console enabled?

Thank you, I will take a look.

Same here, Eclipse 2019-09.

Not sure whether this is directly related, but when running Maven builds (for instance this library), I'm seeing a lot of incorrect blue line colouring in the output:

Screenshot 2020-01-17 at 13 33 48

Similar effects observed as @PyvesB reports. I will add that not only are the black and blue colors being displayed incorrectly, the colors are actually 'unstable'. Every time a error message is printed that should normally get the hyperlink/underline, the black and blue colors are changing in a somewhat unpredictable way (some stuff that was black becomes blue and vice versa).

I was able to reproduce this by running some code that deliberately logs stuff that 'looks like' an error message. Here's my test code (it's the main method of a very simple maven/spring-boot app).

package com.example.demo;
import java.util.Random;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
@SpringBootApplication
@EnableScheduling
public class VmargDumperApplication {
	Random rnd = new Random();
	private static final Logger log = LoggerFactory.getLogger(VmargDumperApplication.class);
	public static void main(String[] args) {
		SpringApplication.run(VmargDumperApplication.class, args);
	}
	@Scheduled(fixedRate = 200)
	public void doStuff() {
		int x = rnd.nextInt(8);
		if (x==0) {
			log.error("java.lang.IllegalArgumentException: test");
		}
		log.info("Stuff = "+x);
	}
}

Full zip of the test project:
vmarg-dumper.zip

Import this as a 'Existing Maven Project' or 'Existing Project'. Then run the main class with ansi console enabled.

You will see that every time the message java.lang.IllegalArgumentException: test is printed the black and blue colors on the screen are jumping around (other colors seem to remain correct).

More info: Observed this during testing of (about to be released) STS 4.5.1 which is based on Eclipse 4.14.

Fixed by version 1.4.0.202001252332

I've updated to the latest version, looks great so far, thanks @mihnita !