在完整的 IntelliJ 代码中,如何使光标在括号内结束,而不是在它们之后
In IntelliJ code complete, how can I make the cursor end up inside the parens, not after them
在 IntelliJ 的初学者教程中使用代码完成时,它一直将光标放在括号后面,迫使我每次都按左键。
用竖线表示游标:"printl"完成为"println()|",而我需要的是"println(|)"
第二个,如果你在完成后输入 ",你会得到 println("") 但目前我得到的是 println()""
我知道这似乎是一件简单的事情,但是当您必须不断将右手从按键上移开以便在大约 75% 的台词中按下 <- 箭头时,它就会让您慢下来,并且老得真快
谢谢,
斯科特
在列表中,您可以 select 重载具有一些参数的 "println"。
如果您要打印到标准输出,您也可以使用实时模板:键入 "sout" 并按 Tab。
IntelliJ 的代码完成是上下文相关的w.r.t它放置光标的位置。
给定以下方法:
private void foo() {}
private void bar(String s) {}
如果我键入 fo
并让 IntelliJ 自动完成 foo()
它会将光标放在括号之后,因为 IntelliJ 知道 foo()
没有参数所以它假设你会想继续做其他事情。
如果我键入 ba
并让 IntelliJ 自动完成 bar()
它会将光标 放在 括号内,因为 IntelliJ 知道 bar()
需要一个参数,因此它假定您接下来要输入的是 bar()
.
的参数
当然,当方法重载并允许零个或多个参数时,它会变得有点混乱。
如果您发现 IntelliJ 的选择是错误的,那么您可以创建一个 Live Template。这是 sout
实时模板的示例:
System.out.println($END$);
这会将sout + TAB
变为System.out.println();
,并且根据$END$
指令,光标位于括号内。
使用引号之间带有 $END$ 的实时模板正是我所需要的。
现在,如果我能弄清楚如何编辑 stock println() 以包含 $END$ 或使我的实时模板显示在列表顶部而不是底部。
不得不伸手去 select 正确的模板有点违背了制作模板的目的,所以我不需要伸手去移动光标哈哈
在 IntelliJ 的初学者教程中使用代码完成时,它一直将光标放在括号后面,迫使我每次都按左键。
用竖线表示游标:"printl"完成为"println()|",而我需要的是"println(|)"
第二个,如果你在完成后输入 ",你会得到 println("") 但目前我得到的是 println()""
我知道这似乎是一件简单的事情,但是当您必须不断将右手从按键上移开以便在大约 75% 的台词中按下 <- 箭头时,它就会让您慢下来,并且老得真快
谢谢, 斯科特
在列表中,您可以 select 重载具有一些参数的 "println"。
如果您要打印到标准输出,您也可以使用实时模板:键入 "sout" 并按 Tab。
IntelliJ 的代码完成是上下文相关的w.r.t它放置光标的位置。
给定以下方法:
private void foo() {}
private void bar(String s) {}
如果我键入 fo
并让 IntelliJ 自动完成 foo()
它会将光标放在括号之后,因为 IntelliJ 知道 foo()
没有参数所以它假设你会想继续做其他事情。
如果我键入 ba
并让 IntelliJ 自动完成 bar()
它会将光标 放在 括号内,因为 IntelliJ 知道 bar()
需要一个参数,因此它假定您接下来要输入的是 bar()
.
当然,当方法重载并允许零个或多个参数时,它会变得有点混乱。
如果您发现 IntelliJ 的选择是错误的,那么您可以创建一个 Live Template。这是 sout
实时模板的示例:
System.out.println($END$);
这会将sout + TAB
变为System.out.println();
,并且根据$END$
指令,光标位于括号内。
使用引号之间带有 $END$ 的实时模板正是我所需要的。
现在,如果我能弄清楚如何编辑 stock println() 以包含 $END$ 或使我的实时模板显示在列表顶部而不是底部。
不得不伸手去 select 正确的模板有点违背了制作模板的目的,所以我不需要伸手去移动光标哈哈