我知道编辑器中有一个设置 - >突出了插入运动 - > 突出显示插入符号中元素的用法。
但似乎它突出了方法体中除方法参数之外的所有其他内容。 我怎么能克服这个?
ps:我使用Darcula主题
答案 0 :(得分:0)
请采用以下示例:
public class Usages {
public static void main(String[] args) {
String s1 = "x", s2 = "y", s3 = "z";
new Usages().foo(s1, s2, s3); // ***
}
public void foo(String a, String b, String c) { }
}
您是否希望将鼠标悬停在标有s1
的行中的***
上,并查看a
的方法参数中突出显示的foo
?
不幸的是,由于方法参数a
本身没有任何用法,因此不会发生这种情况。
你可以验证这一点 - 将光标悬停在a
行的public void foo(String a, String b, String c)
上并点击 alt - f7 ,IntelliJ会说项目文件中没有用法。
这是由于查询用法的性质 - 它们必须根据代码结构的PsiTree
,IntelliJ的内部表示来定义。
相反,如果您将光标悬停在标有s1
的行中的***
上,您会在s1
行突出显示String s1 = "x", s2 = "y", s3 = "z";
,同样,如果您点击 alt - f7 ,IntelliJ将确认上面一行有s1
用法。
顺便提一下,有一个插件可能会让您感兴趣,通过文本等效搜索(而不是PsiTree /查找用法):FindWordAtCaret Plugin
修改强>
这对我有用。我想知道为什么它不适合你? IntelliJ 13.1.1
public void foo(String a, String b, String c) {
String bar = a; // ***
}
(将光标放在标有a
的行的***
上 - a
的{{1}}突出显示。
您可以尝试使用此String a
方法在新的intellij项目中创建新的类文件吗?也许它与源或项目有关。