每当我在JSP文件中工作并且键入${
来启动el(表达式语言)标签时,Eclipse都会在光标之后自动添加}
(在右括号之前带有一个空格),以便得到${ }
而不是${}
。
我可以修改首选项中的代码模板来更改此行为,还是超出用户首选项控制范围?
我已经签入了“首选项”:Web:JSP文件:编辑器:模板,但是这些模板都不匹配。我还查看了“偏好设置”中的其他几个部分,但没有发现任何有希望的东西。
最佳答案
@Mero提供的内容(请参见上面答案的注释)可能不是确切的答案,但是创建JSP模板可能是我找到的最接近的东西。
对于任何想走这条路的人,请注意以下几点:
通过菜单窗口->首选项创建一个新模板,然后在下拉菜单中导航到Web-> JSP文件->编辑器->模板。单击新建。
名称是您可以键入的快捷方式(在Java中键入sysout ctrl+space
是System.out.println()
的快捷方式)。我建议使用类似el
这样的简单内容。这使您可以键入e l ctrl-space
而不是$ { ctrl-space
将其上拉。
上下文告诉它什么时候应该出现在智能感知中。我建议创建两个此模板,其中一个具有JSP属性值的上下文,另一个具有All JSP的上下文。
描述只是提供信息。放任何你想要的。我自己写了“ EL脚本”。
模式是您放置将要插入的内容的位置。根据喜好放置$${${cursor}}
或$${${script}}
。有关差异的说明,请参见下文。
在Eclipse模板中,${}
是在模板中放置变量的方式,因此要使其实际显示${}
,必须用导致$
的$$
来使$${}
转义。
预定义的变量${cursor}
定义了intellisense替换el
之后光标所在的位置,以便使光标出现在您要执行的花括号之间:$${${cursor}}
。
使用任何未预定义的变量(在本例中为${script}
),只需在该变量周围加上一个框,即可键入内容并在完成后按Enter键,然后移至最后的大括号。
注意:我知道这不是一个实际的答案,而是一种解决方法。我将其简单地放在此处,以便那些有解决方法的人可以知道该怎么做。
编辑
对于那些不喜欢键入ctrl-space
的用户,一种解决方法是使模板名称以<
开头,因为在JSP页面上,<
打开了intellisense,因此,例如,您可以使用该名称是<el
或<$
。
关于eclipse - 如何在Eclipse中修改EL开口模板?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30685002/