> I think a neat route would be to use this as an authoring plugin in VS Code, like prettier: write Duper (or JSON5, or whatever),

This actually somewhat works right now. If you pass this JSON5 example through Prettier:

    {
      // comments
      unquoted: 'and you can quote me on that',
      singleQuotes: 'I can use "double quotes" here',
      lineBreaks: "Look, Mom! \
    No \\n's!",
      hexadecimal: 0xdecaf,
      leadingDecimalPoint: .8675309, andTrailing: 8675309.,
      positiveSign: +1,
      trailingComma: 'in objects', andIn: ['arrays',],
      "backwardsCompatible": "with JSON",
    }
You’ll get:

    {
      // comments
      "unquoted": "and you can quote me on that",
      "singleQuotes": "I can use \"double quotes\" here",
      "lineBreaks": "Look, Mom! \
    No \\n's!",
      "hexadecimal": 0xdecaf,
      "leadingDecimalPoint": 0.8675309,
      "andTrailing": 8675309,
      "positiveSign": +1,
      "trailingComma": "in objects",
      "andIn": ["arrays"],
      "backwardsCompatible": "with JSON"
    }
Which is still invalid JSON... but it does fix unquoted keys, floats, trailing comma, and single → double quote strings with correct escaping. So if you have “format on save” enabled in your editor, it might just work!