问题 告诉Eclipse只自动完成方法名称?


假设我正在编辑一行...

obj.fooBar(x, y, z);

我想将方法​​名称更改为 fooSomethingElse,但保留大部分论点。如果我删除全部或部分名称,然后使用内容辅助,它将完成方法名称,但会启动一个新的arg列表...

obj.fooSomethingElse(arg1, arg2)(x, y, z)
                     ^---- this arg is highlighted for editing

我经常要删除“(arg1,arg2)”。我可以在首选项中关闭“填充方法参数”,然后我只需删除“()”,但它仍然很烦人。是否有另一个命令只能完成方法名称。理想情况下,它只是来自通用内容辅助的单独命令和键组合,因此我可以根据需要调用其中任何一个。


12914
2017-07-09 15:49


起源



答案:


基本上,您正在寻找一种通过内容辅助在插入和替换之间切换的方法。默认行为是插入。通过在选择完成时按住Ctrl键,可以在内容辅助选择对话框内切换此行为。
更多信息 - http://blog.deepakazad.com/2012/06/jdt-tip-toggle-between-inserting-and.html


15
2017-07-09 15:56



在我阅读问题时想到你的博客文章...... - Bananeweizen
是的,当我按下Enter键时按下控制按钮,选择其中一种方法,它就能完成我想要的操作。谢谢。 - Rob N
你是个圣徒。 - shieldstroy
我发现IntelliJ方法更容易使用:输入insert,tab to just replace(这种方式很耗时) - Sudip Bhandari


答案:


基本上,您正在寻找一种通过内容辅助在插入和替换之间切换的方法。默认行为是插入。通过在选择完成时按住Ctrl键,可以在内容辅助选择对话框内切换此行为。
更多信息 - http://blog.deepakazad.com/2012/06/jdt-tip-toggle-between-inserting-and.html


15
2017-07-09 15:56



在我阅读问题时想到你的博客文章...... - Bananeweizen
是的,当我按下Enter键时按下控制按钮,选择其中一种方法,它就能完成我想要的操作。谢谢。 - Rob N
你是个圣徒。 - shieldstroy
我发现IntelliJ方法更容易使用:输入insert,tab to just replace(这种方式很耗时) - Sudip Bhandari


我想你只需要按Tab键而不是输入来自动完成它。然后它将保留您现有的参数。


0
2017-07-09 15:51



我是Eclipse 4.2,Mac OS,但这不起作用。 Tab只是突出显示弹出列表中的一个方法。 - Rob N
选项卡在Windows中也不起作用,它只是改变焦点。持有CTRL工作正常。 - steffen
这在基于intellij的IDE中运行良好..还没有发现它在eclipse中工作 - Sudip Bhandari