rescript-lang / rescript-lang/rescript

long matches in switch statements mutline-formats records (but moving to next line is better)

Offen
#7,963 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

formatter
Vorherrschende Sprache
OCaml
Sterne
7.5k
Forks
485
Ø Merge
1 T. 2 Std.
Gemergte PRs (30 T.)
55

Beschreibung

switch "" {
| "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" => {a: 1, b: 2, c: 3}
}

formats to:

switch "" {
| "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" => {
    a: 1,
    b: 2,
    c: 3,
  }
}

but this would likely be better:

switch "" {
| "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" =>
  {a: 1, b: 2, c: 3}
}

the formatter won't let you do that, but splits it to multiplie lines again. workaround i use is to add a comment:

switch "" {
| "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" => //
  {a: 1, b: 2, c: 3}
}

minor, but it's still an annoyance

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.

Rechercherichtung

Beginne damit, den Formatter-Einstiegspunkt für switch-Anweisungen und match-Arme zu finden, und reproduziere dann das bereitgestellte Beispiel mit einem langen String. Erledigt ist die Aufgabe, wenn der Formatter einen langen match-Arm in der nächsten Zeile platziert und dessen record kompakt hält, ohne einen Kommentar-Workaround zu erfordern.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
ocaml
Bereich
compilers
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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