22

有没有办法禁用 Eclipse 的自动完成功能,该功能在按下空格时会在 Java Content Assist 中插入当前选定的语句?

我仍然希望对输入键有这样的行为(并且只对输入)。

4

4 回答 4

8

自 Eclipse 2018-12 (4.10) 以来,有一个偏好:

Window > Preferences: Java > Editor > Content Assist中选中复选框Disable insert triggers except 'Enter'

也可以看看:

于 2018-12-20T16:57:04.470 回答
3

我知道这是一个老问题,但下面的答案可能会帮助那些通过谷歌来到这里的人。
这是可能的,但有点复杂。

首先,我们可以确保每次键入时都会弹出内容辅助:在 Eclipse 中,打开window->Preferences,转到Java->Editor->Content Assist,然后在 Java 的自动激活触发器中输入所有 26 个大写和小写字母:
启用自动完成 这已被多次提及。
要仅按 Enter 确认,请从此答案或直接从此Source Forge 页面下载 Practical Macro 。将jar文件放到Eclipse安装目录下的dropins文件夹下,重启Eclipse即可:
Eclipse 中的实用宏
点击红色按钮开始录制,在编辑器中的任意位置输入空格,然后再次点击红色按钮以显示保存屏幕。用某个名称保存宏,例如我们在这里使用“空格”。
然后再次转到Preferences,然后General->Keys,输入您之前设置的名称作为过滤文本,找到录制的宏,然后将其键绑定设置为Space
现在,每当您按空格键时,它都会中断内容辅助输入其建议的内容,但仍会显示辅助。您可以对点键执行相同的操作。 在此处输入图像描述

在这里测试:
输入 h 调出辅助: 按空格键:有效!虽然如果我按 Enter 它仍然会自动完成。
在此处输入图像描述

在此处输入图像描述

对于点键,您可能希望它在放弃之前的建议后再次调出内容辅助,因此在录制点键的宏时,按点键然后使用Alt+/调出辅助。重播时您可能会发现辅助是空的,那是因为它需要延迟。在插入点和带回辅助之间插入一些耗时的命令,例如Organize Importor Format Code

于 2018-07-20T05:26:06.247 回答
2

不确定这是否是您正在寻找的,但是:

您可以在首选项中禁用热键(或将其设置为不同的热键)。

  1. 打开首选项窗口(在 Mac 上,它是 Eclipse->Preferences)
  2. 在常规 > 编辑器 > 键中导航到“键”窗口
  3. 在过滤器框中搜索“内容辅助”。
  4. 更改或删除绑定(靠近窗口底部)
于 2014-01-02T18:49:06.233 回答
1

据我所知,在开普勒是不可能的。我发现的最佳解决方案是增加“自动激活延迟(毫秒)”设置。对我来说,将它从激进的默认值 40 毫秒增加到 200 毫秒效果很好。

于 2014-02-25T15:56:25.077 回答