From 221f557fde0bcfeacf7ab48d1d9ca8e71ecdab65 Mon Sep 17 00:00:00 2001 From: peter Date: Mon, 21 Nov 2016 17:41:49 +0100 Subject: [PATCH] IDEA-162418 Enhanced go to file formats --- .../testSrc/com/intellij/navigation/ChooseByNameTest.groovy | 2 ++ .../com/intellij/ide/util/gotoByName/ChooseByNamePopup.java | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy b/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy index a577b0ae8780..af428552e4f4 100644 --- a/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy +++ b/java/java-tests/testSrc/com/intellij/navigation/ChooseByNameTest.groovy @@ -238,6 +238,8 @@ class Intf { assert getPopupElements(model, 'Bar(2)') == [file] assert getPopupElements(model, 'Bar on line 2') == [file] assert getPopupElements(model, 'Bar at line 2') == [file] + assert getPopupElements(model, 'Bar 2:39') == [file] + assert getPopupElements(model, 'Bar#L2') == [file] } void "test dollar"() { diff --git a/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java b/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java index d9efb1a22f7a..0b9ae7e81df2 100644 --- a/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java +++ b/platform/lang-impl/src/com/intellij/ide/util/gotoByName/ChooseByNamePopup.java @@ -338,8 +338,8 @@ public class ChooseByNamePopup extends ChooseByNameBase implements ChooseByNameP } private static final Pattern patternToDetectLinesAndColumns = Pattern.compile("(.+?)" + // name, non-greedy matching - "(?::|@|,| on line | at line |:?\\(|:?\\[)" + // separator - "(\\d+)?(?:(?:\\D)(\\d+)?)?" + // line + column + "(?::|@|,| |#L| on line | at line |:?\\(|:?\\[)" + // separator + "(\\d+)(?:(?:\\D)(\\d+)?)?" + // line + column "[)\\]]?" // possible closing paren/brace ); public static final Pattern patternToDetectAnonymousClasses = Pattern.compile("([\\.\\w]+)((\\$[\\d]+)*(\\$)?)"); @@ -353,7 +353,7 @@ public class ChooseByNamePopup extends ChooseByNameBase implements ChooseByNameP public static String getTransformedPattern(String pattern, ChooseByNameModel model) { Pattern regex = null; - if (StringUtil.containsAnyChar(pattern, ":,;@[(") || pattern.contains(" line ")) { // quick test if reg exp should be used + if (StringUtil.containsAnyChar(pattern, ":,;@[( #") || pattern.contains(" line ")) { // quick test if reg exp should be used regex = patternToDetectLinesAndColumns; }