Eclipse:即时自动完成

Posted

技术标签:

【中文标题】Eclipse:即时自动完成【英文标题】:Eclipse: Instant autocompletion 【发布时间】:2011-12-07 06:34:28 【问题描述】:

我对 Eclipse 自动完成代码的方式并不完全满意。我喜欢 IntelliJ 提示建议的方式(有人说它相当激进,但我喜欢这种方式)。

所以我去了:Window -> Preferences -> Java -> Editor -> Content Assist 并将延迟设置为 0ms 并将自动激活触发器设置为 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

现在 Eclipse 的自动补全看起来非常快,但有一件非常烦人的事情: 它会在每个空格命中上完成建议的变量名称。

所以当我想输入时:

String joe = "Joe";

eclipse 的速度足以毁掉它:

String joeString = ...;

换句话说,按:String joe[space]makesjoeString.我希望我很清楚enoguh,谢谢你的建议:)

【问题讨论】:

我在 IDE 中见过的最烦人的问题之一。 同意,非常非常烦人的行为。不仅有空格,Eclipse 也有分号,所以如果你说: String joe; Eclipse 将其“更正”为: String joeString;可惜没有解决办法。 Stop spacebar keypress from triggering autocomplete in Eclipse的可能重复 【参考方案1】:

您可以取消选中“窗口 -> 首选项 -> Java -> 编辑器 -> 内容辅助 -> 自动插入单个提案”。完成后,您应该只会看到一个包含提案的弹出窗口,但它不会自动插入到编辑器中。

【讨论】:

这对我不起作用。您可以使用 joeString 示例进行尝试。 好的,您必须按“Esc”才能使提案弹出窗口消失。按“空格”只会选择第一个提案,我看不出有什么出路(当内容辅助没有在任何地方自动激活并且我认为我们不会改变它时,使用空格的选择效果很好) 是的,我意识到我必须按 Esc,但这太烦人了:/ 同意,问题是自动激活无处不在是一种黑客/技巧,事情并不是为此而设计的。您可以针对 JDT UI (bugs.eclipse.org/bugs/enter_bug.cgi?product=JDT) 打开一个错误,并描述您面临的问题。 这并不能解决问题。事实上,它似乎根本没有做任何事情。人们不得不怀疑:这个选项到底有什么作用?【参考方案2】:

增加延迟,以便您仍然可以不间断地键入简短的内容。我不确定是否有另一种方法可以解决它,因为您要求 Eclipse 始终即时自动完成,并且空间选择它当前的自动完成猜测。

【讨论】:

对不起,这不是我要找的。​​span> 我不明白为什么用户不得不降低他们的生产力来解决 Eclipse 开发人员的严重疏忽。为什么不能两全其美?即时弹出,除非我们按回车,否则不要强制插入。我不是编码大师,但这肯定是一个可笑的简单任务?????【参考方案3】:

对此有一个解决方案on the issue tracker。 复制 eclipse/dropins 文件夹中的 jar。随着下一次重新启动,空间被禁用为自动完成触发器。

【讨论】:

这会禁用 all 自动完成触发器。这显然不是 OP 所要求的。 对我来说只有空格键被禁用为自动完成触发器

以上是关于Eclipse:即时自动完成的主要内容,如果未能解决你的问题,请参考以下文章

jquery 自动完成 自动补全 实时搜索 实时查询 即时搜索 即时 查询

Tailwind CSS 没有使用“jit”即时模式自动完成

Eclipse 自动完成刺激

Eclipse:自动完成类名时排除特定包

Eclipse:自动完成类名时排除特定包

在 Eclipse 中自动打开完成窗口