Ansi support in ConsoleView


i have a process which makes use of ANSI (via JLine) and IntelliJ seems to have some problems parsing its output.
This is currently how I create the tool-window:

void initToolWindow(@NotNull final Project project,
                    @NotNull final
ToolWindow toolWindow) {

  final TextConsoleBuilder consoleBuilder = TextConsoleBuilderFactory.getInstance().createBuilder(project);
consoleBuilder.addFilter(new ExceptionFilter(GlobalSearchScope.projectScope(project)));

ConsoleView console = consoleBuilder.getConsole();
Content content = toolWindow.getContentManager().getFactory().createContent(console.getComponent(), "", true);



Unfortunately I see some output like this:

[info] Loading project /home/joa/Development/defrac-sample-flutterman/default.settings
[info] Set current project to "Flutterman Sample" (/home/joa/Development/defrac-sample-flutterman)
null   null            >

In fact there are some square characters, not shown in the browser. The escape sequence contains \b characters as well.
In general, there is no problem if I run the app in a normal terminal or even the built-in terminal view. Also colors are not present.
The process handler is created via KillableColoredProcessHandler.create(cmdLine)

Is there a way to use the actual Terminal implementation IntelliJ is using? And if not, is there an option for me to filter the escape sequence?
I tried with addFilter but as far as I understand the API, I am only able to annotate the given input.


Please sign in to leave a comment.