From 588b10864a93a9abc6d8dc9187851cf615967eb5 Mon Sep 17 00:00:00 2001 From: cushon Date: Fri, 18 May 2018 15:44:53 -0700 Subject: [PATCH] Don't add spaces to `//$NON-NLS-x$` comments Fixes #221 MOE_MIGRATED_REVID=197211890 --- .../google/googlejavaformat/java/JavaCommentsHelper.java | 4 +++- .../com/google/googlejavaformat/java/testdata/i221.input | 8 ++++++++ .../com/google/googlejavaformat/java/testdata/i221.output | 8 ++++++++ 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.input create mode 100644 core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.output diff --git a/core/src/main/java/com/google/googlejavaformat/java/JavaCommentsHelper.java b/core/src/main/java/com/google/googlejavaformat/java/JavaCommentsHelper.java index 2b9696058..c4eca03c0 100644 --- a/core/src/main/java/com/google/googlejavaformat/java/JavaCommentsHelper.java +++ b/core/src/main/java/com/google/googlejavaformat/java/JavaCommentsHelper.java @@ -102,8 +102,10 @@ private String indentLineComments(List lines, int column0) { return builder.toString(); } + // Preserve special `//noinspection` and `//$NON-NLS-x$` comments used by IDEs, which cannot + // contain leading spaces. private static final Pattern LINE_COMMENT_MISSING_SPACE_PREFIX = - Pattern.compile("^(//+)(?!noinspection)[^\\s/]"); + Pattern.compile("^(//+)(?!noinspection|\\$NON-NLS-\\d+\\$)[^\\s/]"); private List wrapLineComments( List lines, int column0, JavaFormatterOptions options) { diff --git a/core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.input b/core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.input new file mode 100644 index 000000000..6320a38ec --- /dev/null +++ b/core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.input @@ -0,0 +1,8 @@ +class I221 { + { + logger.log( + Level.WARNING, + "Unable to obtain jst.web facet version from selected project", //$NON-NLS-1$ + ex); + } +} diff --git a/core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.output b/core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.output new file mode 100644 index 000000000..6320a38ec --- /dev/null +++ b/core/src/test/resources/com/google/googlejavaformat/java/testdata/i221.output @@ -0,0 +1,8 @@ +class I221 { + { + logger.log( + Level.WARNING, + "Unable to obtain jst.web facet version from selected project", //$NON-NLS-1$ + ex); + } +}