From 0ab9e8b4e32f24765b5cc71240164e5517b990a5 Mon Sep 17 00:00:00 2001 From: Sergey Evdokimov Date: Thu, 8 Sep 2011 18:59:51 +0400 Subject: [PATCH] IDEA should ignore word "grails" in begin of command. --- .../jetbrains/plugins/groovy/mvc/MvcRunTargetDialog.java | 8 ++++++++ .../groovy/mvc/util/MvcTargetDialogCompletionUtils.java | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/MvcRunTargetDialog.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/MvcRunTargetDialog.java index b8e2a57df1fd..818f82928738 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/MvcRunTargetDialog.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/MvcRunTargetDialog.java @@ -41,6 +41,8 @@ import java.util.List; public class MvcRunTargetDialog extends DialogWrapper { + private static final String GRAILS_PREFIX = "grails "; + private JPanel contentPane; private JLabel myTargetLabel; private JPanel myFakePanel; @@ -109,6 +111,12 @@ public class MvcRunTargetDialog extends DialogWrapper { public String[] getTargetArguments() { String text = getSelectedText(); + + text = text.trim(); + if (text.startsWith(GRAILS_PREFIX)) { + text = text.substring(GRAILS_PREFIX.length()); + } + Iterable iterable = StringUtil.tokenize(text, " "); ArrayList args = new ArrayList(); for (String s : iterable) { diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/util/MvcTargetDialogCompletionUtils.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/util/MvcTargetDialogCompletionUtils.java index 67406cfc0b37..0fdeacf83945 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/util/MvcTargetDialogCompletionUtils.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/mvc/util/MvcTargetDialogCompletionUtils.java @@ -78,7 +78,7 @@ public class MvcTargetDialogCompletionUtils { List res = new ArrayList(); - if (text.substring(0, offset).matches("\\s*(?:(:?-\\S+|dev|prod|test)\\s+)*\\S*")) { + if (text.substring(0, offset).matches("\\s*(grails\\s*)?(?:(:?-\\S+|dev|prod|test)\\s+)*\\S*")) { // Complete command name because command name is not typed. for (String completionVariant : getAllTargetNames(module)) { res.add(TailTypeDecorator.withTail(LookupElementBuilder.create(completionVariant), TailType.SPACE));