当前位置:  开发笔记 > 编程语言 > 正文

IntelliJ自动完成转义

如何解决《IntelliJ自动完成转义》经验,为你挑选了2个好方法。

我正在尝试使用IntelliJ并且有一个小麻烦,我无法弄清楚IntelliJ中是否有可能的解决方案.在Eclipse甚至TextMate(以及许多其他具有自动完成功能的编辑器)中,如果您处于自动完成部分(如字符串或括号区域)的中间,则可以按Enter或Tab键以到达该部分的末尾.例如:

if (blah.equals(something.toString()))

插入符号位于toString部分的括号中间.在IntelliJ中,您可以通过这些括号输入没有问题,或者您可以点击"结束"键以结束它.一个是轻微的烦恼,另一个是更烦人,因为我必须把我的手从主排.在eclipse中,我可以点击Enter键,它会让我离开这个... TextMate,Tab.

是否有我可以调整的设置或我能做的事情,以便在IntelliJ中提供类似的功能?



1> Yishai..:

在这种情况下,如果你Ctrl-Shift-Enter像CrazyCoder建议的那样按下,你会得到这种行为.它将添加大括号并将光标放在下一行.您也可以按下Shift-Enter哪个将进入下一行,并对代码做出较少的假设.Ctrl-Shift-Enter根据它正在查看的代码,行为会有所不同,因此不会给您一致的行为.例如,在字符串的中间,它会将您放在行的末尾并添加一个分号.

看起来这里结束是首选的关键来到达终点.您可以在键映射中添加一个额外的键以转到行的末尾,如果不同的键组合对您更有效,但它不会仅仅因为您位于括号中间而改变其行为.

看看IDEA选项,似乎括号行为并不是真正的自动模板,比如自动创建for循环,所以你不要在完成时标记出来,而只是自动为你完成括号,并且智能地识别您可能想要流畅地输入,就好像它没有.



2> schellmax..:

我试过cmd-shift-enter(在Mac上),结果对我来说似乎更有用(在javascript代码中).我正在使用管道('|')在这里可视化光标:

之前:

var x = func1(func2(|))

按下cmd-shift-enter后:

var x = func1(func2());|

所以它甚至在行尾添加了分号(但你仍然需要再次按回车键才能跳到下一行).

编辑

刚发现这个快捷方式更有用:

之前:

if(a == b|)

按下后cmd-shift-enter:

if(a == b) {
    |
}

适用于php和javascript

推荐阅读
mobiledu2402851377
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有