[i18n] Externalize presentable names of ShortenCommandLine
authorTagir Valeev <Tagir.Valeev@jetbrains.com>
Tue, 11 Aug 2020 03:34:43 +0000 (10:34 +0700)
committerintellij-monorepo-bot <intellij-monorepo-bot-no-reply@jetbrains.com>
Tue, 11 Aug 2020 03:45:00 +0000 (03:45 +0000)
GitOrigin-RevId: 4db5484e6f014da5939d7d7910aca195151ff02a

platform/lang-api/resources/messages/LangBundle.properties
platform/lang-api/src/com/intellij/execution/ShortenCommandLine.java
platform/lang-api/src/com/intellij/lang/LangBundle.java

index 583fa0bcb5cb691146bff737eeee949ed687702f..e40cc7f5b855c0c65b0f8063eddfdcdac66e8d61 100644 (file)
@@ -325,4 +325,8 @@ action.ReaderModeProvider.text.exit=Exit Reader Mode
 action.ReaderModeProvider.link.configure=Configure...
 action.ReaderModeProvider.description=Make the code convenient to read by showing documentation as formatted text, font ligatures, code vision hints with the number of usages, and more
 label.local.variable=Local variable {0}
-indent.option.detected=Detected
\ No newline at end of file
+indent.option.detected=Detected
+shorten.command.line.method.none=none
+shorten.command.line.method.jar.manifest=JAR manifest
+shorten.command.line.method.classpath.file=classpath file
+shorten.command.line.method.argfile=@argfile (Java 9+)
\ No newline at end of file
index 6af5fec7eca8a3b9ddd426e4063760fe9e364b9f..5be80b1466231326f6436203b3dba6a2a1505ad6 100644 (file)
@@ -1,12 +1,15 @@
 // Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
 package com.intellij.execution;
 
+import com.intellij.lang.LangBundle;
 import com.intellij.openapi.project.Project;
 import com.intellij.openapi.projectRoots.JdkUtil;
 import com.intellij.openapi.util.NlsContexts;
+import com.intellij.openapi.util.NlsSafe;
 import org.jdom.Element;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
+import org.jetbrains.annotations.PropertyKey;
 
 /**
  * <p>Command line has length limit depending on used OS. In order to allow java command lines of any length for any OS,
@@ -16,26 +19,26 @@ import org.jetbrains.annotations.Nullable;
  * e.g. {@link com.intellij.execution.application.JvmMainMethodRunConfigurationOptions#getShortenClasspath()}.</p>
  */
 public enum ShortenCommandLine {
-  NONE("none", "java [options] className [args]"),
-  MANIFEST("JAR manifest", "java -cp classpath.jar className [args]"),
-  CLASSPATH_FILE("classpath file", "java WrapperClass classpathFile className [args]") {
+  NONE("shorten.command.line.method.none", "java [options] className [args]"),
+  MANIFEST("shorten.command.line.method.jar.manifest", "java -cp classpath.jar className [args]"),
+  CLASSPATH_FILE("shorten.command.line.method.classpath.file", "java WrapperClass classpathFile className [args]") {
     @Override
     public boolean isApplicable(String jreRoot) {
       return jreRoot == null || !JdkUtil.isModularRuntime(jreRoot);
     }
   },
-  ARGS_FILE("@argfile (Java 9+)", "java @argfile className [args]") {
+  ARGS_FILE("shorten.command.line.method.argfile", "java @argfile className [args]") {
     @Override
     public boolean isApplicable(String jreRoot) {
       return jreRoot != null && JdkUtil.isModularRuntime(jreRoot);
     }
   };
 
-  private final @NlsContexts.Label String myPresentableName;
-  private final @NlsContexts.Label String myDescription;
+  private final @PropertyKey(resourceBundle = LangBundle.BUNDLE) String myNameKey;
+  private final @NlsSafe String myDescription;
 
-  ShortenCommandLine(@NlsContexts.Label String presentableName, @NlsContexts.Label String description) {
-    myPresentableName = presentableName;
+  ShortenCommandLine(@PropertyKey(resourceBundle = LangBundle.BUNDLE) String nameKey, @NlsSafe String description) {
+    myNameKey = nameKey;
     myDescription = description;
   }
 
@@ -48,7 +51,7 @@ public enum ShortenCommandLine {
   }
 
   public @NlsContexts.Label String getPresentableName() {
-    return myPresentableName;
+    return LangBundle.message(myNameKey);
   }
 
   public static @NotNull ShortenCommandLine getDefaultMethod(@Nullable Project project, String rootPath) {
index 92a4f9fc29cb0358d4572e30063d781bd0599459..2973c739c4f1dfab856d34a11165e1136c2462ae 100644 (file)
@@ -11,7 +11,7 @@ import org.jetbrains.annotations.PropertyKey;
 import java.util.function.Supplier;
 
 public final class LangBundle extends DynamicBundle {
-  @NonNls private static final String BUNDLE = "messages.LangBundle";
+  @NonNls public static final String BUNDLE = "messages.LangBundle";
   private static final LangBundle INSTANCE = new LangBundle();
 
   private LangBundle() {