microsoft / microsoft/vscode-java-pack

Feature request: Improve output console color scheme

Open
#1,127 11 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

ai-triaged discussion enhancement feature-request spring ux
Dominant language
TypeScript
Stars
352
Forks
166
Avg merge
17h 47m
Merged PRs (30d)
32

Description

For Spring Boot projects, the debug output console should have a nice coloring theme by default, which is not the case currently.
With default settings, all text is a single color which is not very readable.
There is a related StackOverflow question regarding this: https://stackoverflow.com/questions/62280290/provide-color-theme-to-the-java-process-console-in-the-terminal-of-vscode-whil

Currently, there are two (easy, but not scalable) ways how to achieve the desired coloring:

  1. Add spring.output.ansi.enabled=ALWAYS to application.properties file -> The issue with this approach is that it has to be set up for each project and it just adds unnecessary complexity to application.properties.
  2. Add "args": "--spring.output.ansi.enabled=ALWAYS" in launch.json -> This issue with this approach is that it also needs to be set up per-project basis and it is not so easy to share configuration as .vscode directory is not within version control scope.

Proposed Solution
I suggest a solution that VS Code pass "args": "--spring.output.ansi.enabled=ALWAYS" by default for Spring Boot projects. There should be an option to control it (on/off) maybe within settings.json

Before
before
After
after

@nickzhums Please review.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how the Java extension handles Spring Boot launch configurations and how arguments from launch.json are assembled; compare the application.properties and launch.json approaches described here. Define the settings.json on/off behavior, then verify that a Spring Boot project receives ANSI output by default and that the option can disable it.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spring-boot, typescript, vscode
Domain
developer-experience, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.