redhat-developer / redhat-developer/vscode-java

Code formatter does not support additive operator preferences

Offen
#931 8 Kommentare 0 Reaktionen 1 zugewiesene Person Auf GitHub ansehen

@snjeza arbeitet bereits daran.

Seit 21.5.2019.

bug formatter
Vorherrschende Sprache
TypeScript
Sterne
2.3k
Forks
546
Ø Merge
20 Std. 1 Min.
Gemergte PRs (30 T.)
11

Beschreibung

Eclipse code formatting supports a setting that wraps lines after the string concatenation operator (+), along with column formatting that aligns text with one element per line:

public enum SqlQuery {
    createChatSchema( "CREATE SCHEMA IF NOT EXISTS chat;" +
                      "ALTER SCHEMA chat" +
                      "    OWNER TO postgres;" +
                      "CREATE TABLE IF NOT EXISTS chat.messages_as_json" +
                      " (id BIGSERIAL PRIMARY KEY, message JSON NOT NULL);" ),
    // leaving out constructor, etc.
}
Environment

Version: 1.34.0 (user setup)
Commit: a622c65b2c713c890fcf4fbf07cf34049d5fe758
Date: 2019-05-15T21:59:37.030Z
Electron: 3.1.8
Chrome: 66.0.3359.181
Node.js: 10.2.0
V8: 6.6.346.32
OS: Windows_NT x64 10.0.18898

Java extension version: 0.7.1

Steps To Reproduce
  1. Export eclipse code style with:
  • string concatenation wrap after operator
  • wrap all elements, one per line
  1. export settings from eclipse
  2. set vscode url to point at the exported settings
  3. create a type that defines a String that includes wrapping.
  4. auto format the file
Current Result
public enum SqlQuery {
    createChatSchema("CREATE SCHEMA IF NOT EXISTS chat;" + "ALTER SCHEMA chat" + "    OWNER TO postgres;"
            + "CREATE TABLE IF NOT EXISTS chat.messages_as_json"
            + " (id BIGSERIAL PRIMARY KEY, message JSON NOT NULL);"),
Expected Result
public enum SqlQuery {
    createChatSchema( "CREATE SCHEMA IF NOT EXISTS chat;" +
                      "ALTER SCHEMA chat" +
                      "    OWNER TO postgres;" +
                      "CREATE TABLE IF NOT EXISTS chat.messages_as_json" +
                      " (id BIGSERIAL PRIMARY KEY, message JSON NOT NULL);" ),
    // leaving out constructor, etc.
}

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.