如何突出IntelliJ Idea中方法参数的用法?

时间:2014-06-24 07:43:36

标签: intellij-idea syntax-highlighting highlight

我知道编辑器中有一个设置 - >突出了插入运动 - > 突出显示插入符号中元素的用法

但似乎它突出了方法体中除方法参数之外的所有其他内容。 我怎么能克服这个?

ps:我使用Darcula主题

1 个答案:

答案 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项目中创建新的类文件吗?也许它与源或项目有关。